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

An object that contains overrides for the Kubernetes pod properties of a * job.

See Also:

AWS * API Reference

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

The overrides for the container that's used on the Amazon EKS pod.

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

The overrides for the container that's used on the Amazon EKS pod.

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

The overrides for the container that's used on the Amazon EKS pod.

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

The overrides for the container that's used on the Amazon EKS pod.

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

The overrides for the container that's used on the Amazon EKS pod.

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

The overrides for the container that's used on the Amazon EKS pod.

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

The overrides for the container that's used on the Amazon EKS pod.

*/ inline EksPodPropertiesOverride& AddContainers(const EksContainerOverride& value) { m_containersHasBeenSet = true; m_containers.push_back(value); return *this; } /** *

The overrides for the container that's used on the Amazon EKS pod.

*/ inline EksPodPropertiesOverride& AddContainers(EksContainerOverride&& value) { m_containersHasBeenSet = true; m_containers.push_back(std::move(value)); return *this; } /** *

Metadata about the overrides for the container that's used on the Amazon EKS * pod.

*/ inline const EksMetadata& GetMetadata() const{ return m_metadata; } /** *

Metadata about the overrides for the container that's used on the Amazon EKS * pod.

*/ inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; } /** *

Metadata about the overrides for the container that's used on the Amazon EKS * pod.

*/ inline void SetMetadata(const EksMetadata& value) { m_metadataHasBeenSet = true; m_metadata = value; } /** *

Metadata about the overrides for the container that's used on the Amazon EKS * pod.

*/ inline void SetMetadata(EksMetadata&& value) { m_metadataHasBeenSet = true; m_metadata = std::move(value); } /** *

Metadata about the overrides for the container that's used on the Amazon EKS * pod.

*/ inline EksPodPropertiesOverride& WithMetadata(const EksMetadata& value) { SetMetadata(value); return *this;} /** *

Metadata about the overrides for the container that's used on the Amazon EKS * pod.

*/ inline EksPodPropertiesOverride& WithMetadata(EksMetadata&& value) { SetMetadata(std::move(value)); return *this;} private: Aws::Vector m_containers; bool m_containersHasBeenSet = false; EksMetadata m_metadata; bool m_metadataHasBeenSet = false; }; } // namespace Model } // namespace Batch } // namespace Aws