/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The storage configuration for the instance.See Also:
AWS
* API Reference
The existing association identifier that uniquely identifies the resource * type and storage config for the given instance ID.
*/ inline const Aws::String& GetAssociationId() const{ return m_associationId; } /** *The existing association identifier that uniquely identifies the resource * type and storage config for the given instance ID.
*/ inline bool AssociationIdHasBeenSet() const { return m_associationIdHasBeenSet; } /** *The existing association identifier that uniquely identifies the resource * type and storage config for the given instance ID.
*/ inline void SetAssociationId(const Aws::String& value) { m_associationIdHasBeenSet = true; m_associationId = value; } /** *The existing association identifier that uniquely identifies the resource * type and storage config for the given instance ID.
*/ inline void SetAssociationId(Aws::String&& value) { m_associationIdHasBeenSet = true; m_associationId = std::move(value); } /** *The existing association identifier that uniquely identifies the resource * type and storage config for the given instance ID.
*/ inline void SetAssociationId(const char* value) { m_associationIdHasBeenSet = true; m_associationId.assign(value); } /** *The existing association identifier that uniquely identifies the resource * type and storage config for the given instance ID.
*/ inline InstanceStorageConfig& WithAssociationId(const Aws::String& value) { SetAssociationId(value); return *this;} /** *The existing association identifier that uniquely identifies the resource * type and storage config for the given instance ID.
*/ inline InstanceStorageConfig& WithAssociationId(Aws::String&& value) { SetAssociationId(std::move(value)); return *this;} /** *The existing association identifier that uniquely identifies the resource * type and storage config for the given instance ID.
*/ inline InstanceStorageConfig& WithAssociationId(const char* value) { SetAssociationId(value); return *this;} /** *A valid storage type.
*/ inline const StorageType& GetStorageType() const{ return m_storageType; } /** *A valid storage type.
*/ inline bool StorageTypeHasBeenSet() const { return m_storageTypeHasBeenSet; } /** *A valid storage type.
*/ inline void SetStorageType(const StorageType& value) { m_storageTypeHasBeenSet = true; m_storageType = value; } /** *A valid storage type.
*/ inline void SetStorageType(StorageType&& value) { m_storageTypeHasBeenSet = true; m_storageType = std::move(value); } /** *A valid storage type.
*/ inline InstanceStorageConfig& WithStorageType(const StorageType& value) { SetStorageType(value); return *this;} /** *A valid storage type.
*/ inline InstanceStorageConfig& WithStorageType(StorageType&& value) { SetStorageType(std::move(value)); return *this;} /** *The S3 bucket configuration.
*/ inline const S3Config& GetS3Config() const{ return m_s3Config; } /** *The S3 bucket configuration.
*/ inline bool S3ConfigHasBeenSet() const { return m_s3ConfigHasBeenSet; } /** *The S3 bucket configuration.
*/ inline void SetS3Config(const S3Config& value) { m_s3ConfigHasBeenSet = true; m_s3Config = value; } /** *The S3 bucket configuration.
*/ inline void SetS3Config(S3Config&& value) { m_s3ConfigHasBeenSet = true; m_s3Config = std::move(value); } /** *The S3 bucket configuration.
*/ inline InstanceStorageConfig& WithS3Config(const S3Config& value) { SetS3Config(value); return *this;} /** *The S3 bucket configuration.
*/ inline InstanceStorageConfig& WithS3Config(S3Config&& value) { SetS3Config(std::move(value)); return *this;} /** *The configuration of the Kinesis video stream.
*/ inline const KinesisVideoStreamConfig& GetKinesisVideoStreamConfig() const{ return m_kinesisVideoStreamConfig; } /** *The configuration of the Kinesis video stream.
*/ inline bool KinesisVideoStreamConfigHasBeenSet() const { return m_kinesisVideoStreamConfigHasBeenSet; } /** *The configuration of the Kinesis video stream.
*/ inline void SetKinesisVideoStreamConfig(const KinesisVideoStreamConfig& value) { m_kinesisVideoStreamConfigHasBeenSet = true; m_kinesisVideoStreamConfig = value; } /** *The configuration of the Kinesis video stream.
*/ inline void SetKinesisVideoStreamConfig(KinesisVideoStreamConfig&& value) { m_kinesisVideoStreamConfigHasBeenSet = true; m_kinesisVideoStreamConfig = std::move(value); } /** *The configuration of the Kinesis video stream.
*/ inline InstanceStorageConfig& WithKinesisVideoStreamConfig(const KinesisVideoStreamConfig& value) { SetKinesisVideoStreamConfig(value); return *this;} /** *The configuration of the Kinesis video stream.
*/ inline InstanceStorageConfig& WithKinesisVideoStreamConfig(KinesisVideoStreamConfig&& value) { SetKinesisVideoStreamConfig(std::move(value)); return *this;} /** *The configuration of the Kinesis data stream.
*/ inline const KinesisStreamConfig& GetKinesisStreamConfig() const{ return m_kinesisStreamConfig; } /** *The configuration of the Kinesis data stream.
*/ inline bool KinesisStreamConfigHasBeenSet() const { return m_kinesisStreamConfigHasBeenSet; } /** *The configuration of the Kinesis data stream.
*/ inline void SetKinesisStreamConfig(const KinesisStreamConfig& value) { m_kinesisStreamConfigHasBeenSet = true; m_kinesisStreamConfig = value; } /** *The configuration of the Kinesis data stream.
*/ inline void SetKinesisStreamConfig(KinesisStreamConfig&& value) { m_kinesisStreamConfigHasBeenSet = true; m_kinesisStreamConfig = std::move(value); } /** *The configuration of the Kinesis data stream.
*/ inline InstanceStorageConfig& WithKinesisStreamConfig(const KinesisStreamConfig& value) { SetKinesisStreamConfig(value); return *this;} /** *The configuration of the Kinesis data stream.
*/ inline InstanceStorageConfig& WithKinesisStreamConfig(KinesisStreamConfig&& value) { SetKinesisStreamConfig(std::move(value)); return *this;} /** *The configuration of the Kinesis Firehose delivery stream.
*/ inline const KinesisFirehoseConfig& GetKinesisFirehoseConfig() const{ return m_kinesisFirehoseConfig; } /** *The configuration of the Kinesis Firehose delivery stream.
*/ inline bool KinesisFirehoseConfigHasBeenSet() const { return m_kinesisFirehoseConfigHasBeenSet; } /** *The configuration of the Kinesis Firehose delivery stream.
*/ inline void SetKinesisFirehoseConfig(const KinesisFirehoseConfig& value) { m_kinesisFirehoseConfigHasBeenSet = true; m_kinesisFirehoseConfig = value; } /** *The configuration of the Kinesis Firehose delivery stream.
*/ inline void SetKinesisFirehoseConfig(KinesisFirehoseConfig&& value) { m_kinesisFirehoseConfigHasBeenSet = true; m_kinesisFirehoseConfig = std::move(value); } /** *The configuration of the Kinesis Firehose delivery stream.
*/ inline InstanceStorageConfig& WithKinesisFirehoseConfig(const KinesisFirehoseConfig& value) { SetKinesisFirehoseConfig(value); return *this;} /** *The configuration of the Kinesis Firehose delivery stream.
*/ inline InstanceStorageConfig& WithKinesisFirehoseConfig(KinesisFirehoseConfig&& value) { SetKinesisFirehoseConfig(std::move(value)); return *this;} private: Aws::String m_associationId; bool m_associationIdHasBeenSet = false; StorageType m_storageType; bool m_storageTypeHasBeenSet = false; S3Config m_s3Config; bool m_s3ConfigHasBeenSet = false; KinesisVideoStreamConfig m_kinesisVideoStreamConfig; bool m_kinesisVideoStreamConfigHasBeenSet = false; KinesisStreamConfig m_kinesisStreamConfig; bool m_kinesisStreamConfigHasBeenSet = false; KinesisFirehoseConfig m_kinesisFirehoseConfig; bool m_kinesisFirehoseConfigHasBeenSet = false; }; } // namespace Model } // namespace Connect } // namespace Aws