/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the apigateway-2015-07-09.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.APIGateway.Model
{
///
/// Container for the parameters to the PutMethod operation.
/// Add a method to an existing Resource resource.
///
public partial class PutMethodRequest : AmazonAPIGatewayRequest
{
private bool? _apiKeyRequired;
private List _authorizationScopes = new List();
private string _authorizationType;
private string _authorizerId;
private string _httpMethod;
private string _operationName;
private Dictionary _requestModels = new Dictionary();
private Dictionary _requestParameters = new Dictionary();
private string _requestValidatorId;
private string _resourceId;
private string _restApiId;
///
/// Gets and sets the property ApiKeyRequired.
///
/// Specifies whether the method required a valid ApiKey.
///
///
public bool ApiKeyRequired
{
get { return this._apiKeyRequired.GetValueOrDefault(); }
set { this._apiKeyRequired = value; }
}
// Check to see if ApiKeyRequired property is set
internal bool IsSetApiKeyRequired()
{
return this._apiKeyRequired.HasValue;
}
///
/// Gets and sets the property AuthorizationScopes.
///
/// A list of authorization scopes configured on the method. The scopes are used with
/// a COGNITO_USER_POOLS
authorizer to authorize the method invocation. The
/// authorization works by matching the method scopes against the scopes parsed from the
/// access token in the incoming request. The method invocation is authorized if any method
/// scopes matches a claimed scope in the access token. Otherwise, the invocation is not
/// authorized. When the method scope is configured, the client must provide an access
/// token instead of an identity token for authorization purposes.
///
///
public List AuthorizationScopes
{
get { return this._authorizationScopes; }
set { this._authorizationScopes = value; }
}
// Check to see if AuthorizationScopes property is set
internal bool IsSetAuthorizationScopes()
{
return this._authorizationScopes != null && this._authorizationScopes.Count > 0;
}
///
/// Gets and sets the property AuthorizationType.
///
/// The method's authorization type. Valid values are NONE
for open access,
/// AWS_IAM
for using AWS IAM permissions, CUSTOM
for using
/// a custom authorizer, or COGNITO_USER_POOLS
for using a Cognito user pool.
///
///
[AWSProperty(Required=true)]
public string AuthorizationType
{
get { return this._authorizationType; }
set { this._authorizationType = value; }
}
// Check to see if AuthorizationType property is set
internal bool IsSetAuthorizationType()
{
return this._authorizationType != null;
}
///
/// Gets and sets the property AuthorizerId.
///
/// Specifies the identifier of an Authorizer to use on this Method, if the type is CUSTOM
/// or COGNITO_USER_POOLS. The authorizer identifier is generated by API Gateway when
/// you created the authorizer.
///
///
public string AuthorizerId
{
get { return this._authorizerId; }
set { this._authorizerId = value; }
}
// Check to see if AuthorizerId property is set
internal bool IsSetAuthorizerId()
{
return this._authorizerId != null;
}
///
/// Gets and sets the property HttpMethod.
///
/// Specifies the method request's HTTP method type.
///
///
[AWSProperty(Required=true)]
public string HttpMethod
{
get { return this._httpMethod; }
set { this._httpMethod = value; }
}
// Check to see if HttpMethod property is set
internal bool IsSetHttpMethod()
{
return this._httpMethod != null;
}
///
/// Gets and sets the property OperationName.
///
/// A human-friendly operation identifier for the method. For example, you can assign
/// the operationName
of ListPets
for the GET /pets
/// method in the PetStore
example.
///
///
public string OperationName
{
get { return this._operationName; }
set { this._operationName = value; }
}
// Check to see if OperationName property is set
internal bool IsSetOperationName()
{
return this._operationName != null;
}
///
/// Gets and sets the property RequestModels.
///
/// Specifies the Model resources used for the request's content type. Request models
/// are represented as a key/value map, with a content type as the key and a Model name
/// as the value.
///
///
public Dictionary RequestModels
{
get { return this._requestModels; }
set { this._requestModels = value; }
}
// Check to see if RequestModels property is set
internal bool IsSetRequestModels()
{
return this._requestModels != null && this._requestModels.Count > 0;
}
///
/// Gets and sets the property RequestParameters.
///
/// A key-value map defining required or optional method request parameters that can be
/// accepted by API Gateway. A key defines a method request parameter name matching the
/// pattern of method.request.{location}.{name}
, where location
/// is querystring
, path
, or header
and name
/// is a valid and unique parameter name. The value associated with the key is a Boolean
/// flag indicating whether the parameter is required (true
) or optional
/// (false
). The method request parameter names defined here are available
/// in Integration to be mapped to integration request parameters or body-mapping templates.
///
///
public Dictionary RequestParameters
{
get { return this._requestParameters; }
set { this._requestParameters = value; }
}
// Check to see if RequestParameters property is set
internal bool IsSetRequestParameters()
{
return this._requestParameters != null && this._requestParameters.Count > 0;
}
///
/// Gets and sets the property RequestValidatorId.
///
/// The identifier of a RequestValidator for validating the method request.
///
///
public string RequestValidatorId
{
get { return this._requestValidatorId; }
set { this._requestValidatorId = value; }
}
// Check to see if RequestValidatorId property is set
internal bool IsSetRequestValidatorId()
{
return this._requestValidatorId != null;
}
///
/// Gets and sets the property ResourceId.
///
/// The Resource identifier for the new Method resource.
///
///
[AWSProperty(Required=true)]
public string ResourceId
{
get { return this._resourceId; }
set { this._resourceId = value; }
}
// Check to see if ResourceId property is set
internal bool IsSetResourceId()
{
return this._resourceId != null;
}
///
/// Gets and sets the property RestApiId.
///
/// The string identifier of the associated RestApi.
///
///
[AWSProperty(Required=true)]
public string RestApiId
{
get { return this._restApiId; }
set { this._restApiId = value; }
}
// Check to see if RestApiId property is set
internal bool IsSetRestApiId()
{
return this._restApiId != null;
}
}
}