AWS SDK for C++  0.12.9
AWS SDK for C++
StreamDescription.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
22 
23 namespace Aws
24 {
25 namespace Utils
26 {
27 namespace Json
28 {
29  class JsonValue;
30 } // namespace Json
31 } // namespace Utils
32 namespace Kinesis
33 {
34 namespace Model
35 {
36 
41  {
42  public:
45  StreamDescription& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
46  Aws::Utils::Json::JsonValue Jsonize() const;
47 
51  inline const Aws::String& GetStreamName() const{ return m_streamName; }
52 
56  inline void SetStreamName(const Aws::String& value) { m_streamNameHasBeenSet = true; m_streamName = value; }
57 
61  inline void SetStreamName(Aws::String&& value) { m_streamNameHasBeenSet = true; m_streamName = value; }
62 
66  inline void SetStreamName(const char* value) { m_streamNameHasBeenSet = true; m_streamName.assign(value); }
67 
71  inline StreamDescription& WithStreamName(const Aws::String& value) { SetStreamName(value); return *this;}
72 
76  inline StreamDescription& WithStreamName(Aws::String&& value) { SetStreamName(value); return *this;}
77 
81  inline StreamDescription& WithStreamName(const char* value) { SetStreamName(value); return *this;}
82 
86  inline const Aws::String& GetStreamARN() const{ return m_streamARN; }
87 
91  inline void SetStreamARN(const Aws::String& value) { m_streamARNHasBeenSet = true; m_streamARN = value; }
92 
96  inline void SetStreamARN(Aws::String&& value) { m_streamARNHasBeenSet = true; m_streamARN = value; }
97 
101  inline void SetStreamARN(const char* value) { m_streamARNHasBeenSet = true; m_streamARN.assign(value); }
102 
106  inline StreamDescription& WithStreamARN(const Aws::String& value) { SetStreamARN(value); return *this;}
107 
111  inline StreamDescription& WithStreamARN(Aws::String&& value) { SetStreamARN(value); return *this;}
112 
116  inline StreamDescription& WithStreamARN(const char* value) { SetStreamARN(value); return *this;}
117 
131  inline const StreamStatus& GetStreamStatus() const{ return m_streamStatus; }
132 
146  inline void SetStreamStatus(const StreamStatus& value) { m_streamStatusHasBeenSet = true; m_streamStatus = value; }
147 
161  inline void SetStreamStatus(StreamStatus&& value) { m_streamStatusHasBeenSet = true; m_streamStatus = value; }
162 
176  inline StreamDescription& WithStreamStatus(const StreamStatus& value) { SetStreamStatus(value); return *this;}
177 
191  inline StreamDescription& WithStreamStatus(StreamStatus&& value) { SetStreamStatus(value); return *this;}
192 
196  inline const Aws::Vector<Shard>& GetShards() const{ return m_shards; }
197 
201  inline void SetShards(const Aws::Vector<Shard>& value) { m_shardsHasBeenSet = true; m_shards = value; }
202 
206  inline void SetShards(Aws::Vector<Shard>&& value) { m_shardsHasBeenSet = true; m_shards = value; }
207 
211  inline StreamDescription& WithShards(const Aws::Vector<Shard>& value) { SetShards(value); return *this;}
212 
216  inline StreamDescription& WithShards(Aws::Vector<Shard>&& value) { SetShards(value); return *this;}
217 
221  inline StreamDescription& AddShards(const Shard& value) { m_shardsHasBeenSet = true; m_shards.push_back(value); return *this; }
222 
226  inline StreamDescription& AddShards(Shard&& value) { m_shardsHasBeenSet = true; m_shards.push_back(value); return *this; }
227 
232  inline bool GetHasMoreShards() const{ return m_hasMoreShards; }
233 
238  inline void SetHasMoreShards(bool value) { m_hasMoreShardsHasBeenSet = true; m_hasMoreShards = value; }
239 
244  inline StreamDescription& WithHasMoreShards(bool value) { SetHasMoreShards(value); return *this;}
245 
249  inline long GetRetentionPeriodHours() const{ return m_retentionPeriodHours; }
250 
254  inline void SetRetentionPeriodHours(long value) { m_retentionPeriodHoursHasBeenSet = true; m_retentionPeriodHours = value; }
255 
259  inline StreamDescription& WithRetentionPeriodHours(long value) { SetRetentionPeriodHours(value); return *this;}
260 
264  inline const Aws::Vector<EnhancedMetrics>& GetEnhancedMonitoring() const{ return m_enhancedMonitoring; }
265 
269  inline void SetEnhancedMonitoring(const Aws::Vector<EnhancedMetrics>& value) { m_enhancedMonitoringHasBeenSet = true; m_enhancedMonitoring = value; }
270 
274  inline void SetEnhancedMonitoring(Aws::Vector<EnhancedMetrics>&& value) { m_enhancedMonitoringHasBeenSet = true; m_enhancedMonitoring = value; }
275 
279  inline StreamDescription& WithEnhancedMonitoring(const Aws::Vector<EnhancedMetrics>& value) { SetEnhancedMonitoring(value); return *this;}
280 
284  inline StreamDescription& WithEnhancedMonitoring(Aws::Vector<EnhancedMetrics>&& value) { SetEnhancedMonitoring(value); return *this;}
285 
289  inline StreamDescription& AddEnhancedMonitoring(const EnhancedMetrics& value) { m_enhancedMonitoringHasBeenSet = true; m_enhancedMonitoring.push_back(value); return *this; }
290 
294  inline StreamDescription& AddEnhancedMonitoring(EnhancedMetrics&& value) { m_enhancedMonitoringHasBeenSet = true; m_enhancedMonitoring.push_back(value); return *this; }
295 
296  private:
297  Aws::String m_streamName;
298  bool m_streamNameHasBeenSet;
299  Aws::String m_streamARN;
300  bool m_streamARNHasBeenSet;
301  StreamStatus m_streamStatus;
302  bool m_streamStatusHasBeenSet;
303  Aws::Vector<Shard> m_shards;
304  bool m_shardsHasBeenSet;
305  bool m_hasMoreShards;
306  bool m_hasMoreShardsHasBeenSet;
307  long m_retentionPeriodHours;
308  bool m_retentionPeriodHoursHasBeenSet;
309  Aws::Vector<EnhancedMetrics> m_enhancedMonitoring;
310  bool m_enhancedMonitoringHasBeenSet;
311  };
312 
313 } // namespace Model
314 } // namespace Kinesis
315 } // namespace Aws
void SetEnhancedMonitoring(const Aws::Vector< EnhancedMetrics > &value)
StreamDescription & WithShards(const Aws::Vector< Shard > &value)
StreamDescription & AddEnhancedMonitoring(EnhancedMetrics &&value)
StreamDescription & WithStreamName(Aws::String &&value)
StreamDescription & WithRetentionPeriodHours(long value)
StreamDescription & WithStreamARN(const char *value)
StreamDescription & WithStreamName(const Aws::String &value)
void SetStreamARN(const Aws::String &value)
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
void SetStreamARN(Aws::String &&value)
StreamDescription & WithEnhancedMonitoring(const Aws::Vector< EnhancedMetrics > &value)
StreamDescription & WithEnhancedMonitoring(Aws::Vector< EnhancedMetrics > &&value)
void SetStreamName(Aws::String &&value)
const Aws::String & GetStreamName() const
const Aws::String & GetStreamARN() const
StreamDescription & WithStreamARN(Aws::String &&value)
void SetStreamStatus(StreamStatus &&value)
void SetStreamStatus(const StreamStatus &value)
StreamDescription & WithShards(Aws::Vector< Shard > &&value)
void SetShards(Aws::Vector< Shard > &&value)
const Aws::Vector< EnhancedMetrics > & GetEnhancedMonitoring() const
void SetStreamName(const Aws::String &value)
StreamDescription & AddShards(Shard &&value)
const StreamStatus & GetStreamStatus() const
StreamDescription & WithStreamName(const char *value)
#define AWS_KINESIS_API
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
StreamDescription & WithStreamARN(const Aws::String &value)
StreamDescription & WithHasMoreShards(bool value)
const Aws::Vector< Shard > & GetShards() const
StreamDescription & AddEnhancedMonitoring(const EnhancedMetrics &value)
StreamDescription & WithStreamStatus(const StreamStatus &value)
StreamDescription & WithStreamStatus(StreamStatus &&value)
void SetShards(const Aws::Vector< Shard > &value)
StreamDescription & AddShards(const Shard &value)
JSON (JavaScript Object Notation).
void SetEnhancedMonitoring(Aws::Vector< EnhancedMetrics > &&value)