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

The container path, mount options, and size of the tmpfs * mount.

This object isn't applicable to jobs that are running on * Fargate resources.

See Also:

AWS API * Reference

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

The absolute file path in the container where the tmpfs volume * is mounted.

*/ inline const Aws::String& GetContainerPath() const{ return m_containerPath; } /** *

The absolute file path in the container where the tmpfs volume * is mounted.

*/ inline bool ContainerPathHasBeenSet() const { return m_containerPathHasBeenSet; } /** *

The absolute file path in the container where the tmpfs volume * is mounted.

*/ inline void SetContainerPath(const Aws::String& value) { m_containerPathHasBeenSet = true; m_containerPath = value; } /** *

The absolute file path in the container where the tmpfs volume * is mounted.

*/ inline void SetContainerPath(Aws::String&& value) { m_containerPathHasBeenSet = true; m_containerPath = std::move(value); } /** *

The absolute file path in the container where the tmpfs volume * is mounted.

*/ inline void SetContainerPath(const char* value) { m_containerPathHasBeenSet = true; m_containerPath.assign(value); } /** *

The absolute file path in the container where the tmpfs volume * is mounted.

*/ inline Tmpfs& WithContainerPath(const Aws::String& value) { SetContainerPath(value); return *this;} /** *

The absolute file path in the container where the tmpfs volume * is mounted.

*/ inline Tmpfs& WithContainerPath(Aws::String&& value) { SetContainerPath(std::move(value)); return *this;} /** *

The absolute file path in the container where the tmpfs volume * is mounted.

*/ inline Tmpfs& WithContainerPath(const char* value) { SetContainerPath(value); return *this;} /** *

The size (in MiB) of the tmpfs volume.

*/ inline int GetSize() const{ return m_size; } /** *

The size (in MiB) of the tmpfs volume.

*/ inline bool SizeHasBeenSet() const { return m_sizeHasBeenSet; } /** *

The size (in MiB) of the tmpfs volume.

*/ inline void SetSize(int value) { m_sizeHasBeenSet = true; m_size = value; } /** *

The size (in MiB) of the tmpfs volume.

*/ inline Tmpfs& WithSize(int value) { SetSize(value); return *this;} /** *

The list of tmpfs volume mount options.

Valid values: * "defaults" | "ro" | "rw" | * "suid" | "nosuid" | "dev" | * "nodev" | "exec" | "noexec" | * "sync" | "async" | "dirsync" | * "remount" | "mand" | "nomand" | * "atime" | "noatime" | "diratime" | * "nodiratime" | "bind" | "rbind" | "unbindable" | * "runbindable" | "private" | "rprivate" | "shared" | "rshared" | "slave" | * "rslave" | "relatime" | "norelatime" | * "strictatime" | "nostrictatime" | "mode" * | "uid" | "gid" | "nr_inodes" | * "nr_blocks" | "mpol"

*/ inline const Aws::Vector& GetMountOptions() const{ return m_mountOptions; } /** *

The list of tmpfs volume mount options.

Valid values: * "defaults" | "ro" | "rw" | * "suid" | "nosuid" | "dev" | * "nodev" | "exec" | "noexec" | * "sync" | "async" | "dirsync" | * "remount" | "mand" | "nomand" | * "atime" | "noatime" | "diratime" | * "nodiratime" | "bind" | "rbind" | "unbindable" | * "runbindable" | "private" | "rprivate" | "shared" | "rshared" | "slave" | * "rslave" | "relatime" | "norelatime" | * "strictatime" | "nostrictatime" | "mode" * | "uid" | "gid" | "nr_inodes" | * "nr_blocks" | "mpol"

*/ inline bool MountOptionsHasBeenSet() const { return m_mountOptionsHasBeenSet; } /** *

The list of tmpfs volume mount options.

Valid values: * "defaults" | "ro" | "rw" | * "suid" | "nosuid" | "dev" | * "nodev" | "exec" | "noexec" | * "sync" | "async" | "dirsync" | * "remount" | "mand" | "nomand" | * "atime" | "noatime" | "diratime" | * "nodiratime" | "bind" | "rbind" | "unbindable" | * "runbindable" | "private" | "rprivate" | "shared" | "rshared" | "slave" | * "rslave" | "relatime" | "norelatime" | * "strictatime" | "nostrictatime" | "mode" * | "uid" | "gid" | "nr_inodes" | * "nr_blocks" | "mpol"

*/ inline void SetMountOptions(const Aws::Vector& value) { m_mountOptionsHasBeenSet = true; m_mountOptions = value; } /** *

The list of tmpfs volume mount options.

Valid values: * "defaults" | "ro" | "rw" | * "suid" | "nosuid" | "dev" | * "nodev" | "exec" | "noexec" | * "sync" | "async" | "dirsync" | * "remount" | "mand" | "nomand" | * "atime" | "noatime" | "diratime" | * "nodiratime" | "bind" | "rbind" | "unbindable" | * "runbindable" | "private" | "rprivate" | "shared" | "rshared" | "slave" | * "rslave" | "relatime" | "norelatime" | * "strictatime" | "nostrictatime" | "mode" * | "uid" | "gid" | "nr_inodes" | * "nr_blocks" | "mpol"

*/ inline void SetMountOptions(Aws::Vector&& value) { m_mountOptionsHasBeenSet = true; m_mountOptions = std::move(value); } /** *

The list of tmpfs volume mount options.

Valid values: * "defaults" | "ro" | "rw" | * "suid" | "nosuid" | "dev" | * "nodev" | "exec" | "noexec" | * "sync" | "async" | "dirsync" | * "remount" | "mand" | "nomand" | * "atime" | "noatime" | "diratime" | * "nodiratime" | "bind" | "rbind" | "unbindable" | * "runbindable" | "private" | "rprivate" | "shared" | "rshared" | "slave" | * "rslave" | "relatime" | "norelatime" | * "strictatime" | "nostrictatime" | "mode" * | "uid" | "gid" | "nr_inodes" | * "nr_blocks" | "mpol"

*/ inline Tmpfs& WithMountOptions(const Aws::Vector& value) { SetMountOptions(value); return *this;} /** *

The list of tmpfs volume mount options.

Valid values: * "defaults" | "ro" | "rw" | * "suid" | "nosuid" | "dev" | * "nodev" | "exec" | "noexec" | * "sync" | "async" | "dirsync" | * "remount" | "mand" | "nomand" | * "atime" | "noatime" | "diratime" | * "nodiratime" | "bind" | "rbind" | "unbindable" | * "runbindable" | "private" | "rprivate" | "shared" | "rshared" | "slave" | * "rslave" | "relatime" | "norelatime" | * "strictatime" | "nostrictatime" | "mode" * | "uid" | "gid" | "nr_inodes" | * "nr_blocks" | "mpol"

*/ inline Tmpfs& WithMountOptions(Aws::Vector&& value) { SetMountOptions(std::move(value)); return *this;} /** *

The list of tmpfs volume mount options.

Valid values: * "defaults" | "ro" | "rw" | * "suid" | "nosuid" | "dev" | * "nodev" | "exec" | "noexec" | * "sync" | "async" | "dirsync" | * "remount" | "mand" | "nomand" | * "atime" | "noatime" | "diratime" | * "nodiratime" | "bind" | "rbind" | "unbindable" | * "runbindable" | "private" | "rprivate" | "shared" | "rshared" | "slave" | * "rslave" | "relatime" | "norelatime" | * "strictatime" | "nostrictatime" | "mode" * | "uid" | "gid" | "nr_inodes" | * "nr_blocks" | "mpol"

*/ inline Tmpfs& AddMountOptions(const Aws::String& value) { m_mountOptionsHasBeenSet = true; m_mountOptions.push_back(value); return *this; } /** *

The list of tmpfs volume mount options.

Valid values: * "defaults" | "ro" | "rw" | * "suid" | "nosuid" | "dev" | * "nodev" | "exec" | "noexec" | * "sync" | "async" | "dirsync" | * "remount" | "mand" | "nomand" | * "atime" | "noatime" | "diratime" | * "nodiratime" | "bind" | "rbind" | "unbindable" | * "runbindable" | "private" | "rprivate" | "shared" | "rshared" | "slave" | * "rslave" | "relatime" | "norelatime" | * "strictatime" | "nostrictatime" | "mode" * | "uid" | "gid" | "nr_inodes" | * "nr_blocks" | "mpol"

*/ inline Tmpfs& AddMountOptions(Aws::String&& value) { m_mountOptionsHasBeenSet = true; m_mountOptions.push_back(std::move(value)); return *this; } /** *

The list of tmpfs volume mount options.

Valid values: * "defaults" | "ro" | "rw" | * "suid" | "nosuid" | "dev" | * "nodev" | "exec" | "noexec" | * "sync" | "async" | "dirsync" | * "remount" | "mand" | "nomand" | * "atime" | "noatime" | "diratime" | * "nodiratime" | "bind" | "rbind" | "unbindable" | * "runbindable" | "private" | "rprivate" | "shared" | "rshared" | "slave" | * "rslave" | "relatime" | "norelatime" | * "strictatime" | "nostrictatime" | "mode" * | "uid" | "gid" | "nr_inodes" | * "nr_blocks" | "mpol"

*/ inline Tmpfs& AddMountOptions(const char* value) { m_mountOptionsHasBeenSet = true; m_mountOptions.push_back(value); return *this; } private: Aws::String m_containerPath; bool m_containerPathHasBeenSet = false; int m_size; bool m_sizeHasBeenSet = false; Aws::Vector m_mountOptions; bool m_mountOptionsHasBeenSet = false; }; } // namespace Model } // namespace Batch } // namespace Aws