/* * Copyright 2012-2017 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; import javax.annotation.Generated; import com.amazonaws.AmazonWebServiceRequest; /** * <p/> * * @see <a href="http://docs.aws.amazon.com/goto/WebAPI/kinesisanalytics-2015-08-14/AddApplicationReferenceDataSource" * target="_top">AWS API Documentation</a> */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class AddApplicationReferenceDataSourceRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** * <p> * Name of an existing application. * </p> */ private String applicationName; /** * <p> * Version of the application for which you are adding the reference data source. You can use the * <a>DescribeApplication</a> operation to get the current application version. If the version specified is not the * current version, the <code>ConcurrentModificationException</code> is returned. * </p> */ private Long currentApplicationVersionId; /** * <p> * The reference data source can be an object in your Amazon S3 bucket. Amazon Kinesis Analytics reads the object * and copies the data into the in-application table that is created. You provide an S3 bucket, object key name, and * the resulting in-application table that is created. You must also provide an IAM role with the necessary * permissions that Amazon Kinesis Analytics can assume to read the object from your S3 bucket on your behalf. * </p> */ private ReferenceDataSource referenceDataSource; /** * <p> * Name of an existing application. * </p> * * @param applicationName * Name of an existing application. */ public void setApplicationName(String applicationName) { this.applicationName = applicationName; } /** * <p> * Name of an existing application. * </p> * * @return Name of an existing application. */ public String getApplicationName() { return this.applicationName; } /** * <p> * Name of an existing application. * </p> * * @param applicationName * Name of an existing application. * @return Returns a reference to this object so that method calls can be chained together. */ public AddApplicationReferenceDataSourceRequest withApplicationName(String applicationName) { setApplicationName(applicationName); return this; } /** * <p> * Version of the application for which you are adding the reference data source. You can use the * <a>DescribeApplication</a> operation to get the current application version. If the version specified is not the * current version, the <code>ConcurrentModificationException</code> is returned. * </p> * * @param currentApplicationVersionId * Version of the application for which you are adding the reference data source. You can use the * <a>DescribeApplication</a> operation to get the current application version. If the version specified is * not the current version, the <code>ConcurrentModificationException</code> is returned. */ public void setCurrentApplicationVersionId(Long currentApplicationVersionId) { this.currentApplicationVersionId = currentApplicationVersionId; } /** * <p> * Version of the application for which you are adding the reference data source. You can use the * <a>DescribeApplication</a> operation to get the current application version. If the version specified is not the * current version, the <code>ConcurrentModificationException</code> is returned. * </p> * * @return Version of the application for which you are adding the reference data source. You can use the * <a>DescribeApplication</a> operation to get the current application version. If the version specified is * not the current version, the <code>ConcurrentModificationException</code> is returned. */ public Long getCurrentApplicationVersionId() { return this.currentApplicationVersionId; } /** * <p> * Version of the application for which you are adding the reference data source. You can use the * <a>DescribeApplication</a> operation to get the current application version. If the version specified is not the * current version, the <code>ConcurrentModificationException</code> is returned. * </p> * * @param currentApplicationVersionId * Version of the application for which you are adding the reference data source. You can use the * <a>DescribeApplication</a> operation to get the current application version. If the version specified is * not the current version, the <code>ConcurrentModificationException</code> is returned. * @return Returns a reference to this object so that method calls can be chained together. */ public AddApplicationReferenceDataSourceRequest withCurrentApplicationVersionId(Long currentApplicationVersionId) { setCurrentApplicationVersionId(currentApplicationVersionId); return this; } /** * <p> * The reference data source can be an object in your Amazon S3 bucket. Amazon Kinesis Analytics reads the object * and copies the data into the in-application table that is created. You provide an S3 bucket, object key name, and * the resulting in-application table that is created. You must also provide an IAM role with the necessary * permissions that Amazon Kinesis Analytics can assume to read the object from your S3 bucket on your behalf. * </p> * * @param referenceDataSource * The reference data source can be an object in your Amazon S3 bucket. Amazon Kinesis Analytics reads the * object and copies the data into the in-application table that is created. You provide an S3 bucket, object * key name, and the resulting in-application table that is created. You must also provide an IAM role with * the necessary permissions that Amazon Kinesis Analytics can assume to read the object from your S3 bucket * on your behalf. */ public void setReferenceDataSource(ReferenceDataSource referenceDataSource) { this.referenceDataSource = referenceDataSource; } /** * <p> * The reference data source can be an object in your Amazon S3 bucket. Amazon Kinesis Analytics reads the object * and copies the data into the in-application table that is created. You provide an S3 bucket, object key name, and * the resulting in-application table that is created. You must also provide an IAM role with the necessary * permissions that Amazon Kinesis Analytics can assume to read the object from your S3 bucket on your behalf. * </p> * * @return The reference data source can be an object in your Amazon S3 bucket. Amazon Kinesis Analytics reads the * object and copies the data into the in-application table that is created. You provide an S3 bucket, * object key name, and the resulting in-application table that is created. You must also provide an IAM * role with the necessary permissions that Amazon Kinesis Analytics can assume to read the object from your * S3 bucket on your behalf. */ public ReferenceDataSource getReferenceDataSource() { return this.referenceDataSource; } /** * <p> * The reference data source can be an object in your Amazon S3 bucket. Amazon Kinesis Analytics reads the object * and copies the data into the in-application table that is created. You provide an S3 bucket, object key name, and * the resulting in-application table that is created. You must also provide an IAM role with the necessary * permissions that Amazon Kinesis Analytics can assume to read the object from your S3 bucket on your behalf. * </p> * * @param referenceDataSource * The reference data source can be an object in your Amazon S3 bucket. Amazon Kinesis Analytics reads the * object and copies the data into the in-application table that is created. You provide an S3 bucket, object * key name, and the resulting in-application table that is created. You must also provide an IAM role with * the necessary permissions that Amazon Kinesis Analytics can assume to read the object from your S3 bucket * on your behalf. * @return Returns a reference to this object so that method calls can be chained together. */ public AddApplicationReferenceDataSourceRequest withReferenceDataSource(ReferenceDataSource referenceDataSource) { setReferenceDataSource(referenceDataSource); 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: ").append(getApplicationName()).append(","); if (getCurrentApplicationVersionId() != null) sb.append("CurrentApplicationVersionId: ").append(getCurrentApplicationVersionId()).append(","); if (getReferenceDataSource() != null) sb.append("ReferenceDataSource: ").append(getReferenceDataSource()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof AddApplicationReferenceDataSourceRequest == false) return false; AddApplicationReferenceDataSourceRequest other = (AddApplicationReferenceDataSourceRequest) obj; if (other.getApplicationName() == null ^ this.getApplicationName() == null) return false; if (other.getApplicationName() != null && other.getApplicationName().equals(this.getApplicationName()) == false) return false; if (other.getCurrentApplicationVersionId() == null ^ this.getCurrentApplicationVersionId() == null) return false; if (other.getCurrentApplicationVersionId() != null && other.getCurrentApplicationVersionId().equals(this.getCurrentApplicationVersionId()) == false) return false; if (other.getReferenceDataSource() == null ^ this.getReferenceDataSource() == null) return false; if (other.getReferenceDataSource() != null && other.getReferenceDataSource().equals(this.getReferenceDataSource()) == 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 + ((getCurrentApplicationVersionId() == null) ? 0 : getCurrentApplicationVersionId().hashCode()); hashCode = prime * hashCode + ((getReferenceDataSource() == null) ? 0 : getReferenceDataSource().hashCode()); return hashCode; } @Override public AddApplicationReferenceDataSourceRequest clone() { return (AddApplicationReferenceDataSourceRequest) super.clone(); } }