All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.apigateway.model.Method Maven / Gradle / Ivy

Go to download

The AWS SDK for Java with support for OSGi. The AWS SDK for Java provides Java APIs for building software on AWS' cost-effective, scalable, and reliable infrastructure products. The AWS Java SDK allows developers to code against APIs for all of Amazon's infrastructure web services (Amazon S3, Amazon EC2, Amazon SQS, Amazon Relational Database Service, Amazon AutoScaling, etc).

There is a newer version: 1.11.60
Show newest version
/*
 * Copyright 2011-2016 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;

/**
 * 

* Represents a method. *

*/ public class Method implements Serializable, Cloneable { /** *

* The HTTP method. *

*/ private String httpMethod; /** *

* The method's authorization type. *

*/ private String authorizationType; /** *

* Specifies the identifier of an Authorizer to use on this Method. * The authorizationType must be CUSTOM. *

*/ private String authorizerId; /** *

* Specifies whether the method requires a valid ApiKey. *

*/ private Boolean apiKeyRequired; /** *

* Represents request parameters that can be accepted by Amazon API Gateway. * Request parameters are represented as a key/value map, with a source as * the key and a Boolean flag as the value. The Boolean flag is used to * specify whether the parameter is required. A source must match the * pattern method.request.{location}.{name}, where * location is either querystring, path, or header. * name is a valid, unique parameter name. Sources specified * here are available to the integration for mapping to integration request * parameters or templates. *

*/ private java.util.Map requestParameters; /** *

* 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 requestModels; /** *

* Represents available responses that can be sent to the caller. Method * responses are represented as a key/value map, with an HTTP status code as * the key and a MethodResponse as the value. The status codes are * available for the Integration responses to map to. *

*/ private java.util.Map methodResponses; /** *

* The method's integration. *

*/ private Integration methodIntegration; /** *

* The HTTP method. *

* * @param httpMethod * The HTTP method. */ public void setHttpMethod(String httpMethod) { this.httpMethod = httpMethod; } /** *

* The HTTP method. *

* * @return The HTTP method. */ public String getHttpMethod() { return this.httpMethod; } /** *

* The HTTP method. *

* * @param httpMethod * The HTTP method. * @return Returns a reference to this object so that method calls can be * chained together. */ public Method withHttpMethod(String httpMethod) { setHttpMethod(httpMethod); return this; } /** *

* The method's authorization type. *

* * @param authorizationType * The method's authorization type. */ public void setAuthorizationType(String authorizationType) { this.authorizationType = authorizationType; } /** *

* The method's authorization type. *

* * @return The method's authorization type. */ public String getAuthorizationType() { return this.authorizationType; } /** *

* The method's authorization type. *

* * @param authorizationType * The method's authorization type. * @return Returns a reference to this object so that method calls can be * chained together. */ public Method withAuthorizationType(String authorizationType) { setAuthorizationType(authorizationType); return this; } /** *

* Specifies the identifier of an Authorizer to use on this Method. * The authorizationType must be CUSTOM. *

* * @param authorizerId * Specifies the identifier of an Authorizer to use on this * Method. The authorizationType must be CUSTOM. */ public void setAuthorizerId(String authorizerId) { this.authorizerId = authorizerId; } /** *

* Specifies the identifier of an Authorizer to use on this Method. * The authorizationType must be CUSTOM. *

* * @return Specifies the identifier of an Authorizer to use on this * Method. The authorizationType must be CUSTOM. */ public String getAuthorizerId() { return this.authorizerId; } /** *

* Specifies the identifier of an Authorizer to use on this Method. * The authorizationType must be CUSTOM. *

* * @param authorizerId * Specifies the identifier of an Authorizer to use on this * Method. The authorizationType must be CUSTOM. * @return Returns a reference to this object so that method calls can be * chained together. */ public Method withAuthorizerId(String authorizerId) { setAuthorizerId(authorizerId); return this; } /** *

* Specifies whether the method requires a valid ApiKey. *

* * @param apiKeyRequired * Specifies whether the method requires a valid ApiKey. */ public void setApiKeyRequired(Boolean apiKeyRequired) { this.apiKeyRequired = apiKeyRequired; } /** *

* Specifies whether the method requires a valid ApiKey. *

* * @return Specifies whether the method requires a valid ApiKey. */ public Boolean getApiKeyRequired() { return this.apiKeyRequired; } /** *

* Specifies whether the method requires a valid ApiKey. *

* * @param apiKeyRequired * Specifies whether the method requires a valid ApiKey. * @return Returns a reference to this object so that method calls can be * chained together. */ public Method withApiKeyRequired(Boolean apiKeyRequired) { setApiKeyRequired(apiKeyRequired); return this; } /** *

* Specifies whether the method requires a valid ApiKey. *

* * @return Specifies whether the method requires a valid ApiKey. */ public Boolean isApiKeyRequired() { return this.apiKeyRequired; } /** *

* Represents request parameters that can be accepted by Amazon API Gateway. * Request parameters are represented as a key/value map, with a source as * the key and a Boolean flag as the value. The Boolean flag is used to * specify whether the parameter is required. A source must match the * pattern method.request.{location}.{name}, where * location is either querystring, path, or header. * name is a valid, unique parameter name. Sources specified * here are available to the integration for mapping to integration request * parameters or templates. *

* * @return Represents request parameters that can be accepted by Amazon API * Gateway. Request parameters are represented as a key/value map, * with a source as the key and a Boolean flag as the value. The * Boolean flag is used to specify whether the parameter is * required. A source must match the pattern * method.request.{location}.{name}, where * location is either querystring, path, or header. * name is a valid, unique parameter name. Sources * specified here are available to the integration for mapping to * integration request parameters or templates. */ public java.util.Map getRequestParameters() { return requestParameters; } /** *

* Represents request parameters that can be accepted by Amazon API Gateway. * Request parameters are represented as a key/value map, with a source as * the key and a Boolean flag as the value. The Boolean flag is used to * specify whether the parameter is required. A source must match the * pattern method.request.{location}.{name}, where * location is either querystring, path, or header. * name is a valid, unique parameter name. Sources specified * here are available to the integration for mapping to integration request * parameters or templates. *

* * @param requestParameters * Represents request parameters that can be accepted by Amazon API * Gateway. Request parameters are represented as a key/value map, * with a source as the key and a Boolean flag as the value. The * Boolean flag is used to specify whether the parameter is required. * A source must match the pattern * method.request.{location}.{name}, where * location is either querystring, path, or header. * name is a valid, unique parameter name. Sources * specified here are available to the integration for mapping to * integration request parameters or templates. */ public void setRequestParameters( java.util.Map requestParameters) { this.requestParameters = requestParameters; } /** *

* Represents request parameters that can be accepted by Amazon API Gateway. * Request parameters are represented as a key/value map, with a source as * the key and a Boolean flag as the value. The Boolean flag is used to * specify whether the parameter is required. A source must match the * pattern method.request.{location}.{name}, where * location is either querystring, path, or header. * name is a valid, unique parameter name. Sources specified * here are available to the integration for mapping to integration request * parameters or templates. *

* * @param requestParameters * Represents request parameters that can be accepted by Amazon API * Gateway. Request parameters are represented as a key/value map, * with a source as the key and a Boolean flag as the value. The * Boolean flag is used to specify whether the parameter is required. * A source must match the pattern * method.request.{location}.{name}, where * location is either querystring, path, or header. * name is a valid, unique parameter name. Sources * specified here are available to the integration for mapping to * integration request parameters or templates. * @return Returns a reference to this object so that method calls can be * chained together. */ public Method withRequestParameters( java.util.Map requestParameters) { setRequestParameters(requestParameters); return this; } public Method addRequestParametersEntry(String key, Boolean value) { if (null == this.requestParameters) { this.requestParameters = new java.util.HashMap(); } if (this.requestParameters.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.requestParameters.put(key, value); return this; } /** * Removes all the entries added into RequestParameters. <p> Returns a * reference to this object so that method calls can be chained together. */ public Method clearRequestParametersEntries() { this.requestParameters = null; return this; } /** *

* 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 getRequestModels() { return 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. *

* * @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 requestModels) { this.requestModels = 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. *

* * @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 Method withRequestModels(java.util.Map requestModels) { setRequestModels(requestModels); return this; } public Method addRequestModelsEntry(String key, String value) { if (null == this.requestModels) { this.requestModels = new java.util.HashMap(); } if (this.requestModels.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.requestModels.put(key, value); return this; } /** * Removes all the entries added into RequestModels. <p> Returns a * reference to this object so that method calls can be chained together. */ public Method clearRequestModelsEntries() { this.requestModels = null; return this; } /** *

* Represents available responses that can be sent to the caller. Method * responses are represented as a key/value map, with an HTTP status code as * the key and a MethodResponse as the value. The status codes are * available for the Integration responses to map to. *

* * @return Represents available responses that can be sent to the caller. * Method responses are represented as a key/value map, with an HTTP * status code as the key and a MethodResponse as the value. * The status codes are available for the Integration * responses to map to. */ public java.util.Map getMethodResponses() { return methodResponses; } /** *

* Represents available responses that can be sent to the caller. Method * responses are represented as a key/value map, with an HTTP status code as * the key and a MethodResponse as the value. The status codes are * available for the Integration responses to map to. *

* * @param methodResponses * Represents available responses that can be sent to the caller. * Method responses are represented as a key/value map, with an HTTP * status code as the key and a MethodResponse as the value. * The status codes are available for the Integration * responses to map to. */ public void setMethodResponses( java.util.Map methodResponses) { this.methodResponses = methodResponses; } /** *

* Represents available responses that can be sent to the caller. Method * responses are represented as a key/value map, with an HTTP status code as * the key and a MethodResponse as the value. The status codes are * available for the Integration responses to map to. *

* * @param methodResponses * Represents available responses that can be sent to the caller. * Method responses are represented as a key/value map, with an HTTP * status code as the key and a MethodResponse as the value. * The status codes are available for the Integration * responses to map to. * @return Returns a reference to this object so that method calls can be * chained together. */ public Method withMethodResponses( java.util.Map methodResponses) { setMethodResponses(methodResponses); return this; } public Method addMethodResponsesEntry(String key, MethodResponse value) { if (null == this.methodResponses) { this.methodResponses = new java.util.HashMap(); } if (this.methodResponses.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.methodResponses.put(key, value); return this; } /** * Removes all the entries added into MethodResponses. <p> Returns a * reference to this object so that method calls can be chained together. */ public Method clearMethodResponsesEntries() { this.methodResponses = null; return this; } /** *

* The method's integration. *

* * @param methodIntegration * The method's integration. */ public void setMethodIntegration(Integration methodIntegration) { this.methodIntegration = methodIntegration; } /** *

* The method's integration. *

* * @return The method's integration. */ public Integration getMethodIntegration() { return this.methodIntegration; } /** *

* The method's integration. *

* * @param methodIntegration * The method's integration. * @return Returns a reference to this object so that method calls can be * chained together. */ public Method withMethodIntegration(Integration methodIntegration) { setMethodIntegration(methodIntegration); return this; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getHttpMethod() != null) sb.append("HttpMethod: " + getHttpMethod() + ","); if (getAuthorizationType() != null) sb.append("AuthorizationType: " + getAuthorizationType() + ","); if (getAuthorizerId() != null) sb.append("AuthorizerId: " + getAuthorizerId() + ","); if (getApiKeyRequired() != null) sb.append("ApiKeyRequired: " + getApiKeyRequired() + ","); if (getRequestParameters() != null) sb.append("RequestParameters: " + getRequestParameters() + ","); if (getRequestModels() != null) sb.append("RequestModels: " + getRequestModels() + ","); if (getMethodResponses() != null) sb.append("MethodResponses: " + getMethodResponses() + ","); if (getMethodIntegration() != null) sb.append("MethodIntegration: " + getMethodIntegration()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof Method == false) return false; Method other = (Method) obj; if (other.getHttpMethod() == null ^ this.getHttpMethod() == null) return false; if (other.getHttpMethod() != null && other.getHttpMethod().equals(this.getHttpMethod()) == false) return false; if (other.getAuthorizationType() == null ^ this.getAuthorizationType() == null) return false; if (other.getAuthorizationType() != null && other.getAuthorizationType().equals( this.getAuthorizationType()) == false) return false; if (other.getAuthorizerId() == null ^ this.getAuthorizerId() == null) return false; if (other.getAuthorizerId() != null && other.getAuthorizerId().equals(this.getAuthorizerId()) == false) return false; if (other.getApiKeyRequired() == null ^ this.getApiKeyRequired() == null) return false; if (other.getApiKeyRequired() != null && other.getApiKeyRequired().equals(this.getApiKeyRequired()) == false) return false; if (other.getRequestParameters() == null ^ this.getRequestParameters() == null) return false; if (other.getRequestParameters() != null && other.getRequestParameters().equals( this.getRequestParameters()) == false) return false; if (other.getRequestModels() == null ^ this.getRequestModels() == null) return false; if (other.getRequestModels() != null && other.getRequestModels().equals(this.getRequestModels()) == false) return false; if (other.getMethodResponses() == null ^ this.getMethodResponses() == null) return false; if (other.getMethodResponses() != null && other.getMethodResponses().equals(this.getMethodResponses()) == false) return false; if (other.getMethodIntegration() == null ^ this.getMethodIntegration() == null) return false; if (other.getMethodIntegration() != null && other.getMethodIntegration().equals( this.getMethodIntegration()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getHttpMethod() == null) ? 0 : getHttpMethod().hashCode()); hashCode = prime * hashCode + ((getAuthorizationType() == null) ? 0 : getAuthorizationType().hashCode()); hashCode = prime * hashCode + ((getAuthorizerId() == null) ? 0 : getAuthorizerId() .hashCode()); hashCode = prime * hashCode + ((getApiKeyRequired() == null) ? 0 : getApiKeyRequired() .hashCode()); hashCode = prime * hashCode + ((getRequestParameters() == null) ? 0 : getRequestParameters().hashCode()); hashCode = prime * hashCode + ((getRequestModels() == null) ? 0 : getRequestModels() .hashCode()); hashCode = prime * hashCode + ((getMethodResponses() == null) ? 0 : getMethodResponses() .hashCode()); hashCode = prime * hashCode + ((getMethodIntegration() == null) ? 0 : getMethodIntegration().hashCode()); return hashCode; } @Override public Method clone() { try { return (Method) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException( "Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy