/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace ChimeSDKMediaPipelines { namespace Model { /** *

The configuration settings for a stream.

See Also:

AWS * API Reference

*/ class StreamConfiguration { public: AWS_CHIMESDKMEDIAPIPELINES_API StreamConfiguration(); AWS_CHIMESDKMEDIAPIPELINES_API StreamConfiguration(Aws::Utils::Json::JsonView jsonValue); AWS_CHIMESDKMEDIAPIPELINES_API StreamConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_CHIMESDKMEDIAPIPELINES_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The ARN of the stream.

*/ inline const Aws::String& GetStreamArn() const{ return m_streamArn; } /** *

The ARN of the stream.

*/ inline bool StreamArnHasBeenSet() const { return m_streamArnHasBeenSet; } /** *

The ARN of the stream.

*/ inline void SetStreamArn(const Aws::String& value) { m_streamArnHasBeenSet = true; m_streamArn = value; } /** *

The ARN of the stream.

*/ inline void SetStreamArn(Aws::String&& value) { m_streamArnHasBeenSet = true; m_streamArn = std::move(value); } /** *

The ARN of the stream.

*/ inline void SetStreamArn(const char* value) { m_streamArnHasBeenSet = true; m_streamArn.assign(value); } /** *

The ARN of the stream.

*/ inline StreamConfiguration& WithStreamArn(const Aws::String& value) { SetStreamArn(value); return *this;} /** *

The ARN of the stream.

*/ inline StreamConfiguration& WithStreamArn(Aws::String&& value) { SetStreamArn(std::move(value)); return *this;} /** *

The ARN of the stream.

*/ inline StreamConfiguration& WithStreamArn(const char* value) { SetStreamArn(value); return *this;} /** *

The unique identifier of the fragment to begin processing.

*/ inline const Aws::String& GetFragmentNumber() const{ return m_fragmentNumber; } /** *

The unique identifier of the fragment to begin processing.

*/ inline bool FragmentNumberHasBeenSet() const { return m_fragmentNumberHasBeenSet; } /** *

The unique identifier of the fragment to begin processing.

*/ inline void SetFragmentNumber(const Aws::String& value) { m_fragmentNumberHasBeenSet = true; m_fragmentNumber = value; } /** *

The unique identifier of the fragment to begin processing.

*/ inline void SetFragmentNumber(Aws::String&& value) { m_fragmentNumberHasBeenSet = true; m_fragmentNumber = std::move(value); } /** *

The unique identifier of the fragment to begin processing.

*/ inline void SetFragmentNumber(const char* value) { m_fragmentNumberHasBeenSet = true; m_fragmentNumber.assign(value); } /** *

The unique identifier of the fragment to begin processing.

*/ inline StreamConfiguration& WithFragmentNumber(const Aws::String& value) { SetFragmentNumber(value); return *this;} /** *

The unique identifier of the fragment to begin processing.

*/ inline StreamConfiguration& WithFragmentNumber(Aws::String&& value) { SetFragmentNumber(std::move(value)); return *this;} /** *

The unique identifier of the fragment to begin processing.

*/ inline StreamConfiguration& WithFragmentNumber(const char* value) { SetFragmentNumber(value); return *this;} /** *

The streaming channel definition in the stream configuration.

*/ inline const StreamChannelDefinition& GetStreamChannelDefinition() const{ return m_streamChannelDefinition; } /** *

The streaming channel definition in the stream configuration.

*/ inline bool StreamChannelDefinitionHasBeenSet() const { return m_streamChannelDefinitionHasBeenSet; } /** *

The streaming channel definition in the stream configuration.

*/ inline void SetStreamChannelDefinition(const StreamChannelDefinition& value) { m_streamChannelDefinitionHasBeenSet = true; m_streamChannelDefinition = value; } /** *

The streaming channel definition in the stream configuration.

*/ inline void SetStreamChannelDefinition(StreamChannelDefinition&& value) { m_streamChannelDefinitionHasBeenSet = true; m_streamChannelDefinition = std::move(value); } /** *

The streaming channel definition in the stream configuration.

*/ inline StreamConfiguration& WithStreamChannelDefinition(const StreamChannelDefinition& value) { SetStreamChannelDefinition(value); return *this;} /** *

The streaming channel definition in the stream configuration.

*/ inline StreamConfiguration& WithStreamChannelDefinition(StreamChannelDefinition&& value) { SetStreamChannelDefinition(std::move(value)); return *this;} private: Aws::String m_streamArn; bool m_streamArnHasBeenSet = false; Aws::String m_fragmentNumber; bool m_fragmentNumberHasBeenSet = false; StreamChannelDefinition m_streamChannelDefinition; bool m_streamChannelDefinitionHasBeenSet = false; }; } // namespace Model } // namespace ChimeSDKMediaPipelines } // namespace Aws