All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.kinesis.model.StreamDescription Maven / Gradle / Ivy

Go to download

The AWS SDK for Java with support for OSGi. The AWS SDK for Java provides Java APIs for building software on AWS' cost-effective, scalable, and reliable infrastructure products. The AWS Java SDK allows developers to code against APIs for all of Amazon's infrastructure web services (Amazon S3, Amazon EC2, Amazon SQS, Amazon Relational Database Service, Amazon AutoScaling, etc).

There is a newer version: 1.11.60
Show newest version
/*
 * 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.kinesis.model;

import java.io.Serializable;

/**
 * 

* Represents the output for DescribeStream. *

*/ public class StreamDescription implements Serializable, Cloneable { /** *

* The name of the stream being described. *

*/ private String streamName; /** *

* The Amazon Resource Name (ARN) for the stream being described. *

*/ private String streamARN; /** *

* The current status of the stream being described. The stream status is * one of the following states: *

*
    *
  • CREATING - The stream is being created. Amazon Kinesis * immediately returns and sets StreamStatus to * CREATING.
  • *
  • DELETING - The stream is being deleted. The specified * stream is in the DELETING state until Amazon Kinesis * completes the deletion.
  • *
  • ACTIVE - The stream exists and is ready for read and * write operations or deletion. You should perform read and write * operations only on an ACTIVE stream.
  • *
  • UPDATING - Shards in the stream are being merged or * split. Read and write operations continue to work while the stream is in * the UPDATING state.
  • *
*/ private String streamStatus; /** *

* The shards that comprise the stream. *

*/ private com.amazonaws.internal.SdkInternalList shards; /** *

* If set to true, more shards in the stream are available to * describe. *

*/ private Boolean hasMoreShards; /** *

* The current retention period, in hours. *

*/ private Integer retentionPeriodHours; /** *

* Represents the current enhanced monitoring settings of the stream. *

*/ private com.amazonaws.internal.SdkInternalList enhancedMonitoring; /** *

* The name of the stream being described. *

* * @param streamName * The name of the stream being described. */ public void setStreamName(String streamName) { this.streamName = streamName; } /** *

* The name of the stream being described. *

* * @return The name of the stream being described. */ public String getStreamName() { return this.streamName; } /** *

* The name of the stream being described. *

* * @param streamName * The name of the stream being described. * @return Returns a reference to this object so that method calls can be * chained together. */ public StreamDescription withStreamName(String streamName) { setStreamName(streamName); return this; } /** *

* The Amazon Resource Name (ARN) for the stream being described. *

* * @param streamARN * The Amazon Resource Name (ARN) for the stream being described. */ public void setStreamARN(String streamARN) { this.streamARN = streamARN; } /** *

* The Amazon Resource Name (ARN) for the stream being described. *

* * @return The Amazon Resource Name (ARN) for the stream being described. */ public String getStreamARN() { return this.streamARN; } /** *

* The Amazon Resource Name (ARN) for the stream being described. *

* * @param streamARN * The Amazon Resource Name (ARN) for the stream being described. * @return Returns a reference to this object so that method calls can be * chained together. */ public StreamDescription withStreamARN(String streamARN) { setStreamARN(streamARN); return this; } /** *

* The current status of the stream being described. The stream status is * one of the following states: *

*
    *
  • CREATING - The stream is being created. Amazon Kinesis * immediately returns and sets StreamStatus to * CREATING.
  • *
  • DELETING - The stream is being deleted. The specified * stream is in the DELETING state until Amazon Kinesis * completes the deletion.
  • *
  • ACTIVE - The stream exists and is ready for read and * write operations or deletion. You should perform read and write * operations only on an ACTIVE stream.
  • *
  • UPDATING - Shards in the stream are being merged or * split. Read and write operations continue to work while the stream is in * the UPDATING state.
  • *
* * @param streamStatus * The current status of the stream being described. The stream * status is one of the following states:

*
    *
  • CREATING - The stream is being created. Amazon * Kinesis immediately returns and sets StreamStatus to * CREATING.
  • *
  • DELETING - The stream is being deleted. The * specified stream is in the DELETING state until * Amazon Kinesis completes the deletion.
  • *
  • ACTIVE - The stream exists and is ready for read * and write operations or deletion. You should perform read and * write operations only on an ACTIVE stream.
  • *
  • UPDATING - Shards in the stream are being merged * or split. Read and write operations continue to work while the * stream is in the UPDATING state.
  • * @see StreamStatus */ public void setStreamStatus(String streamStatus) { this.streamStatus = streamStatus; } /** *

    * The current status of the stream being described. The stream status is * one of the following states: *

    *
      *
    • CREATING - The stream is being created. Amazon Kinesis * immediately returns and sets StreamStatus to * CREATING.
    • *
    • DELETING - The stream is being deleted. The specified * stream is in the DELETING state until Amazon Kinesis * completes the deletion.
    • *
    • ACTIVE - The stream exists and is ready for read and * write operations or deletion. You should perform read and write * operations only on an ACTIVE stream.
    • *
    • UPDATING - Shards in the stream are being merged or * split. Read and write operations continue to work while the stream is in * the UPDATING state.
    • *
    * * @return The current status of the stream being described. The stream * status is one of the following states:

    *
      *
    • CREATING - The stream is being created. Amazon * Kinesis immediately returns and sets StreamStatus to * CREATING.
    • *
    • DELETING - The stream is being deleted. The * specified stream is in the DELETING state until * Amazon Kinesis completes the deletion.
    • *
    • ACTIVE - The stream exists and is ready for read * and write operations or deletion. You should perform read and * write operations only on an ACTIVE stream.
    • *
    • UPDATING - Shards in the stream are being merged * or split. Read and write operations continue to work while the * stream is in the UPDATING state.
    • * @see StreamStatus */ public String getStreamStatus() { return this.streamStatus; } /** *

      * The current status of the stream being described. The stream status is * one of the following states: *

      *
        *
      • CREATING - The stream is being created. Amazon Kinesis * immediately returns and sets StreamStatus to * CREATING.
      • *
      • DELETING - The stream is being deleted. The specified * stream is in the DELETING state until Amazon Kinesis * completes the deletion.
      • *
      • ACTIVE - The stream exists and is ready for read and * write operations or deletion. You should perform read and write * operations only on an ACTIVE stream.
      • *
      • UPDATING - Shards in the stream are being merged or * split. Read and write operations continue to work while the stream is in * the UPDATING state.
      • *
      * * @param streamStatus * The current status of the stream being described. The stream * status is one of the following states:

      *
        *
      • CREATING - The stream is being created. Amazon * Kinesis immediately returns and sets StreamStatus to * CREATING.
      • *
      • DELETING - The stream is being deleted. The * specified stream is in the DELETING state until * Amazon Kinesis completes the deletion.
      • *
      • ACTIVE - The stream exists and is ready for read * and write operations or deletion. You should perform read and * write operations only on an ACTIVE stream.
      • *
      • UPDATING - Shards in the stream are being merged * or split. Read and write operations continue to work while the * stream is in the UPDATING state.
      • * @return Returns a reference to this object so that method calls can be * chained together. * @see StreamStatus */ public StreamDescription withStreamStatus(String streamStatus) { setStreamStatus(streamStatus); return this; } /** *

        * The current status of the stream being described. The stream status is * one of the following states: *

        *
          *
        • CREATING - The stream is being created. Amazon Kinesis * immediately returns and sets StreamStatus to * CREATING.
        • *
        • DELETING - The stream is being deleted. The specified * stream is in the DELETING state until Amazon Kinesis * completes the deletion.
        • *
        • ACTIVE - The stream exists and is ready for read and * write operations or deletion. You should perform read and write * operations only on an ACTIVE stream.
        • *
        • UPDATING - Shards in the stream are being merged or * split. Read and write operations continue to work while the stream is in * the UPDATING state.
        • *
        * * @param streamStatus * The current status of the stream being described. The stream * status is one of the following states:

        *
          *
        • CREATING - The stream is being created. Amazon * Kinesis immediately returns and sets StreamStatus to * CREATING.
        • *
        • DELETING - The stream is being deleted. The * specified stream is in the DELETING state until * Amazon Kinesis completes the deletion.
        • *
        • ACTIVE - The stream exists and is ready for read * and write operations or deletion. You should perform read and * write operations only on an ACTIVE stream.
        • *
        • UPDATING - Shards in the stream are being merged * or split. Read and write operations continue to work while the * stream is in the UPDATING state.
        • * @see StreamStatus */ public void setStreamStatus(StreamStatus streamStatus) { this.streamStatus = streamStatus.toString(); } /** *

          * The current status of the stream being described. The stream status is * one of the following states: *

          *
            *
          • CREATING - The stream is being created. Amazon Kinesis * immediately returns and sets StreamStatus to * CREATING.
          • *
          • DELETING - The stream is being deleted. The specified * stream is in the DELETING state until Amazon Kinesis * completes the deletion.
          • *
          • ACTIVE - The stream exists and is ready for read and * write operations or deletion. You should perform read and write * operations only on an ACTIVE stream.
          • *
          • UPDATING - Shards in the stream are being merged or * split. Read and write operations continue to work while the stream is in * the UPDATING state.
          • *
          * * @param streamStatus * The current status of the stream being described. The stream * status is one of the following states:

          *
            *
          • CREATING - The stream is being created. Amazon * Kinesis immediately returns and sets StreamStatus to * CREATING.
          • *
          • DELETING - The stream is being deleted. The * specified stream is in the DELETING state until * Amazon Kinesis completes the deletion.
          • *
          • ACTIVE - The stream exists and is ready for read * and write operations or deletion. You should perform read and * write operations only on an ACTIVE stream.
          • *
          • UPDATING - Shards in the stream are being merged * or split. Read and write operations continue to work while the * stream is in the UPDATING state.
          • * @return Returns a reference to this object so that method calls can be * chained together. * @see StreamStatus */ public StreamDescription withStreamStatus(StreamStatus streamStatus) { setStreamStatus(streamStatus); return this; } /** *

            * The shards that comprise the stream. *

            * * @return The shards that comprise the stream. */ public java.util.List getShards() { if (shards == null) { shards = new com.amazonaws.internal.SdkInternalList(); } return shards; } /** *

            * The shards that comprise the stream. *

            * * @param shards * The shards that comprise the stream. */ public void setShards(java.util.Collection shards) { if (shards == null) { this.shards = null; return; } this.shards = new com.amazonaws.internal.SdkInternalList(shards); } /** *

            * The shards that comprise the stream. *

            *

            * NOTE: This method appends the values to the existing list (if * any). Use {@link #setShards(java.util.Collection)} or * {@link #withShards(java.util.Collection)} if you want to override the * existing values. *

            * * @param shards * The shards that comprise the stream. * @return Returns a reference to this object so that method calls can be * chained together. */ public StreamDescription withShards(Shard... shards) { if (this.shards == null) { setShards(new com.amazonaws.internal.SdkInternalList( shards.length)); } for (Shard ele : shards) { this.shards.add(ele); } return this; } /** *

            * The shards that comprise the stream. *

            * * @param shards * The shards that comprise the stream. * @return Returns a reference to this object so that method calls can be * chained together. */ public StreamDescription withShards(java.util.Collection shards) { setShards(shards); return this; } /** *

            * If set to true, more shards in the stream are available to * describe. *

            * * @param hasMoreShards * If set to true, more shards in the stream are * available to describe. */ public void setHasMoreShards(Boolean hasMoreShards) { this.hasMoreShards = hasMoreShards; } /** *

            * If set to true, more shards in the stream are available to * describe. *

            * * @return If set to true, more shards in the stream are * available to describe. */ public Boolean getHasMoreShards() { return this.hasMoreShards; } /** *

            * If set to true, more shards in the stream are available to * describe. *

            * * @param hasMoreShards * If set to true, more shards in the stream are * available to describe. * @return Returns a reference to this object so that method calls can be * chained together. */ public StreamDescription withHasMoreShards(Boolean hasMoreShards) { setHasMoreShards(hasMoreShards); return this; } /** *

            * If set to true, more shards in the stream are available to * describe. *

            * * @return If set to true, more shards in the stream are * available to describe. */ public Boolean isHasMoreShards() { return this.hasMoreShards; } /** *

            * The current retention period, in hours. *

            * * @param retentionPeriodHours * The current retention period, in hours. */ public void setRetentionPeriodHours(Integer retentionPeriodHours) { this.retentionPeriodHours = retentionPeriodHours; } /** *

            * The current retention period, in hours. *

            * * @return The current retention period, in hours. */ public Integer getRetentionPeriodHours() { return this.retentionPeriodHours; } /** *

            * The current retention period, in hours. *

            * * @param retentionPeriodHours * The current retention period, in hours. * @return Returns a reference to this object so that method calls can be * chained together. */ public StreamDescription withRetentionPeriodHours( Integer retentionPeriodHours) { setRetentionPeriodHours(retentionPeriodHours); return this; } /** *

            * Represents the current enhanced monitoring settings of the stream. *

            * * @return Represents the current enhanced monitoring settings of the * stream. */ public java.util.List getEnhancedMonitoring() { if (enhancedMonitoring == null) { enhancedMonitoring = new com.amazonaws.internal.SdkInternalList(); } return enhancedMonitoring; } /** *

            * Represents the current enhanced monitoring settings of the stream. *

            * * @param enhancedMonitoring * Represents the current enhanced monitoring settings of the stream. */ public void setEnhancedMonitoring( java.util.Collection enhancedMonitoring) { if (enhancedMonitoring == null) { this.enhancedMonitoring = null; return; } this.enhancedMonitoring = new com.amazonaws.internal.SdkInternalList( enhancedMonitoring); } /** *

            * Represents the current enhanced monitoring settings of the stream. *

            *

            * NOTE: This method appends the values to the existing list (if * any). Use {@link #setEnhancedMonitoring(java.util.Collection)} or * {@link #withEnhancedMonitoring(java.util.Collection)} if you want to * override the existing values. *

            * * @param enhancedMonitoring * Represents the current enhanced monitoring settings of the stream. * @return Returns a reference to this object so that method calls can be * chained together. */ public StreamDescription withEnhancedMonitoring( EnhancedMetrics... enhancedMonitoring) { if (this.enhancedMonitoring == null) { setEnhancedMonitoring(new com.amazonaws.internal.SdkInternalList( enhancedMonitoring.length)); } for (EnhancedMetrics ele : enhancedMonitoring) { this.enhancedMonitoring.add(ele); } return this; } /** *

            * Represents the current enhanced monitoring settings of the stream. *

            * * @param enhancedMonitoring * Represents the current enhanced monitoring settings of the stream. * @return Returns a reference to this object so that method calls can be * chained together. */ public StreamDescription withEnhancedMonitoring( java.util.Collection enhancedMonitoring) { setEnhancedMonitoring(enhancedMonitoring); 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 (getStreamName() != null) sb.append("StreamName: " + getStreamName() + ","); if (getStreamARN() != null) sb.append("StreamARN: " + getStreamARN() + ","); if (getStreamStatus() != null) sb.append("StreamStatus: " + getStreamStatus() + ","); if (getShards() != null) sb.append("Shards: " + getShards() + ","); if (getHasMoreShards() != null) sb.append("HasMoreShards: " + getHasMoreShards() + ","); if (getRetentionPeriodHours() != null) sb.append("RetentionPeriodHours: " + getRetentionPeriodHours() + ","); if (getEnhancedMonitoring() != null) sb.append("EnhancedMonitoring: " + getEnhancedMonitoring()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof StreamDescription == false) return false; StreamDescription other = (StreamDescription) obj; if (other.getStreamName() == null ^ this.getStreamName() == null) return false; if (other.getStreamName() != null && other.getStreamName().equals(this.getStreamName()) == false) return false; if (other.getStreamARN() == null ^ this.getStreamARN() == null) return false; if (other.getStreamARN() != null && other.getStreamARN().equals(this.getStreamARN()) == false) return false; if (other.getStreamStatus() == null ^ this.getStreamStatus() == null) return false; if (other.getStreamStatus() != null && other.getStreamStatus().equals(this.getStreamStatus()) == false) return false; if (other.getShards() == null ^ this.getShards() == null) return false; if (other.getShards() != null && other.getShards().equals(this.getShards()) == false) return false; if (other.getHasMoreShards() == null ^ this.getHasMoreShards() == null) return false; if (other.getHasMoreShards() != null && other.getHasMoreShards().equals(this.getHasMoreShards()) == false) return false; if (other.getRetentionPeriodHours() == null ^ this.getRetentionPeriodHours() == null) return false; if (other.getRetentionPeriodHours() != null && other.getRetentionPeriodHours().equals( this.getRetentionPeriodHours()) == false) return false; if (other.getEnhancedMonitoring() == null ^ this.getEnhancedMonitoring() == null) return false; if (other.getEnhancedMonitoring() != null && other.getEnhancedMonitoring().equals( this.getEnhancedMonitoring()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getStreamName() == null) ? 0 : getStreamName().hashCode()); hashCode = prime * hashCode + ((getStreamARN() == null) ? 0 : getStreamARN().hashCode()); hashCode = prime * hashCode + ((getStreamStatus() == null) ? 0 : getStreamStatus() .hashCode()); hashCode = prime * hashCode + ((getShards() == null) ? 0 : getShards().hashCode()); hashCode = prime * hashCode + ((getHasMoreShards() == null) ? 0 : getHasMoreShards() .hashCode()); hashCode = prime * hashCode + ((getRetentionPeriodHours() == null) ? 0 : getRetentionPeriodHours().hashCode()); hashCode = prime * hashCode + ((getEnhancedMonitoring() == null) ? 0 : getEnhancedMonitoring().hashCode()); return hashCode; } @Override public StreamDescription clone() { try { return (StreamDescription) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException( "Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy