AWS SDK for C++

AWS SDK for C++ Version 1.11.816

Loading...
Searching...
No Matches
Volume.h
1
6#pragma once
7#include <aws/batch/Batch_EXPORTS.h>
8#include <aws/batch/model/EFSVolumeConfiguration.h>
9#include <aws/batch/model/Host.h>
10#include <aws/batch/model/S3FilesVolumeConfiguration.h>
11#include <aws/core/utils/memory/stl/AWSString.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace Batch {
23namespace Model {
24
31class Volume {
32 public:
33 AWS_BATCH_API Volume() = default;
34 AWS_BATCH_API Volume(Aws::Utils::Json::JsonView jsonValue);
35 AWS_BATCH_API Volume& operator=(Aws::Utils::Json::JsonView jsonValue);
36 AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
48 inline const Host& GetHost() const { return m_host; }
49 inline bool HostHasBeenSet() const { return m_hostHasBeenSet; }
50 template <typename HostT = Host>
51 void SetHost(HostT&& value) {
52 m_hostHasBeenSet = true;
53 m_host = std::forward<HostT>(value);
54 }
55 template <typename HostT = Host>
56 Volume& WithHost(HostT&& value) {
57 SetHost(std::forward<HostT>(value));
58 return *this;
59 }
61
63
69 inline const Aws::String& GetName() const { return m_name; }
70 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
71 template <typename NameT = Aws::String>
72 void SetName(NameT&& value) {
73 m_nameHasBeenSet = true;
74 m_name = std::forward<NameT>(value);
75 }
76 template <typename NameT = Aws::String>
77 Volume& WithName(NameT&& value) {
78 SetName(std::forward<NameT>(value));
79 return *this;
80 }
82
84
89 inline const EFSVolumeConfiguration& GetEfsVolumeConfiguration() const { return m_efsVolumeConfiguration; }
90 inline bool EfsVolumeConfigurationHasBeenSet() const { return m_efsVolumeConfigurationHasBeenSet; }
91 template <typename EfsVolumeConfigurationT = EFSVolumeConfiguration>
92 void SetEfsVolumeConfiguration(EfsVolumeConfigurationT&& value) {
93 m_efsVolumeConfigurationHasBeenSet = true;
94 m_efsVolumeConfiguration = std::forward<EfsVolumeConfigurationT>(value);
95 }
96 template <typename EfsVolumeConfigurationT = EFSVolumeConfiguration>
97 Volume& WithEfsVolumeConfiguration(EfsVolumeConfigurationT&& value) {
98 SetEfsVolumeConfiguration(std::forward<EfsVolumeConfigurationT>(value));
99 return *this;
100 }
102
104
108 inline const S3FilesVolumeConfiguration& GetS3filesVolumeConfiguration() const { return m_s3filesVolumeConfiguration; }
109 inline bool S3filesVolumeConfigurationHasBeenSet() const { return m_s3filesVolumeConfigurationHasBeenSet; }
110 template <typename S3filesVolumeConfigurationT = S3FilesVolumeConfiguration>
111 void SetS3filesVolumeConfiguration(S3filesVolumeConfigurationT&& value) {
112 m_s3filesVolumeConfigurationHasBeenSet = true;
113 m_s3filesVolumeConfiguration = std::forward<S3filesVolumeConfigurationT>(value);
114 }
115 template <typename S3filesVolumeConfigurationT = S3FilesVolumeConfiguration>
116 Volume& WithS3filesVolumeConfiguration(S3filesVolumeConfigurationT&& value) {
117 SetS3filesVolumeConfiguration(std::forward<S3filesVolumeConfigurationT>(value));
118 return *this;
119 }
121 private:
122 Host m_host;
123
124 Aws::String m_name;
125
126 EFSVolumeConfiguration m_efsVolumeConfiguration;
127
128 S3FilesVolumeConfiguration m_s3filesVolumeConfiguration;
129 bool m_hostHasBeenSet = false;
130 bool m_nameHasBeenSet = false;
131 bool m_efsVolumeConfigurationHasBeenSet = false;
132 bool m_s3filesVolumeConfigurationHasBeenSet = false;
133};
134
135} // namespace Model
136} // namespace Batch
137} // namespace Aws
void SetEfsVolumeConfiguration(EfsVolumeConfigurationT &&value)
Definition Volume.h:92
Volume & WithEfsVolumeConfiguration(EfsVolumeConfigurationT &&value)
Definition Volume.h:97
const Host & GetHost() const
Definition Volume.h:48
Volume & WithHost(HostT &&value)
Definition Volume.h:56
void SetName(NameT &&value)
Definition Volume.h:72
bool HostHasBeenSet() const
Definition Volume.h:49
void SetHost(HostT &&value)
Definition Volume.h:51
Volume & WithS3filesVolumeConfiguration(S3filesVolumeConfigurationT &&value)
Definition Volume.h:116
const S3FilesVolumeConfiguration & GetS3filesVolumeConfiguration() const
Definition Volume.h:108
const Aws::String & GetName() const
Definition Volume.h:69
const EFSVolumeConfiguration & GetEfsVolumeConfiguration() const
Definition Volume.h:89
Volume & WithName(NameT &&value)
Definition Volume.h:77
bool NameHasBeenSet() const
Definition Volume.h:70
bool S3filesVolumeConfigurationHasBeenSet() const
Definition Volume.h:109
AWS_BATCH_API Volume & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetS3filesVolumeConfiguration(S3filesVolumeConfigurationT &&value)
Definition Volume.h:111
bool EfsVolumeConfigurationHasBeenSet() const
Definition Volume.h:90
AWS_BATCH_API Volume()=default
AWS_BATCH_API Volume(Aws::Utils::Json::JsonView jsonValue)
AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue