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

Specifies the configuration of a Kubernetes emptyDir volume. An * emptyDir volume is first created when a pod is assigned to a node. * It exists as long as that pod is running on that node. The emptyDir * volume is initially empty. All containers in the pod can read and write the * files in the emptyDir volume. However, the emptyDir * volume can be mounted at the same or different paths in each container. When a * pod is removed from a node for any reason, the data in the emptyDir * is deleted permanently. For more information, see emptyDir * in the Kubernetes documentation.

See Also:

AWS * API Reference

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

The medium to store the volume. The default value is an empty string, which * uses the storage of the node.

""

(Default) Use * the disk storage of the node.

"Memory"

Use the * tmpfs volume that's backed by the RAM of the node. Contents of the * volume are lost when the node reboots, and any storage on the volume counts * against the container's memory limit.

*/ inline const Aws::String& GetMedium() const{ return m_medium; } /** *

The medium to store the volume. The default value is an empty string, which * uses the storage of the node.

""

(Default) Use * the disk storage of the node.

"Memory"

Use the * tmpfs volume that's backed by the RAM of the node. Contents of the * volume are lost when the node reboots, and any storage on the volume counts * against the container's memory limit.

*/ inline bool MediumHasBeenSet() const { return m_mediumHasBeenSet; } /** *

The medium to store the volume. The default value is an empty string, which * uses the storage of the node.

""

(Default) Use * the disk storage of the node.

"Memory"

Use the * tmpfs volume that's backed by the RAM of the node. Contents of the * volume are lost when the node reboots, and any storage on the volume counts * against the container's memory limit.

*/ inline void SetMedium(const Aws::String& value) { m_mediumHasBeenSet = true; m_medium = value; } /** *

The medium to store the volume. The default value is an empty string, which * uses the storage of the node.

""

(Default) Use * the disk storage of the node.

"Memory"

Use the * tmpfs volume that's backed by the RAM of the node. Contents of the * volume are lost when the node reboots, and any storage on the volume counts * against the container's memory limit.

*/ inline void SetMedium(Aws::String&& value) { m_mediumHasBeenSet = true; m_medium = std::move(value); } /** *

The medium to store the volume. The default value is an empty string, which * uses the storage of the node.

""

(Default) Use * the disk storage of the node.

"Memory"

Use the * tmpfs volume that's backed by the RAM of the node. Contents of the * volume are lost when the node reboots, and any storage on the volume counts * against the container's memory limit.

*/ inline void SetMedium(const char* value) { m_mediumHasBeenSet = true; m_medium.assign(value); } /** *

The medium to store the volume. The default value is an empty string, which * uses the storage of the node.

""

(Default) Use * the disk storage of the node.

"Memory"

Use the * tmpfs volume that's backed by the RAM of the node. Contents of the * volume are lost when the node reboots, and any storage on the volume counts * against the container's memory limit.

*/ inline EksEmptyDir& WithMedium(const Aws::String& value) { SetMedium(value); return *this;} /** *

The medium to store the volume. The default value is an empty string, which * uses the storage of the node.

""

(Default) Use * the disk storage of the node.

"Memory"

Use the * tmpfs volume that's backed by the RAM of the node. Contents of the * volume are lost when the node reboots, and any storage on the volume counts * against the container's memory limit.

*/ inline EksEmptyDir& WithMedium(Aws::String&& value) { SetMedium(std::move(value)); return *this;} /** *

The medium to store the volume. The default value is an empty string, which * uses the storage of the node.

""

(Default) Use * the disk storage of the node.

"Memory"

Use the * tmpfs volume that's backed by the RAM of the node. Contents of the * volume are lost when the node reboots, and any storage on the volume counts * against the container's memory limit.

*/ inline EksEmptyDir& WithMedium(const char* value) { SetMedium(value); return *this;} /** *

The maximum size of the volume. By default, there's no maximum size * defined.

*/ inline const Aws::String& GetSizeLimit() const{ return m_sizeLimit; } /** *

The maximum size of the volume. By default, there's no maximum size * defined.

*/ inline bool SizeLimitHasBeenSet() const { return m_sizeLimitHasBeenSet; } /** *

The maximum size of the volume. By default, there's no maximum size * defined.

*/ inline void SetSizeLimit(const Aws::String& value) { m_sizeLimitHasBeenSet = true; m_sizeLimit = value; } /** *

The maximum size of the volume. By default, there's no maximum size * defined.

*/ inline void SetSizeLimit(Aws::String&& value) { m_sizeLimitHasBeenSet = true; m_sizeLimit = std::move(value); } /** *

The maximum size of the volume. By default, there's no maximum size * defined.

*/ inline void SetSizeLimit(const char* value) { m_sizeLimitHasBeenSet = true; m_sizeLimit.assign(value); } /** *

The maximum size of the volume. By default, there's no maximum size * defined.

*/ inline EksEmptyDir& WithSizeLimit(const Aws::String& value) { SetSizeLimit(value); return *this;} /** *

The maximum size of the volume. By default, there's no maximum size * defined.

*/ inline EksEmptyDir& WithSizeLimit(Aws::String&& value) { SetSizeLimit(std::move(value)); return *this;} /** *

The maximum size of the volume. By default, there's no maximum size * defined.

*/ inline EksEmptyDir& WithSizeLimit(const char* value) { SetSizeLimit(value); return *this;} private: Aws::String m_medium; bool m_mediumHasBeenSet = false; Aws::String m_sizeLimit; bool m_sizeLimitHasBeenSet = false; }; } // namespace Model } // namespace Batch } // namespace Aws