1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/connect/Connect_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/connect/model/EncryptionConfig.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace Utils 15 { 16 namespace Json 17 { 18 class JsonValue; 19 class JsonView; 20 } // namespace Json 21 } // namespace Utils 22 namespace Connect 23 { 24 namespace Model 25 { 26 27 /** 28 * <p>Configuration information of a Kinesis video stream.</p><p><h3>See Also:</h3> 29 * <a 30 * href="http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/KinesisVideoStreamConfig">AWS 31 * API Reference</a></p> 32 */ 33 class AWS_CONNECT_API KinesisVideoStreamConfig 34 { 35 public: 36 KinesisVideoStreamConfig(); 37 KinesisVideoStreamConfig(Aws::Utils::Json::JsonView jsonValue); 38 KinesisVideoStreamConfig& operator=(Aws::Utils::Json::JsonView jsonValue); 39 Aws::Utils::Json::JsonValue Jsonize() const; 40 41 42 /** 43 * <p>The prefix of the video stream.</p> 44 */ GetPrefix()45 inline const Aws::String& GetPrefix() const{ return m_prefix; } 46 47 /** 48 * <p>The prefix of the video stream.</p> 49 */ PrefixHasBeenSet()50 inline bool PrefixHasBeenSet() const { return m_prefixHasBeenSet; } 51 52 /** 53 * <p>The prefix of the video stream.</p> 54 */ SetPrefix(const Aws::String & value)55 inline void SetPrefix(const Aws::String& value) { m_prefixHasBeenSet = true; m_prefix = value; } 56 57 /** 58 * <p>The prefix of the video stream.</p> 59 */ SetPrefix(Aws::String && value)60 inline void SetPrefix(Aws::String&& value) { m_prefixHasBeenSet = true; m_prefix = std::move(value); } 61 62 /** 63 * <p>The prefix of the video stream.</p> 64 */ SetPrefix(const char * value)65 inline void SetPrefix(const char* value) { m_prefixHasBeenSet = true; m_prefix.assign(value); } 66 67 /** 68 * <p>The prefix of the video stream.</p> 69 */ WithPrefix(const Aws::String & value)70 inline KinesisVideoStreamConfig& WithPrefix(const Aws::String& value) { SetPrefix(value); return *this;} 71 72 /** 73 * <p>The prefix of the video stream.</p> 74 */ WithPrefix(Aws::String && value)75 inline KinesisVideoStreamConfig& WithPrefix(Aws::String&& value) { SetPrefix(std::move(value)); return *this;} 76 77 /** 78 * <p>The prefix of the video stream.</p> 79 */ WithPrefix(const char * value)80 inline KinesisVideoStreamConfig& WithPrefix(const char* value) { SetPrefix(value); return *this;} 81 82 83 /** 84 * <p>The number of hours data is retained in the stream. Kinesis Video Streams 85 * retains the data in a data store that is associated with the stream.</p> <p>The 86 * default value is 0, indicating that the stream does not persist data.</p> 87 */ GetRetentionPeriodHours()88 inline int GetRetentionPeriodHours() const{ return m_retentionPeriodHours; } 89 90 /** 91 * <p>The number of hours data is retained in the stream. Kinesis Video Streams 92 * retains the data in a data store that is associated with the stream.</p> <p>The 93 * default value is 0, indicating that the stream does not persist data.</p> 94 */ RetentionPeriodHoursHasBeenSet()95 inline bool RetentionPeriodHoursHasBeenSet() const { return m_retentionPeriodHoursHasBeenSet; } 96 97 /** 98 * <p>The number of hours data is retained in the stream. Kinesis Video Streams 99 * retains the data in a data store that is associated with the stream.</p> <p>The 100 * default value is 0, indicating that the stream does not persist data.</p> 101 */ SetRetentionPeriodHours(int value)102 inline void SetRetentionPeriodHours(int value) { m_retentionPeriodHoursHasBeenSet = true; m_retentionPeriodHours = value; } 103 104 /** 105 * <p>The number of hours data is retained in the stream. Kinesis Video Streams 106 * retains the data in a data store that is associated with the stream.</p> <p>The 107 * default value is 0, indicating that the stream does not persist data.</p> 108 */ WithRetentionPeriodHours(int value)109 inline KinesisVideoStreamConfig& WithRetentionPeriodHours(int value) { SetRetentionPeriodHours(value); return *this;} 110 111 112 /** 113 * <p>The encryption configuration.</p> 114 */ GetEncryptionConfig()115 inline const EncryptionConfig& GetEncryptionConfig() const{ return m_encryptionConfig; } 116 117 /** 118 * <p>The encryption configuration.</p> 119 */ EncryptionConfigHasBeenSet()120 inline bool EncryptionConfigHasBeenSet() const { return m_encryptionConfigHasBeenSet; } 121 122 /** 123 * <p>The encryption configuration.</p> 124 */ SetEncryptionConfig(const EncryptionConfig & value)125 inline void SetEncryptionConfig(const EncryptionConfig& value) { m_encryptionConfigHasBeenSet = true; m_encryptionConfig = value; } 126 127 /** 128 * <p>The encryption configuration.</p> 129 */ SetEncryptionConfig(EncryptionConfig && value)130 inline void SetEncryptionConfig(EncryptionConfig&& value) { m_encryptionConfigHasBeenSet = true; m_encryptionConfig = std::move(value); } 131 132 /** 133 * <p>The encryption configuration.</p> 134 */ WithEncryptionConfig(const EncryptionConfig & value)135 inline KinesisVideoStreamConfig& WithEncryptionConfig(const EncryptionConfig& value) { SetEncryptionConfig(value); return *this;} 136 137 /** 138 * <p>The encryption configuration.</p> 139 */ WithEncryptionConfig(EncryptionConfig && value)140 inline KinesisVideoStreamConfig& WithEncryptionConfig(EncryptionConfig&& value) { SetEncryptionConfig(std::move(value)); return *this;} 141 142 private: 143 144 Aws::String m_prefix; 145 bool m_prefixHasBeenSet; 146 147 int m_retentionPeriodHours; 148 bool m_retentionPeriodHoursHasBeenSet; 149 150 EncryptionConfig m_encryptionConfig; 151 bool m_encryptionConfigHasBeenSet; 152 }; 153 154 } // namespace Model 155 } // namespace Connect 156 } // namespace Aws 157