com.amazonaws.services.lambda.model.GetAliasResult Maven / Gradle / Ivy
/*
* Copyright 2013-2018 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.lambda.model;
import java.io.Serializable;
import javax.annotation.Generated;
/**
*
* Provides configuration information about a Lambda function version alias.
*
*
* @see AWS API
* Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class GetAliasResult extends com.amazonaws.AmazonWebServiceResult implements Serializable, Cloneable {
/**
*
* Lambda function ARN that is qualified using the alias name as the suffix. For example, if you create an alias
* called BETA
that points to a helloworld function version, the ARN is
* arn:aws:lambda:aws-regions:acct-id:function:helloworld:BETA
.
*
*/
private String aliasArn;
/**
*
* Alias name.
*
*/
private String name;
/**
*
* Function version to which the alias points.
*
*/
private String functionVersion;
/**
*
* Alias description.
*
*/
private String description;
/**
*
* Specifies an additional function versions the alias points to, allowing you to dictate what percentage of traffic
* will invoke each version. For more information, see lambda-traffic-shifting-using-aliases.
*
*/
private AliasRoutingConfiguration routingConfig;
/**
*
* Represents the latest updated revision of the function or alias.
*
*/
private String revisionId;
/**
*
* Lambda function ARN that is qualified using the alias name as the suffix. For example, if you create an alias
* called BETA
that points to a helloworld function version, the ARN is
* arn:aws:lambda:aws-regions:acct-id:function:helloworld:BETA
.
*
*
* @param aliasArn
* Lambda function ARN that is qualified using the alias name as the suffix. For example, if you create an
* alias called BETA
that points to a helloworld function version, the ARN is
* arn:aws:lambda:aws-regions:acct-id:function:helloworld:BETA
.
*/
public void setAliasArn(String aliasArn) {
this.aliasArn = aliasArn;
}
/**
*
* Lambda function ARN that is qualified using the alias name as the suffix. For example, if you create an alias
* called BETA
that points to a helloworld function version, the ARN is
* arn:aws:lambda:aws-regions:acct-id:function:helloworld:BETA
.
*
*
* @return Lambda function ARN that is qualified using the alias name as the suffix. For example, if you create an
* alias called BETA
that points to a helloworld function version, the ARN is
* arn:aws:lambda:aws-regions:acct-id:function:helloworld:BETA
.
*/
public String getAliasArn() {
return this.aliasArn;
}
/**
*
* Lambda function ARN that is qualified using the alias name as the suffix. For example, if you create an alias
* called BETA
that points to a helloworld function version, the ARN is
* arn:aws:lambda:aws-regions:acct-id:function:helloworld:BETA
.
*
*
* @param aliasArn
* Lambda function ARN that is qualified using the alias name as the suffix. For example, if you create an
* alias called BETA
that points to a helloworld function version, the ARN is
* arn:aws:lambda:aws-regions:acct-id:function:helloworld:BETA
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetAliasResult withAliasArn(String aliasArn) {
setAliasArn(aliasArn);
return this;
}
/**
*
* Alias name.
*
*
* @param name
* Alias name.
*/
public void setName(String name) {
this.name = name;
}
/**
*
* Alias name.
*
*
* @return Alias name.
*/
public String getName() {
return this.name;
}
/**
*
* Alias name.
*
*
* @param name
* Alias name.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetAliasResult withName(String name) {
setName(name);
return this;
}
/**
*
* Function version to which the alias points.
*
*
* @param functionVersion
* Function version to which the alias points.
*/
public void setFunctionVersion(String functionVersion) {
this.functionVersion = functionVersion;
}
/**
*
* Function version to which the alias points.
*
*
* @return Function version to which the alias points.
*/
public String getFunctionVersion() {
return this.functionVersion;
}
/**
*
* Function version to which the alias points.
*
*
* @param functionVersion
* Function version to which the alias points.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetAliasResult withFunctionVersion(String functionVersion) {
setFunctionVersion(functionVersion);
return this;
}
/**
*
* Alias description.
*
*
* @param description
* Alias description.
*/
public void setDescription(String description) {
this.description = description;
}
/**
*
* Alias description.
*
*
* @return Alias description.
*/
public String getDescription() {
return this.description;
}
/**
*
* Alias description.
*
*
* @param description
* Alias description.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetAliasResult withDescription(String description) {
setDescription(description);
return this;
}
/**
*
* Specifies an additional function versions the alias points to, allowing you to dictate what percentage of traffic
* will invoke each version. For more information, see lambda-traffic-shifting-using-aliases.
*
*
* @param routingConfig
* Specifies an additional function versions the alias points to, allowing you to dictate what percentage of
* traffic will invoke each version. For more information, see lambda-traffic-shifting-using-aliases.
*/
public void setRoutingConfig(AliasRoutingConfiguration routingConfig) {
this.routingConfig = routingConfig;
}
/**
*
* Specifies an additional function versions the alias points to, allowing you to dictate what percentage of traffic
* will invoke each version. For more information, see lambda-traffic-shifting-using-aliases.
*
*
* @return Specifies an additional function versions the alias points to, allowing you to dictate what percentage of
* traffic will invoke each version. For more information, see lambda-traffic-shifting-using-aliases.
*/
public AliasRoutingConfiguration getRoutingConfig() {
return this.routingConfig;
}
/**
*
* Specifies an additional function versions the alias points to, allowing you to dictate what percentage of traffic
* will invoke each version. For more information, see lambda-traffic-shifting-using-aliases.
*
*
* @param routingConfig
* Specifies an additional function versions the alias points to, allowing you to dictate what percentage of
* traffic will invoke each version. For more information, see lambda-traffic-shifting-using-aliases.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetAliasResult withRoutingConfig(AliasRoutingConfiguration routingConfig) {
setRoutingConfig(routingConfig);
return this;
}
/**
*
* Represents the latest updated revision of the function or alias.
*
*
* @param revisionId
* Represents the latest updated revision of the function or alias.
*/
public void setRevisionId(String revisionId) {
this.revisionId = revisionId;
}
/**
*
* Represents the latest updated revision of the function or alias.
*
*
* @return Represents the latest updated revision of the function or alias.
*/
public String getRevisionId() {
return this.revisionId;
}
/**
*
* Represents the latest updated revision of the function or alias.
*
*
* @param revisionId
* Represents the latest updated revision of the function or alias.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GetAliasResult withRevisionId(String revisionId) {
setRevisionId(revisionId);
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 (getAliasArn() != null)
sb.append("AliasArn: ").append(getAliasArn()).append(",");
if (getName() != null)
sb.append("Name: ").append(getName()).append(",");
if (getFunctionVersion() != null)
sb.append("FunctionVersion: ").append(getFunctionVersion()).append(",");
if (getDescription() != null)
sb.append("Description: ").append(getDescription()).append(",");
if (getRoutingConfig() != null)
sb.append("RoutingConfig: ").append(getRoutingConfig()).append(",");
if (getRevisionId() != null)
sb.append("RevisionId: ").append(getRevisionId());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof GetAliasResult == false)
return false;
GetAliasResult other = (GetAliasResult) obj;
if (other.getAliasArn() == null ^ this.getAliasArn() == null)
return false;
if (other.getAliasArn() != null && other.getAliasArn().equals(this.getAliasArn()) == false)
return false;
if (other.getName() == null ^ this.getName() == null)
return false;
if (other.getName() != null && other.getName().equals(this.getName()) == false)
return false;
if (other.getFunctionVersion() == null ^ this.getFunctionVersion() == null)
return false;
if (other.getFunctionVersion() != null && other.getFunctionVersion().equals(this.getFunctionVersion()) == false)
return false;
if (other.getDescription() == null ^ this.getDescription() == null)
return false;
if (other.getDescription() != null && other.getDescription().equals(this.getDescription()) == false)
return false;
if (other.getRoutingConfig() == null ^ this.getRoutingConfig() == null)
return false;
if (other.getRoutingConfig() != null && other.getRoutingConfig().equals(this.getRoutingConfig()) == false)
return false;
if (other.getRevisionId() == null ^ this.getRevisionId() == null)
return false;
if (other.getRevisionId() != null && other.getRevisionId().equals(this.getRevisionId()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getAliasArn() == null) ? 0 : getAliasArn().hashCode());
hashCode = prime * hashCode + ((getName() == null) ? 0 : getName().hashCode());
hashCode = prime * hashCode + ((getFunctionVersion() == null) ? 0 : getFunctionVersion().hashCode());
hashCode = prime * hashCode + ((getDescription() == null) ? 0 : getDescription().hashCode());
hashCode = prime * hashCode + ((getRoutingConfig() == null) ? 0 : getRoutingConfig().hashCode());
hashCode = prime * hashCode + ((getRevisionId() == null) ? 0 : getRevisionId().hashCode());
return hashCode;
}
@Override
public GetAliasResult clone() {
try {
return (GetAliasResult) super.clone();
} catch (CloneNotSupportedException e) {
throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e);
}
}
}