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

Information about the source where the association execution details are * stored.

See Also:

AWS * API Reference

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

The ID of the output source, for example the URL of an S3 bucket.

*/ inline const Aws::String& GetOutputSourceId() const{ return m_outputSourceId; } /** *

The ID of the output source, for example the URL of an S3 bucket.

*/ inline bool OutputSourceIdHasBeenSet() const { return m_outputSourceIdHasBeenSet; } /** *

The ID of the output source, for example the URL of an S3 bucket.

*/ inline void SetOutputSourceId(const Aws::String& value) { m_outputSourceIdHasBeenSet = true; m_outputSourceId = value; } /** *

The ID of the output source, for example the URL of an S3 bucket.

*/ inline void SetOutputSourceId(Aws::String&& value) { m_outputSourceIdHasBeenSet = true; m_outputSourceId = std::move(value); } /** *

The ID of the output source, for example the URL of an S3 bucket.

*/ inline void SetOutputSourceId(const char* value) { m_outputSourceIdHasBeenSet = true; m_outputSourceId.assign(value); } /** *

The ID of the output source, for example the URL of an S3 bucket.

*/ inline OutputSource& WithOutputSourceId(const Aws::String& value) { SetOutputSourceId(value); return *this;} /** *

The ID of the output source, for example the URL of an S3 bucket.

*/ inline OutputSource& WithOutputSourceId(Aws::String&& value) { SetOutputSourceId(std::move(value)); return *this;} /** *

The ID of the output source, for example the URL of an S3 bucket.

*/ inline OutputSource& WithOutputSourceId(const char* value) { SetOutputSourceId(value); return *this;} /** *

The type of source where the association execution details are stored, for * example, Amazon S3.

*/ inline const Aws::String& GetOutputSourceType() const{ return m_outputSourceType; } /** *

The type of source where the association execution details are stored, for * example, Amazon S3.

*/ inline bool OutputSourceTypeHasBeenSet() const { return m_outputSourceTypeHasBeenSet; } /** *

The type of source where the association execution details are stored, for * example, Amazon S3.

*/ inline void SetOutputSourceType(const Aws::String& value) { m_outputSourceTypeHasBeenSet = true; m_outputSourceType = value; } /** *

The type of source where the association execution details are stored, for * example, Amazon S3.

*/ inline void SetOutputSourceType(Aws::String&& value) { m_outputSourceTypeHasBeenSet = true; m_outputSourceType = std::move(value); } /** *

The type of source where the association execution details are stored, for * example, Amazon S3.

*/ inline void SetOutputSourceType(const char* value) { m_outputSourceTypeHasBeenSet = true; m_outputSourceType.assign(value); } /** *

The type of source where the association execution details are stored, for * example, Amazon S3.

*/ inline OutputSource& WithOutputSourceType(const Aws::String& value) { SetOutputSourceType(value); return *this;} /** *

The type of source where the association execution details are stored, for * example, Amazon S3.

*/ inline OutputSource& WithOutputSourceType(Aws::String&& value) { SetOutputSourceType(std::move(value)); return *this;} /** *

The type of source where the association execution details are stored, for * example, Amazon S3.

*/ inline OutputSource& WithOutputSourceType(const char* value) { SetOutputSourceType(value); return *this;} private: Aws::String m_outputSourceId; bool m_outputSourceIdHasBeenSet = false; Aws::String m_outputSourceType; bool m_outputSourceTypeHasBeenSet = false; }; } // namespace Model } // namespace SSM } // namespace Aws