com.amazonaws.services.kinesisanalytics.model.ApplicationDetail Maven / Gradle / Ivy
/*
* 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.kinesisanalytics.model;
import java.io.Serializable;
/**
*
* Provides a description of the application, including the application Amazon
* Resource Name (ARN), status, latest version, and input and output
* configuration.
*
*/
public class ApplicationDetail implements Serializable, Cloneable {
/**
*
* Name of the application.
*
*/
private String applicationName;
/**
*
* Description of the application.
*
*/
private String applicationDescription;
/**
*
* ARN of the application.
*
*/
private String applicationARN;
/**
*
* Status of the application.
*
*/
private String applicationStatus;
/**
*
* Timestamp when the application version was created.
*
*/
private java.util.Date createTimestamp;
/**
*
* Timestamp when the application was last updated.
*
*/
private java.util.Date lastUpdateTimestamp;
/**
*
* Describes the application input configuration. For more information, see
* Configuring Application Input.
*
*/
private java.util.List inputDescriptions;
/**
*
* Describes the application output configuration. For more information, see
* Configuring Application Output.
*
*/
private java.util.List outputDescriptions;
/**
*
* Describes reference data sources configured for the application. For more
* information, see Configuring Application Input.
*
*/
private java.util.List referenceDataSourceDescriptions;
/**
*
* Returns the application code that you provided to perform data analysis
* on any of the in-application streams in your application.
*
*/
private String applicationCode;
/**
*
* Provides the current application version.
*
*/
private Long applicationVersionId;
/**
*
* Name of the application.
*
*
* @param applicationName
* Name of the application.
*/
public void setApplicationName(String applicationName) {
this.applicationName = applicationName;
}
/**
*
* Name of the application.
*
*
* @return Name of the application.
*/
public String getApplicationName() {
return this.applicationName;
}
/**
*
* Name of the application.
*
*
* @param applicationName
* Name of the application.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public ApplicationDetail withApplicationName(String applicationName) {
setApplicationName(applicationName);
return this;
}
/**
*
* Description of the application.
*
*
* @param applicationDescription
* Description of the application.
*/
public void setApplicationDescription(String applicationDescription) {
this.applicationDescription = applicationDescription;
}
/**
*
* Description of the application.
*
*
* @return Description of the application.
*/
public String getApplicationDescription() {
return this.applicationDescription;
}
/**
*
* Description of the application.
*
*
* @param applicationDescription
* Description of the application.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public ApplicationDetail withApplicationDescription(
String applicationDescription) {
setApplicationDescription(applicationDescription);
return this;
}
/**
*
* ARN of the application.
*
*
* @param applicationARN
* ARN of the application.
*/
public void setApplicationARN(String applicationARN) {
this.applicationARN = applicationARN;
}
/**
*
* ARN of the application.
*
*
* @return ARN of the application.
*/
public String getApplicationARN() {
return this.applicationARN;
}
/**
*
* ARN of the application.
*
*
* @param applicationARN
* ARN of the application.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public ApplicationDetail withApplicationARN(String applicationARN) {
setApplicationARN(applicationARN);
return this;
}
/**
*
* Status of the application.
*
*
* @param applicationStatus
* Status of the application.
* @see ApplicationStatus
*/
public void setApplicationStatus(String applicationStatus) {
this.applicationStatus = applicationStatus;
}
/**
*
* Status of the application.
*
*
* @return Status of the application.
* @see ApplicationStatus
*/
public String getApplicationStatus() {
return this.applicationStatus;
}
/**
*
* Status of the application.
*
*
* @param applicationStatus
* Status of the application.
* @return Returns a reference to this object so that method calls can be
* chained together.
* @see ApplicationStatus
*/
public ApplicationDetail withApplicationStatus(String applicationStatus) {
setApplicationStatus(applicationStatus);
return this;
}
/**
*
* Status of the application.
*
*
* @param applicationStatus
* Status of the application.
* @see ApplicationStatus
*/
public void setApplicationStatus(ApplicationStatus applicationStatus) {
this.applicationStatus = applicationStatus.toString();
}
/**
*
* Status of the application.
*
*
* @param applicationStatus
* Status of the application.
* @return Returns a reference to this object so that method calls can be
* chained together.
* @see ApplicationStatus
*/
public ApplicationDetail withApplicationStatus(
ApplicationStatus applicationStatus) {
setApplicationStatus(applicationStatus);
return this;
}
/**
*
* Timestamp when the application version was created.
*
*
* @param createTimestamp
* Timestamp when the application version was created.
*/
public void setCreateTimestamp(java.util.Date createTimestamp) {
this.createTimestamp = createTimestamp;
}
/**
*
* Timestamp when the application version was created.
*
*
* @return Timestamp when the application version was created.
*/
public java.util.Date getCreateTimestamp() {
return this.createTimestamp;
}
/**
*
* Timestamp when the application version was created.
*
*
* @param createTimestamp
* Timestamp when the application version was created.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public ApplicationDetail withCreateTimestamp(java.util.Date createTimestamp) {
setCreateTimestamp(createTimestamp);
return this;
}
/**
*
* Timestamp when the application was last updated.
*
*
* @param lastUpdateTimestamp
* Timestamp when the application was last updated.
*/
public void setLastUpdateTimestamp(java.util.Date lastUpdateTimestamp) {
this.lastUpdateTimestamp = lastUpdateTimestamp;
}
/**
*
* Timestamp when the application was last updated.
*
*
* @return Timestamp when the application was last updated.
*/
public java.util.Date getLastUpdateTimestamp() {
return this.lastUpdateTimestamp;
}
/**
*
* Timestamp when the application was last updated.
*
*
* @param lastUpdateTimestamp
* Timestamp when the application was last updated.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public ApplicationDetail withLastUpdateTimestamp(
java.util.Date lastUpdateTimestamp) {
setLastUpdateTimestamp(lastUpdateTimestamp);
return this;
}
/**
*
* Describes the application input configuration. For more information, see
* Configuring Application Input.
*
*
* @return Describes the application input configuration. For more
* information, see Configuring Application Input.
*/
public java.util.List getInputDescriptions() {
return inputDescriptions;
}
/**
*
* Describes the application input configuration. For more information, see
* Configuring Application Input.
*
*
* @param inputDescriptions
* Describes the application input configuration. For more
* information, see Configuring Application Input.
*/
public void setInputDescriptions(
java.util.Collection inputDescriptions) {
if (inputDescriptions == null) {
this.inputDescriptions = null;
return;
}
this.inputDescriptions = new java.util.ArrayList(
inputDescriptions);
}
/**
*
* Describes the application input configuration. For more information, see
* Configuring Application Input.
*
*
* NOTE: This method appends the values to the existing list (if
* any). Use {@link #setInputDescriptions(java.util.Collection)} or
* {@link #withInputDescriptions(java.util.Collection)} if you want to
* override the existing values.
*
*
* @param inputDescriptions
* Describes the application input configuration. For more
* information, see Configuring Application Input.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public ApplicationDetail withInputDescriptions(
InputDescription... inputDescriptions) {
if (this.inputDescriptions == null) {
setInputDescriptions(new java.util.ArrayList(
inputDescriptions.length));
}
for (InputDescription ele : inputDescriptions) {
this.inputDescriptions.add(ele);
}
return this;
}
/**
*
* Describes the application input configuration. For more information, see
* Configuring Application Input.
*
*
* @param inputDescriptions
* Describes the application input configuration. For more
* information, see Configuring Application Input.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public ApplicationDetail withInputDescriptions(
java.util.Collection inputDescriptions) {
setInputDescriptions(inputDescriptions);
return this;
}
/**
*
* Describes the application output configuration. For more information, see
* Configuring Application Output.
*
*
* @return Describes the application output configuration. For more
* information, see Configuring Application Output.
*/
public java.util.List getOutputDescriptions() {
return outputDescriptions;
}
/**
*
* Describes the application output configuration. For more information, see
* Configuring Application Output.
*
*
* @param outputDescriptions
* Describes the application output configuration. For more
* information, see Configuring Application Output.
*/
public void setOutputDescriptions(
java.util.Collection outputDescriptions) {
if (outputDescriptions == null) {
this.outputDescriptions = null;
return;
}
this.outputDescriptions = new java.util.ArrayList(
outputDescriptions);
}
/**
*
* Describes the application output configuration. For more information, see
* Configuring Application Output.
*
*
* NOTE: This method appends the values to the existing list (if
* any). Use {@link #setOutputDescriptions(java.util.Collection)} or
* {@link #withOutputDescriptions(java.util.Collection)} if you want to
* override the existing values.
*
*
* @param outputDescriptions
* Describes the application output configuration. For more
* information, see Configuring Application Output.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public ApplicationDetail withOutputDescriptions(
OutputDescription... outputDescriptions) {
if (this.outputDescriptions == null) {
setOutputDescriptions(new java.util.ArrayList(
outputDescriptions.length));
}
for (OutputDescription ele : outputDescriptions) {
this.outputDescriptions.add(ele);
}
return this;
}
/**
*
* Describes the application output configuration. For more information, see
* Configuring Application Output.
*
*
* @param outputDescriptions
* Describes the application output configuration. For more
* information, see Configuring Application Output.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public ApplicationDetail withOutputDescriptions(
java.util.Collection outputDescriptions) {
setOutputDescriptions(outputDescriptions);
return this;
}
/**
*
* Describes reference data sources configured for the application. For more
* information, see Configuring Application Input.
*
*
* @return Describes reference data sources configured for the application.
* For more information, see Configuring Application Input.
*/
public java.util.List getReferenceDataSourceDescriptions() {
return referenceDataSourceDescriptions;
}
/**
*
* Describes reference data sources configured for the application. For more
* information, see Configuring Application Input.
*
*
* @param referenceDataSourceDescriptions
* Describes reference data sources configured for the application.
* For more information, see Configuring Application Input.
*/
public void setReferenceDataSourceDescriptions(
java.util.Collection referenceDataSourceDescriptions) {
if (referenceDataSourceDescriptions == null) {
this.referenceDataSourceDescriptions = null;
return;
}
this.referenceDataSourceDescriptions = new java.util.ArrayList(
referenceDataSourceDescriptions);
}
/**
*
* Describes reference data sources configured for the application. For more
* information, see Configuring Application Input.
*
*
* NOTE: This method appends the values to the existing list (if
* any). Use
* {@link #setReferenceDataSourceDescriptions(java.util.Collection)} or
* {@link #withReferenceDataSourceDescriptions(java.util.Collection)} if you
* want to override the existing values.
*
*
* @param referenceDataSourceDescriptions
* Describes reference data sources configured for the application.
* For more information, see Configuring Application Input.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public ApplicationDetail withReferenceDataSourceDescriptions(
ReferenceDataSourceDescription... referenceDataSourceDescriptions) {
if (this.referenceDataSourceDescriptions == null) {
setReferenceDataSourceDescriptions(new java.util.ArrayList(
referenceDataSourceDescriptions.length));
}
for (ReferenceDataSourceDescription ele : referenceDataSourceDescriptions) {
this.referenceDataSourceDescriptions.add(ele);
}
return this;
}
/**
*
* Describes reference data sources configured for the application. For more
* information, see Configuring Application Input.
*
*
* @param referenceDataSourceDescriptions
* Describes reference data sources configured for the application.
* For more information, see Configuring Application Input.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public ApplicationDetail withReferenceDataSourceDescriptions(
java.util.Collection referenceDataSourceDescriptions) {
setReferenceDataSourceDescriptions(referenceDataSourceDescriptions);
return this;
}
/**
*
* Returns the application code that you provided to perform data analysis
* on any of the in-application streams in your application.
*
*
* @param applicationCode
* Returns the application code that you provided to perform data
* analysis on any of the in-application streams in your application.
*/
public void setApplicationCode(String applicationCode) {
this.applicationCode = applicationCode;
}
/**
*
* Returns the application code that you provided to perform data analysis
* on any of the in-application streams in your application.
*
*
* @return Returns the application code that you provided to perform data
* analysis on any of the in-application streams in your
* application.
*/
public String getApplicationCode() {
return this.applicationCode;
}
/**
*
* Returns the application code that you provided to perform data analysis
* on any of the in-application streams in your application.
*
*
* @param applicationCode
* Returns the application code that you provided to perform data
* analysis on any of the in-application streams in your application.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public ApplicationDetail withApplicationCode(String applicationCode) {
setApplicationCode(applicationCode);
return this;
}
/**
*
* Provides the current application version.
*
*
* @param applicationVersionId
* Provides the current application version.
*/
public void setApplicationVersionId(Long applicationVersionId) {
this.applicationVersionId = applicationVersionId;
}
/**
*
* Provides the current application version.
*
*
* @return Provides the current application version.
*/
public Long getApplicationVersionId() {
return this.applicationVersionId;
}
/**
*
* Provides the current application version.
*
*
* @param applicationVersionId
* Provides the current application version.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public ApplicationDetail withApplicationVersionId(Long applicationVersionId) {
setApplicationVersionId(applicationVersionId);
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 (getApplicationName() != null)
sb.append("ApplicationName: " + getApplicationName() + ",");
if (getApplicationDescription() != null)
sb.append("ApplicationDescription: " + getApplicationDescription()
+ ",");
if (getApplicationARN() != null)
sb.append("ApplicationARN: " + getApplicationARN() + ",");
if (getApplicationStatus() != null)
sb.append("ApplicationStatus: " + getApplicationStatus() + ",");
if (getCreateTimestamp() != null)
sb.append("CreateTimestamp: " + getCreateTimestamp() + ",");
if (getLastUpdateTimestamp() != null)
sb.append("LastUpdateTimestamp: " + getLastUpdateTimestamp() + ",");
if (getInputDescriptions() != null)
sb.append("InputDescriptions: " + getInputDescriptions() + ",");
if (getOutputDescriptions() != null)
sb.append("OutputDescriptions: " + getOutputDescriptions() + ",");
if (getReferenceDataSourceDescriptions() != null)
sb.append("ReferenceDataSourceDescriptions: "
+ getReferenceDataSourceDescriptions() + ",");
if (getApplicationCode() != null)
sb.append("ApplicationCode: " + getApplicationCode() + ",");
if (getApplicationVersionId() != null)
sb.append("ApplicationVersionId: " + getApplicationVersionId());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof ApplicationDetail == false)
return false;
ApplicationDetail other = (ApplicationDetail) obj;
if (other.getApplicationName() == null
^ this.getApplicationName() == null)
return false;
if (other.getApplicationName() != null
&& other.getApplicationName().equals(this.getApplicationName()) == false)
return false;
if (other.getApplicationDescription() == null
^ this.getApplicationDescription() == null)
return false;
if (other.getApplicationDescription() != null
&& other.getApplicationDescription().equals(
this.getApplicationDescription()) == false)
return false;
if (other.getApplicationARN() == null
^ this.getApplicationARN() == null)
return false;
if (other.getApplicationARN() != null
&& other.getApplicationARN().equals(this.getApplicationARN()) == false)
return false;
if (other.getApplicationStatus() == null
^ this.getApplicationStatus() == null)
return false;
if (other.getApplicationStatus() != null
&& other.getApplicationStatus().equals(
this.getApplicationStatus()) == false)
return false;
if (other.getCreateTimestamp() == null
^ this.getCreateTimestamp() == null)
return false;
if (other.getCreateTimestamp() != null
&& other.getCreateTimestamp().equals(this.getCreateTimestamp()) == false)
return false;
if (other.getLastUpdateTimestamp() == null
^ this.getLastUpdateTimestamp() == null)
return false;
if (other.getLastUpdateTimestamp() != null
&& other.getLastUpdateTimestamp().equals(
this.getLastUpdateTimestamp()) == false)
return false;
if (other.getInputDescriptions() == null
^ this.getInputDescriptions() == null)
return false;
if (other.getInputDescriptions() != null
&& other.getInputDescriptions().equals(
this.getInputDescriptions()) == false)
return false;
if (other.getOutputDescriptions() == null
^ this.getOutputDescriptions() == null)
return false;
if (other.getOutputDescriptions() != null
&& other.getOutputDescriptions().equals(
this.getOutputDescriptions()) == false)
return false;
if (other.getReferenceDataSourceDescriptions() == null
^ this.getReferenceDataSourceDescriptions() == null)
return false;
if (other.getReferenceDataSourceDescriptions() != null
&& other.getReferenceDataSourceDescriptions().equals(
this.getReferenceDataSourceDescriptions()) == false)
return false;
if (other.getApplicationCode() == null
^ this.getApplicationCode() == null)
return false;
if (other.getApplicationCode() != null
&& other.getApplicationCode().equals(this.getApplicationCode()) == false)
return false;
if (other.getApplicationVersionId() == null
^ this.getApplicationVersionId() == null)
return false;
if (other.getApplicationVersionId() != null
&& other.getApplicationVersionId().equals(
this.getApplicationVersionId()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime
* hashCode
+ ((getApplicationName() == null) ? 0 : getApplicationName()
.hashCode());
hashCode = prime
* hashCode
+ ((getApplicationDescription() == null) ? 0
: getApplicationDescription().hashCode());
hashCode = prime
* hashCode
+ ((getApplicationARN() == null) ? 0 : getApplicationARN()
.hashCode());
hashCode = prime
* hashCode
+ ((getApplicationStatus() == null) ? 0
: getApplicationStatus().hashCode());
hashCode = prime
* hashCode
+ ((getCreateTimestamp() == null) ? 0 : getCreateTimestamp()
.hashCode());
hashCode = prime
* hashCode
+ ((getLastUpdateTimestamp() == null) ? 0
: getLastUpdateTimestamp().hashCode());
hashCode = prime
* hashCode
+ ((getInputDescriptions() == null) ? 0
: getInputDescriptions().hashCode());
hashCode = prime
* hashCode
+ ((getOutputDescriptions() == null) ? 0
: getOutputDescriptions().hashCode());
hashCode = prime
* hashCode
+ ((getReferenceDataSourceDescriptions() == null) ? 0
: getReferenceDataSourceDescriptions().hashCode());
hashCode = prime
* hashCode
+ ((getApplicationCode() == null) ? 0 : getApplicationCode()
.hashCode());
hashCode = prime
* hashCode
+ ((getApplicationVersionId() == null) ? 0
: getApplicationVersionId().hashCode());
return hashCode;
}
@Override
public ApplicationDetail clone() {
try {
return (ApplicationDetail) super.clone();
} catch (CloneNotSupportedException e) {
throw new IllegalStateException(
"Got a CloneNotSupportedException from Object.clone() "
+ "even though we're Cloneable!", e);
}
}
}