/* * Copyright 2018-2023 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. */ package com.amazonaws.services.apigateway.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.AmazonWebServiceRequest; /** *
* Request to add a method to an existing Resource resource. *
*/ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class PutMethodRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** ** The string identifier of the associated RestApi. *
*/ private String restApiId; /** ** The Resource identifier for the new Method resource. *
*/ private String resourceId; /** ** Specifies the method request's HTTP method type. *
*/ private String httpMethod; /** *
* 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.
*
* 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. *
*/ private String authorizerId; /** ** Specifies whether the method required a valid ApiKey. *
*/ private Boolean apiKeyRequired; /** *
* 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.
*
* 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.
*
* 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. *
*/ private java.util.Map* The identifier of a RequestValidator for validating the method request. *
*/ private String requestValidatorId; /** *
* 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.
*
* The string identifier of the associated RestApi. *
* * @param restApiId * The string identifier of the associated RestApi. */ public void setRestApiId(String restApiId) { this.restApiId = restApiId; } /** ** The string identifier of the associated RestApi. *
* * @return The string identifier of the associated RestApi. */ public String getRestApiId() { return this.restApiId; } /** ** The string identifier of the associated RestApi. *
* * @param restApiId * The string identifier of the associated RestApi. * @return Returns a reference to this object so that method calls can be chained together. */ public PutMethodRequest withRestApiId(String restApiId) { setRestApiId(restApiId); return this; } /** ** The Resource identifier for the new Method resource. *
* * @param resourceId * The Resource identifier for the new Method resource. */ public void setResourceId(String resourceId) { this.resourceId = resourceId; } /** ** The Resource identifier for the new Method resource. *
* * @return The Resource identifier for the new Method resource. */ public String getResourceId() { return this.resourceId; } /** ** The Resource identifier for the new Method resource. *
* * @param resourceId * The Resource identifier for the new Method resource. * @return Returns a reference to this object so that method calls can be chained together. */ public PutMethodRequest withResourceId(String resourceId) { setResourceId(resourceId); return this; } /** ** Specifies the method request's HTTP method type. *
* * @param httpMethod * Specifies the method request's HTTP method type. */ public void setHttpMethod(String httpMethod) { this.httpMethod = httpMethod; } /** ** Specifies the method request's HTTP method type. *
* * @return Specifies the method request's HTTP method type. */ public String getHttpMethod() { return this.httpMethod; } /** ** Specifies the method request's HTTP method type. *
* * @param httpMethod * Specifies the method request's HTTP method type. * @return Returns a reference to this object so that method calls can be chained together. */ public PutMethodRequest withHttpMethod(String httpMethod) { setHttpMethod(httpMethod); return this; } /** *
* 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.
*
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.
*/
public void setAuthorizationType(String authorizationType) {
this.authorizationType = 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.
*
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.
*/
public String getAuthorizationType() {
return this.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.
*
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.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public PutMethodRequest withAuthorizationType(String authorizationType) {
setAuthorizationType(authorizationType);
return this;
}
/**
* * 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. *
* * @param 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 void setAuthorizerId(String authorizerId) { this.authorizerId = 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. *
* * @return 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 getAuthorizerId() { return this.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. *
* * @param 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. * @return Returns a reference to this object so that method calls can be chained together. */ public PutMethodRequest withAuthorizerId(String authorizerId) { setAuthorizerId(authorizerId); return this; } /** ** Specifies whether the method required a valid ApiKey. *
* * @param apiKeyRequired * Specifies whether the method required a valid ApiKey. */ public void setApiKeyRequired(Boolean apiKeyRequired) { this.apiKeyRequired = apiKeyRequired; } /** ** Specifies whether the method required a valid ApiKey. *
* * @return Specifies whether the method required a valid ApiKey. */ public Boolean getApiKeyRequired() { return this.apiKeyRequired; } /** ** Specifies whether the method required a valid ApiKey. *
* * @param apiKeyRequired * Specifies whether the method required a valid ApiKey. * @return Returns a reference to this object so that method calls can be chained together. */ public PutMethodRequest withApiKeyRequired(Boolean apiKeyRequired) { setApiKeyRequired(apiKeyRequired); return this; } /** ** Specifies whether the method required a valid ApiKey. *
* * @return Specifies whether the method required a valid ApiKey. */ public Boolean isApiKeyRequired() { return this.apiKeyRequired; } /** *
* 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.
*
operationName
of ListPets
for the GET /pets
method in the
* PetStore
example.
*/
public void setOperationName(String operationName) {
this.operationName = 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.
*
operationName
of ListPets
for the GET /pets
method in the
* PetStore
example.
*/
public String getOperationName() {
return this.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.
*
operationName
of ListPets
for the GET /pets
method in the
* PetStore
example.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public PutMethodRequest withOperationName(String operationName) {
setOperationName(operationName);
return this;
}
/**
*
* 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.
*
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 java.util.Map
* 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.
*
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 void setRequestParameters(java.util.Map
* 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.
*
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.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public PutMethodRequest withRequestParameters(java.util.Map* 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. *
* * @return 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 java.util.Map* 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. *
* * @param 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 void setRequestModels(java.util.Map* 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. *
* * @param 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. * @return Returns a reference to this object so that method calls can be chained together. */ public PutMethodRequest withRequestModels(java.util.Map* The identifier of a RequestValidator for validating the method request. *
* * @param requestValidatorId * The identifier of a RequestValidator for validating the method request. */ public void setRequestValidatorId(String requestValidatorId) { this.requestValidatorId = requestValidatorId; } /** ** The identifier of a RequestValidator for validating the method request. *
* * @return The identifier of a RequestValidator for validating the method request. */ public String getRequestValidatorId() { return this.requestValidatorId; } /** ** The identifier of a RequestValidator for validating the method request. *
* * @param requestValidatorId * The identifier of a RequestValidator for validating the method request. * @return Returns a reference to this object so that method calls can be chained together. */ public PutMethodRequest withRequestValidatorId(String requestValidatorId) { setRequestValidatorId(requestValidatorId); return this; } /** *
* 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.
*
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 java.util.List
* 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.
*
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 void setAuthorizationScopes(java.util.Collection
* 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.
*
* NOTE: This method appends the values to the existing list (if any). Use * {@link #setAuthorizationScopes(java.util.Collection)} or {@link #withAuthorizationScopes(java.util.Collection)} * if you want to override the existing values. *
* * @param 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.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public PutMethodRequest withAuthorizationScopes(String... authorizationScopes) {
if (this.authorizationScopes == null) {
setAuthorizationScopes(new java.util.ArrayList
* 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.
*
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.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public PutMethodRequest withAuthorizationScopes(java.util.Collection