/** * 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 imagebuilder { namespace Model { /** *

A container encapsulates the runtime environment for an * application.

See Also:

AWS * API Reference

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

Containers and container images are Region-specific. This is the Region * context for the container.

*/ inline const Aws::String& GetRegion() const{ return m_region; } /** *

Containers and container images are Region-specific. This is the Region * context for the container.

*/ inline bool RegionHasBeenSet() const { return m_regionHasBeenSet; } /** *

Containers and container images are Region-specific. This is the Region * context for the container.

*/ inline void SetRegion(const Aws::String& value) { m_regionHasBeenSet = true; m_region = value; } /** *

Containers and container images are Region-specific. This is the Region * context for the container.

*/ inline void SetRegion(Aws::String&& value) { m_regionHasBeenSet = true; m_region = std::move(value); } /** *

Containers and container images are Region-specific. This is the Region * context for the container.

*/ inline void SetRegion(const char* value) { m_regionHasBeenSet = true; m_region.assign(value); } /** *

Containers and container images are Region-specific. This is the Region * context for the container.

*/ inline Container& WithRegion(const Aws::String& value) { SetRegion(value); return *this;} /** *

Containers and container images are Region-specific. This is the Region * context for the container.

*/ inline Container& WithRegion(Aws::String&& value) { SetRegion(std::move(value)); return *this;} /** *

Containers and container images are Region-specific. This is the Region * context for the container.

*/ inline Container& WithRegion(const char* value) { SetRegion(value); return *this;} /** *

A list of URIs for containers created in the context Region.

*/ inline const Aws::Vector& GetImageUris() const{ return m_imageUris; } /** *

A list of URIs for containers created in the context Region.

*/ inline bool ImageUrisHasBeenSet() const { return m_imageUrisHasBeenSet; } /** *

A list of URIs for containers created in the context Region.

*/ inline void SetImageUris(const Aws::Vector& value) { m_imageUrisHasBeenSet = true; m_imageUris = value; } /** *

A list of URIs for containers created in the context Region.

*/ inline void SetImageUris(Aws::Vector&& value) { m_imageUrisHasBeenSet = true; m_imageUris = std::move(value); } /** *

A list of URIs for containers created in the context Region.

*/ inline Container& WithImageUris(const Aws::Vector& value) { SetImageUris(value); return *this;} /** *

A list of URIs for containers created in the context Region.

*/ inline Container& WithImageUris(Aws::Vector&& value) { SetImageUris(std::move(value)); return *this;} /** *

A list of URIs for containers created in the context Region.

*/ inline Container& AddImageUris(const Aws::String& value) { m_imageUrisHasBeenSet = true; m_imageUris.push_back(value); return *this; } /** *

A list of URIs for containers created in the context Region.

*/ inline Container& AddImageUris(Aws::String&& value) { m_imageUrisHasBeenSet = true; m_imageUris.push_back(std::move(value)); return *this; } /** *

A list of URIs for containers created in the context Region.

*/ inline Container& AddImageUris(const char* value) { m_imageUrisHasBeenSet = true; m_imageUris.push_back(value); return *this; } private: Aws::String m_region; bool m_regionHasBeenSet = false; Aws::Vector m_imageUris; bool m_imageUrisHasBeenSet = false; }; } // namespace Model } // namespace imagebuilder } // namespace Aws