com.amazonaws.services.kinesisfirehose.model.DeliveryStreamDescription Maven / Gradle / Ivy
Show all versions of aws-java-sdk-kinesis Show documentation
/*
* Copyright 2019-2024 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.kinesisfirehose.model;
import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.protocol.StructuredPojo;
import com.amazonaws.protocol.ProtocolMarshaller;
/**
*
* Contains information about a delivery stream.
*
*
* @see AWS
* API Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class DeliveryStreamDescription implements Serializable, Cloneable, StructuredPojo {
/**
*
* The name of the delivery stream.
*
*/
private String deliveryStreamName;
/**
*
* The Amazon Resource Name (ARN) of the delivery stream. For more information, see Amazon Resource Names (ARNs)
* and Amazon Web Services Service Namespaces.
*
*/
private String deliveryStreamARN;
/**
*
* The status of the delivery stream. If the status of a delivery stream is CREATING_FAILED
, this
* status doesn't change, and you can't invoke CreateDeliveryStream
again on it. However, you can
* invoke the DeleteDeliveryStream operation to delete it.
*
*/
private String deliveryStreamStatus;
/**
*
* Provides details in case one of the following operations fails due to an error related to KMS:
* CreateDeliveryStream, DeleteDeliveryStream, StartDeliveryStreamEncryption,
* StopDeliveryStreamEncryption.
*
*/
private FailureDescription failureDescription;
/**
*
* Indicates the server-side encryption (SSE) status for the delivery stream.
*
*/
private DeliveryStreamEncryptionConfiguration deliveryStreamEncryptionConfiguration;
/**
*
* The delivery stream type. This can be one of the following values:
*
*
* -
*
* DirectPut
: Provider applications access the delivery stream directly.
*
*
* -
*
* KinesisStreamAsSource
: The delivery stream uses a Kinesis data stream as a source.
*
*
*
*/
private String deliveryStreamType;
/**
*
* Each time the destination is updated for a delivery stream, the version ID is changed, and the current version ID
* is required when updating the destination. This is so that the service knows it is applying the changes to the
* correct version of the delivery stream.
*
*/
private String versionId;
/**
*
* The date and time that the delivery stream was created.
*
*/
private java.util.Date createTimestamp;
/**
*
* The date and time that the delivery stream was last updated.
*
*/
private java.util.Date lastUpdateTimestamp;
/**
*
* If the DeliveryStreamType
parameter is KinesisStreamAsSource
, a
* SourceDescription object describing the source Kinesis data stream.
*
*/
private SourceDescription source;
/**
*
* The destinations.
*
*/
private java.util.List destinations;
/**
*
* Indicates whether there are more destinations available to list.
*
*/
private Boolean hasMoreDestinations;
/**
*
* The name of the delivery stream.
*
*
* @param deliveryStreamName
* The name of the delivery stream.
*/
public void setDeliveryStreamName(String deliveryStreamName) {
this.deliveryStreamName = deliveryStreamName;
}
/**
*
* The name of the delivery stream.
*
*
* @return The name of the delivery stream.
*/
public String getDeliveryStreamName() {
return this.deliveryStreamName;
}
/**
*
* The name of the delivery stream.
*
*
* @param deliveryStreamName
* The name of the delivery stream.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public DeliveryStreamDescription withDeliveryStreamName(String deliveryStreamName) {
setDeliveryStreamName(deliveryStreamName);
return this;
}
/**
*
* The Amazon Resource Name (ARN) of the delivery stream. For more information, see Amazon Resource Names (ARNs)
* and Amazon Web Services Service Namespaces.
*
*
* @param deliveryStreamARN
* The Amazon Resource Name (ARN) of the delivery stream. For more information, see Amazon Resource Names
* (ARNs) and Amazon Web Services Service Namespaces.
*/
public void setDeliveryStreamARN(String deliveryStreamARN) {
this.deliveryStreamARN = deliveryStreamARN;
}
/**
*
* The Amazon Resource Name (ARN) of the delivery stream. For more information, see Amazon Resource Names (ARNs)
* and Amazon Web Services Service Namespaces.
*
*
* @return The Amazon Resource Name (ARN) of the delivery stream. For more information, see Amazon Resource Names
* (ARNs) and Amazon Web Services Service Namespaces.
*/
public String getDeliveryStreamARN() {
return this.deliveryStreamARN;
}
/**
*
* The Amazon Resource Name (ARN) of the delivery stream. For more information, see Amazon Resource Names (ARNs)
* and Amazon Web Services Service Namespaces.
*
*
* @param deliveryStreamARN
* The Amazon Resource Name (ARN) of the delivery stream. For more information, see Amazon Resource Names
* (ARNs) and Amazon Web Services Service Namespaces.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public DeliveryStreamDescription withDeliveryStreamARN(String deliveryStreamARN) {
setDeliveryStreamARN(deliveryStreamARN);
return this;
}
/**
*
* The status of the delivery stream. If the status of a delivery stream is CREATING_FAILED
, this
* status doesn't change, and you can't invoke CreateDeliveryStream
again on it. However, you can
* invoke the DeleteDeliveryStream operation to delete it.
*
*
* @param deliveryStreamStatus
* The status of the delivery stream. If the status of a delivery stream is CREATING_FAILED
,
* this status doesn't change, and you can't invoke CreateDeliveryStream
again on it. However,
* you can invoke the DeleteDeliveryStream operation to delete it.
* @see DeliveryStreamStatus
*/
public void setDeliveryStreamStatus(String deliveryStreamStatus) {
this.deliveryStreamStatus = deliveryStreamStatus;
}
/**
*
* The status of the delivery stream. If the status of a delivery stream is CREATING_FAILED
, this
* status doesn't change, and you can't invoke CreateDeliveryStream
again on it. However, you can
* invoke the DeleteDeliveryStream operation to delete it.
*
*
* @return The status of the delivery stream. If the status of a delivery stream is CREATING_FAILED
,
* this status doesn't change, and you can't invoke CreateDeliveryStream
again on it. However,
* you can invoke the DeleteDeliveryStream operation to delete it.
* @see DeliveryStreamStatus
*/
public String getDeliveryStreamStatus() {
return this.deliveryStreamStatus;
}
/**
*
* The status of the delivery stream. If the status of a delivery stream is CREATING_FAILED
, this
* status doesn't change, and you can't invoke CreateDeliveryStream
again on it. However, you can
* invoke the DeleteDeliveryStream operation to delete it.
*
*
* @param deliveryStreamStatus
* The status of the delivery stream. If the status of a delivery stream is CREATING_FAILED
,
* this status doesn't change, and you can't invoke CreateDeliveryStream
again on it. However,
* you can invoke the DeleteDeliveryStream operation to delete it.
* @return Returns a reference to this object so that method calls can be chained together.
* @see DeliveryStreamStatus
*/
public DeliveryStreamDescription withDeliveryStreamStatus(String deliveryStreamStatus) {
setDeliveryStreamStatus(deliveryStreamStatus);
return this;
}
/**
*
* The status of the delivery stream. If the status of a delivery stream is CREATING_FAILED
, this
* status doesn't change, and you can't invoke CreateDeliveryStream
again on it. However, you can
* invoke the DeleteDeliveryStream operation to delete it.
*
*
* @param deliveryStreamStatus
* The status of the delivery stream. If the status of a delivery stream is CREATING_FAILED
,
* this status doesn't change, and you can't invoke CreateDeliveryStream
again on it. However,
* you can invoke the DeleteDeliveryStream operation to delete it.
* @see DeliveryStreamStatus
*/
public void setDeliveryStreamStatus(DeliveryStreamStatus deliveryStreamStatus) {
withDeliveryStreamStatus(deliveryStreamStatus);
}
/**
*
* The status of the delivery stream. If the status of a delivery stream is CREATING_FAILED
, this
* status doesn't change, and you can't invoke CreateDeliveryStream
again on it. However, you can
* invoke the DeleteDeliveryStream operation to delete it.
*
*
* @param deliveryStreamStatus
* The status of the delivery stream. If the status of a delivery stream is CREATING_FAILED
,
* this status doesn't change, and you can't invoke CreateDeliveryStream
again on it. However,
* you can invoke the DeleteDeliveryStream operation to delete it.
* @return Returns a reference to this object so that method calls can be chained together.
* @see DeliveryStreamStatus
*/
public DeliveryStreamDescription withDeliveryStreamStatus(DeliveryStreamStatus deliveryStreamStatus) {
this.deliveryStreamStatus = deliveryStreamStatus.toString();
return this;
}
/**
*
* Provides details in case one of the following operations fails due to an error related to KMS:
* CreateDeliveryStream, DeleteDeliveryStream, StartDeliveryStreamEncryption,
* StopDeliveryStreamEncryption.
*
*
* @param failureDescription
* Provides details in case one of the following operations fails due to an error related to KMS:
* CreateDeliveryStream, DeleteDeliveryStream, StartDeliveryStreamEncryption,
* StopDeliveryStreamEncryption.
*/
public void setFailureDescription(FailureDescription failureDescription) {
this.failureDescription = failureDescription;
}
/**
*
* Provides details in case one of the following operations fails due to an error related to KMS:
* CreateDeliveryStream, DeleteDeliveryStream, StartDeliveryStreamEncryption,
* StopDeliveryStreamEncryption.
*
*
* @return Provides details in case one of the following operations fails due to an error related to KMS:
* CreateDeliveryStream, DeleteDeliveryStream, StartDeliveryStreamEncryption,
* StopDeliveryStreamEncryption.
*/
public FailureDescription getFailureDescription() {
return this.failureDescription;
}
/**
*
* Provides details in case one of the following operations fails due to an error related to KMS:
* CreateDeliveryStream, DeleteDeliveryStream, StartDeliveryStreamEncryption,
* StopDeliveryStreamEncryption.
*
*
* @param failureDescription
* Provides details in case one of the following operations fails due to an error related to KMS:
* CreateDeliveryStream, DeleteDeliveryStream, StartDeliveryStreamEncryption,
* StopDeliveryStreamEncryption.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public DeliveryStreamDescription withFailureDescription(FailureDescription failureDescription) {
setFailureDescription(failureDescription);
return this;
}
/**
*
* Indicates the server-side encryption (SSE) status for the delivery stream.
*
*
* @param deliveryStreamEncryptionConfiguration
* Indicates the server-side encryption (SSE) status for the delivery stream.
*/
public void setDeliveryStreamEncryptionConfiguration(DeliveryStreamEncryptionConfiguration deliveryStreamEncryptionConfiguration) {
this.deliveryStreamEncryptionConfiguration = deliveryStreamEncryptionConfiguration;
}
/**
*
* Indicates the server-side encryption (SSE) status for the delivery stream.
*
*
* @return Indicates the server-side encryption (SSE) status for the delivery stream.
*/
public DeliveryStreamEncryptionConfiguration getDeliveryStreamEncryptionConfiguration() {
return this.deliveryStreamEncryptionConfiguration;
}
/**
*
* Indicates the server-side encryption (SSE) status for the delivery stream.
*
*
* @param deliveryStreamEncryptionConfiguration
* Indicates the server-side encryption (SSE) status for the delivery stream.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public DeliveryStreamDescription withDeliveryStreamEncryptionConfiguration(DeliveryStreamEncryptionConfiguration deliveryStreamEncryptionConfiguration) {
setDeliveryStreamEncryptionConfiguration(deliveryStreamEncryptionConfiguration);
return this;
}
/**
*
* The delivery stream type. This can be one of the following values:
*
*
* -
*
* DirectPut
: Provider applications access the delivery stream directly.
*
*
* -
*
* KinesisStreamAsSource
: The delivery stream uses a Kinesis data stream as a source.
*
*
*
*
* @param deliveryStreamType
* The delivery stream type. This can be one of the following values:
*
* -
*
* DirectPut
: Provider applications access the delivery stream directly.
*
*
* -
*
* KinesisStreamAsSource
: The delivery stream uses a Kinesis data stream as a source.
*
*
* @see DeliveryStreamType
*/
public void setDeliveryStreamType(String deliveryStreamType) {
this.deliveryStreamType = deliveryStreamType;
}
/**
*
* The delivery stream type. This can be one of the following values:
*
*
* -
*
* DirectPut
: Provider applications access the delivery stream directly.
*
*
* -
*
* KinesisStreamAsSource
: The delivery stream uses a Kinesis data stream as a source.
*
*
*
*
* @return The delivery stream type. This can be one of the following values:
*
* -
*
* DirectPut
: Provider applications access the delivery stream directly.
*
*
* -
*
* KinesisStreamAsSource
: The delivery stream uses a Kinesis data stream as a source.
*
*
* @see DeliveryStreamType
*/
public String getDeliveryStreamType() {
return this.deliveryStreamType;
}
/**
*
* The delivery stream type. This can be one of the following values:
*
*
* -
*
* DirectPut
: Provider applications access the delivery stream directly.
*
*
* -
*
* KinesisStreamAsSource
: The delivery stream uses a Kinesis data stream as a source.
*
*
*
*
* @param deliveryStreamType
* The delivery stream type. This can be one of the following values:
*
* -
*
* DirectPut
: Provider applications access the delivery stream directly.
*
*
* -
*
* KinesisStreamAsSource
: The delivery stream uses a Kinesis data stream as a source.
*
*
* @return Returns a reference to this object so that method calls can be chained together.
* @see DeliveryStreamType
*/
public DeliveryStreamDescription withDeliveryStreamType(String deliveryStreamType) {
setDeliveryStreamType(deliveryStreamType);
return this;
}
/**
*
* The delivery stream type. This can be one of the following values:
*
*
* -
*
* DirectPut
: Provider applications access the delivery stream directly.
*
*
* -
*
* KinesisStreamAsSource
: The delivery stream uses a Kinesis data stream as a source.
*
*
*
*
* @param deliveryStreamType
* The delivery stream type. This can be one of the following values:
*
* -
*
* DirectPut
: Provider applications access the delivery stream directly.
*
*
* -
*
* KinesisStreamAsSource
: The delivery stream uses a Kinesis data stream as a source.
*
*
* @see DeliveryStreamType
*/
public void setDeliveryStreamType(DeliveryStreamType deliveryStreamType) {
withDeliveryStreamType(deliveryStreamType);
}
/**
*
* The delivery stream type. This can be one of the following values:
*
*
* -
*
* DirectPut
: Provider applications access the delivery stream directly.
*
*
* -
*
* KinesisStreamAsSource
: The delivery stream uses a Kinesis data stream as a source.
*
*
*
*
* @param deliveryStreamType
* The delivery stream type. This can be one of the following values:
*
* -
*
* DirectPut
: Provider applications access the delivery stream directly.
*
*
* -
*
* KinesisStreamAsSource
: The delivery stream uses a Kinesis data stream as a source.
*
*
* @return Returns a reference to this object so that method calls can be chained together.
* @see DeliveryStreamType
*/
public DeliveryStreamDescription withDeliveryStreamType(DeliveryStreamType deliveryStreamType) {
this.deliveryStreamType = deliveryStreamType.toString();
return this;
}
/**
*
* Each time the destination is updated for a delivery stream, the version ID is changed, and the current version ID
* is required when updating the destination. This is so that the service knows it is applying the changes to the
* correct version of the delivery stream.
*
*
* @param versionId
* Each time the destination is updated for a delivery stream, the version ID is changed, and the current
* version ID is required when updating the destination. This is so that the service knows it is applying the
* changes to the correct version of the delivery stream.
*/
public void setVersionId(String versionId) {
this.versionId = versionId;
}
/**
*
* Each time the destination is updated for a delivery stream, the version ID is changed, and the current version ID
* is required when updating the destination. This is so that the service knows it is applying the changes to the
* correct version of the delivery stream.
*
*
* @return Each time the destination is updated for a delivery stream, the version ID is changed, and the current
* version ID is required when updating the destination. This is so that the service knows it is applying
* the changes to the correct version of the delivery stream.
*/
public String getVersionId() {
return this.versionId;
}
/**
*
* Each time the destination is updated for a delivery stream, the version ID is changed, and the current version ID
* is required when updating the destination. This is so that the service knows it is applying the changes to the
* correct version of the delivery stream.
*
*
* @param versionId
* Each time the destination is updated for a delivery stream, the version ID is changed, and the current
* version ID is required when updating the destination. This is so that the service knows it is applying the
* changes to the correct version of the delivery stream.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public DeliveryStreamDescription withVersionId(String versionId) {
setVersionId(versionId);
return this;
}
/**
*
* The date and time that the delivery stream was created.
*
*
* @param createTimestamp
* The date and time that the delivery stream was created.
*/
public void setCreateTimestamp(java.util.Date createTimestamp) {
this.createTimestamp = createTimestamp;
}
/**
*
* The date and time that the delivery stream was created.
*
*
* @return The date and time that the delivery stream was created.
*/
public java.util.Date getCreateTimestamp() {
return this.createTimestamp;
}
/**
*
* The date and time that the delivery stream was created.
*
*
* @param createTimestamp
* The date and time that the delivery stream was created.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public DeliveryStreamDescription withCreateTimestamp(java.util.Date createTimestamp) {
setCreateTimestamp(createTimestamp);
return this;
}
/**
*
* The date and time that the delivery stream was last updated.
*
*
* @param lastUpdateTimestamp
* The date and time that the delivery stream was last updated.
*/
public void setLastUpdateTimestamp(java.util.Date lastUpdateTimestamp) {
this.lastUpdateTimestamp = lastUpdateTimestamp;
}
/**
*
* The date and time that the delivery stream was last updated.
*
*
* @return The date and time that the delivery stream was last updated.
*/
public java.util.Date getLastUpdateTimestamp() {
return this.lastUpdateTimestamp;
}
/**
*
* The date and time that the delivery stream was last updated.
*
*
* @param lastUpdateTimestamp
* The date and time that the delivery stream was last updated.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public DeliveryStreamDescription withLastUpdateTimestamp(java.util.Date lastUpdateTimestamp) {
setLastUpdateTimestamp(lastUpdateTimestamp);
return this;
}
/**
*
* If the DeliveryStreamType
parameter is KinesisStreamAsSource
, a
* SourceDescription object describing the source Kinesis data stream.
*
*
* @param source
* If the DeliveryStreamType
parameter is KinesisStreamAsSource
, a
* SourceDescription object describing the source Kinesis data stream.
*/
public void setSource(SourceDescription source) {
this.source = source;
}
/**
*
* If the DeliveryStreamType
parameter is KinesisStreamAsSource
, a
* SourceDescription object describing the source Kinesis data stream.
*
*
* @return If the DeliveryStreamType
parameter is KinesisStreamAsSource
, a
* SourceDescription object describing the source Kinesis data stream.
*/
public SourceDescription getSource() {
return this.source;
}
/**
*
* If the DeliveryStreamType
parameter is KinesisStreamAsSource
, a
* SourceDescription object describing the source Kinesis data stream.
*
*
* @param source
* If the DeliveryStreamType
parameter is KinesisStreamAsSource
, a
* SourceDescription object describing the source Kinesis data stream.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public DeliveryStreamDescription withSource(SourceDescription source) {
setSource(source);
return this;
}
/**
*
* The destinations.
*
*
* @return The destinations.
*/
public java.util.List getDestinations() {
return destinations;
}
/**
*
* The destinations.
*
*
* @param destinations
* The destinations.
*/
public void setDestinations(java.util.Collection destinations) {
if (destinations == null) {
this.destinations = null;
return;
}
this.destinations = new java.util.ArrayList(destinations);
}
/**
*
* The destinations.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setDestinations(java.util.Collection)} or {@link #withDestinations(java.util.Collection)} if you want to
* override the existing values.
*
*
* @param destinations
* The destinations.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public DeliveryStreamDescription withDestinations(DestinationDescription... destinations) {
if (this.destinations == null) {
setDestinations(new java.util.ArrayList(destinations.length));
}
for (DestinationDescription ele : destinations) {
this.destinations.add(ele);
}
return this;
}
/**
*
* The destinations.
*
*
* @param destinations
* The destinations.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public DeliveryStreamDescription withDestinations(java.util.Collection destinations) {
setDestinations(destinations);
return this;
}
/**
*
* Indicates whether there are more destinations available to list.
*
*
* @param hasMoreDestinations
* Indicates whether there are more destinations available to list.
*/
public void setHasMoreDestinations(Boolean hasMoreDestinations) {
this.hasMoreDestinations = hasMoreDestinations;
}
/**
*
* Indicates whether there are more destinations available to list.
*
*
* @return Indicates whether there are more destinations available to list.
*/
public Boolean getHasMoreDestinations() {
return this.hasMoreDestinations;
}
/**
*
* Indicates whether there are more destinations available to list.
*
*
* @param hasMoreDestinations
* Indicates whether there are more destinations available to list.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public DeliveryStreamDescription withHasMoreDestinations(Boolean hasMoreDestinations) {
setHasMoreDestinations(hasMoreDestinations);
return this;
}
/**
*
* Indicates whether there are more destinations available to list.
*
*
* @return Indicates whether there are more destinations available to list.
*/
public Boolean isHasMoreDestinations() {
return this.hasMoreDestinations;
}
/**
* Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be
* redacted from this string using a placeholder value.
*
* @return A string representation of this object.
*
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (getDeliveryStreamName() != null)
sb.append("DeliveryStreamName: ").append(getDeliveryStreamName()).append(",");
if (getDeliveryStreamARN() != null)
sb.append("DeliveryStreamARN: ").append(getDeliveryStreamARN()).append(",");
if (getDeliveryStreamStatus() != null)
sb.append("DeliveryStreamStatus: ").append(getDeliveryStreamStatus()).append(",");
if (getFailureDescription() != null)
sb.append("FailureDescription: ").append(getFailureDescription()).append(",");
if (getDeliveryStreamEncryptionConfiguration() != null)
sb.append("DeliveryStreamEncryptionConfiguration: ").append(getDeliveryStreamEncryptionConfiguration()).append(",");
if (getDeliveryStreamType() != null)
sb.append("DeliveryStreamType: ").append(getDeliveryStreamType()).append(",");
if (getVersionId() != null)
sb.append("VersionId: ").append(getVersionId()).append(",");
if (getCreateTimestamp() != null)
sb.append("CreateTimestamp: ").append(getCreateTimestamp()).append(",");
if (getLastUpdateTimestamp() != null)
sb.append("LastUpdateTimestamp: ").append(getLastUpdateTimestamp()).append(",");
if (getSource() != null)
sb.append("Source: ").append(getSource()).append(",");
if (getDestinations() != null)
sb.append("Destinations: ").append(getDestinations()).append(",");
if (getHasMoreDestinations() != null)
sb.append("HasMoreDestinations: ").append(getHasMoreDestinations());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof DeliveryStreamDescription == false)
return false;
DeliveryStreamDescription other = (DeliveryStreamDescription) obj;
if (other.getDeliveryStreamName() == null ^ this.getDeliveryStreamName() == null)
return false;
if (other.getDeliveryStreamName() != null && other.getDeliveryStreamName().equals(this.getDeliveryStreamName()) == false)
return false;
if (other.getDeliveryStreamARN() == null ^ this.getDeliveryStreamARN() == null)
return false;
if (other.getDeliveryStreamARN() != null && other.getDeliveryStreamARN().equals(this.getDeliveryStreamARN()) == false)
return false;
if (other.getDeliveryStreamStatus() == null ^ this.getDeliveryStreamStatus() == null)
return false;
if (other.getDeliveryStreamStatus() != null && other.getDeliveryStreamStatus().equals(this.getDeliveryStreamStatus()) == false)
return false;
if (other.getFailureDescription() == null ^ this.getFailureDescription() == null)
return false;
if (other.getFailureDescription() != null && other.getFailureDescription().equals(this.getFailureDescription()) == false)
return false;
if (other.getDeliveryStreamEncryptionConfiguration() == null ^ this.getDeliveryStreamEncryptionConfiguration() == null)
return false;
if (other.getDeliveryStreamEncryptionConfiguration() != null
&& other.getDeliveryStreamEncryptionConfiguration().equals(this.getDeliveryStreamEncryptionConfiguration()) == false)
return false;
if (other.getDeliveryStreamType() == null ^ this.getDeliveryStreamType() == null)
return false;
if (other.getDeliveryStreamType() != null && other.getDeliveryStreamType().equals(this.getDeliveryStreamType()) == false)
return false;
if (other.getVersionId() == null ^ this.getVersionId() == null)
return false;
if (other.getVersionId() != null && other.getVersionId().equals(this.getVersionId()) == 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.getSource() == null ^ this.getSource() == null)
return false;
if (other.getSource() != null && other.getSource().equals(this.getSource()) == false)
return false;
if (other.getDestinations() == null ^ this.getDestinations() == null)
return false;
if (other.getDestinations() != null && other.getDestinations().equals(this.getDestinations()) == false)
return false;
if (other.getHasMoreDestinations() == null ^ this.getHasMoreDestinations() == null)
return false;
if (other.getHasMoreDestinations() != null && other.getHasMoreDestinations().equals(this.getHasMoreDestinations()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getDeliveryStreamName() == null) ? 0 : getDeliveryStreamName().hashCode());
hashCode = prime * hashCode + ((getDeliveryStreamARN() == null) ? 0 : getDeliveryStreamARN().hashCode());
hashCode = prime * hashCode + ((getDeliveryStreamStatus() == null) ? 0 : getDeliveryStreamStatus().hashCode());
hashCode = prime * hashCode + ((getFailureDescription() == null) ? 0 : getFailureDescription().hashCode());
hashCode = prime * hashCode + ((getDeliveryStreamEncryptionConfiguration() == null) ? 0 : getDeliveryStreamEncryptionConfiguration().hashCode());
hashCode = prime * hashCode + ((getDeliveryStreamType() == null) ? 0 : getDeliveryStreamType().hashCode());
hashCode = prime * hashCode + ((getVersionId() == null) ? 0 : getVersionId().hashCode());
hashCode = prime * hashCode + ((getCreateTimestamp() == null) ? 0 : getCreateTimestamp().hashCode());
hashCode = prime * hashCode + ((getLastUpdateTimestamp() == null) ? 0 : getLastUpdateTimestamp().hashCode());
hashCode = prime * hashCode + ((getSource() == null) ? 0 : getSource().hashCode());
hashCode = prime * hashCode + ((getDestinations() == null) ? 0 : getDestinations().hashCode());
hashCode = prime * hashCode + ((getHasMoreDestinations() == null) ? 0 : getHasMoreDestinations().hashCode());
return hashCode;
}
@Override
public DeliveryStreamDescription clone() {
try {
return (DeliveryStreamDescription) super.clone();
} catch (CloneNotSupportedException e) {
throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e);
}
}
@com.amazonaws.annotation.SdkInternalApi
@Override
public void marshall(ProtocolMarshaller protocolMarshaller) {
com.amazonaws.services.kinesisfirehose.model.transform.DeliveryStreamDescriptionMarshaller.getInstance().marshall(this, protocolMarshaller);
}
}