/* * Copyright 2018-2023 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: *

* */ 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: *

* * * @param deliveryStreamType * The delivery stream type. This can be one of the following values:

*