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

Describes a container deployment configuration of an Amazon Lightsail * container service.

A deployment specifies the settings, such as the ports * and launch command, of containers that are deployed to your container * service.

See Also:

AWS * API Reference

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

An object that describes the configuration for the containers of the * deployment.

*/ inline const Aws::Map& GetContainers() const{ return m_containers; } /** *

An object that describes the configuration for the containers of the * deployment.

*/ inline bool ContainersHasBeenSet() const { return m_containersHasBeenSet; } /** *

An object that describes the configuration for the containers of the * deployment.

*/ inline void SetContainers(const Aws::Map& value) { m_containersHasBeenSet = true; m_containers = value; } /** *

An object that describes the configuration for the containers of the * deployment.

*/ inline void SetContainers(Aws::Map&& value) { m_containersHasBeenSet = true; m_containers = std::move(value); } /** *

An object that describes the configuration for the containers of the * deployment.

*/ inline ContainerServiceDeploymentRequest& WithContainers(const Aws::Map& value) { SetContainers(value); return *this;} /** *

An object that describes the configuration for the containers of the * deployment.

*/ inline ContainerServiceDeploymentRequest& WithContainers(Aws::Map&& value) { SetContainers(std::move(value)); return *this;} /** *

An object that describes the configuration for the containers of the * deployment.

*/ inline ContainerServiceDeploymentRequest& AddContainers(const Aws::String& key, const Container& value) { m_containersHasBeenSet = true; m_containers.emplace(key, value); return *this; } /** *

An object that describes the configuration for the containers of the * deployment.

*/ inline ContainerServiceDeploymentRequest& AddContainers(Aws::String&& key, const Container& value) { m_containersHasBeenSet = true; m_containers.emplace(std::move(key), value); return *this; } /** *

An object that describes the configuration for the containers of the * deployment.

*/ inline ContainerServiceDeploymentRequest& AddContainers(const Aws::String& key, Container&& value) { m_containersHasBeenSet = true; m_containers.emplace(key, std::move(value)); return *this; } /** *

An object that describes the configuration for the containers of the * deployment.

*/ inline ContainerServiceDeploymentRequest& AddContainers(Aws::String&& key, Container&& value) { m_containersHasBeenSet = true; m_containers.emplace(std::move(key), std::move(value)); return *this; } /** *

An object that describes the configuration for the containers of the * deployment.

*/ inline ContainerServiceDeploymentRequest& AddContainers(const char* key, Container&& value) { m_containersHasBeenSet = true; m_containers.emplace(key, std::move(value)); return *this; } /** *

An object that describes the configuration for the containers of the * deployment.

*/ inline ContainerServiceDeploymentRequest& AddContainers(const char* key, const Container& value) { m_containersHasBeenSet = true; m_containers.emplace(key, value); return *this; } /** *

An object that describes the endpoint of the deployment.

*/ inline const EndpointRequest& GetPublicEndpoint() const{ return m_publicEndpoint; } /** *

An object that describes the endpoint of the deployment.

*/ inline bool PublicEndpointHasBeenSet() const { return m_publicEndpointHasBeenSet; } /** *

An object that describes the endpoint of the deployment.

*/ inline void SetPublicEndpoint(const EndpointRequest& value) { m_publicEndpointHasBeenSet = true; m_publicEndpoint = value; } /** *

An object that describes the endpoint of the deployment.

*/ inline void SetPublicEndpoint(EndpointRequest&& value) { m_publicEndpointHasBeenSet = true; m_publicEndpoint = std::move(value); } /** *

An object that describes the endpoint of the deployment.

*/ inline ContainerServiceDeploymentRequest& WithPublicEndpoint(const EndpointRequest& value) { SetPublicEndpoint(value); return *this;} /** *

An object that describes the endpoint of the deployment.

*/ inline ContainerServiceDeploymentRequest& WithPublicEndpoint(EndpointRequest&& value) { SetPublicEndpoint(std::move(value)); return *this;} private: Aws::Map m_containers; bool m_containersHasBeenSet = false; EndpointRequest m_publicEndpoint; bool m_publicEndpointHasBeenSet = false; }; } // namespace Model } // namespace Lightsail } // namespace Aws