AWS SDK for C++

AWS SDK for C++ Version 1.11.717

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/core/utils/memory/stl/AWSString.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace Batch {
22namespace Model {
23
30class Volume {
31 public:
32 AWS_BATCH_API Volume() = default;
33 AWS_BATCH_API Volume(Aws::Utils::Json::JsonView jsonValue);
34 AWS_BATCH_API Volume& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
47 inline const Host& GetHost() const { return m_host; }
48 inline bool HostHasBeenSet() const { return m_hostHasBeenSet; }
49 template <typename HostT = Host>
50 void SetHost(HostT&& value) {
51 m_hostHasBeenSet = true;
52 m_host = std::forward<HostT>(value);
53 }
54 template <typename HostT = Host>
55 Volume& WithHost(HostT&& value) {
56 SetHost(std::forward<HostT>(value));
57 return *this;
58 }
60
62
68 inline const Aws::String& GetName() const { return m_name; }
69 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
70 template <typename NameT = Aws::String>
71 void SetName(NameT&& value) {
72 m_nameHasBeenSet = true;
73 m_name = std::forward<NameT>(value);
74 }
75 template <typename NameT = Aws::String>
76 Volume& WithName(NameT&& value) {
77 SetName(std::forward<NameT>(value));
78 return *this;
79 }
81
83
88 inline const EFSVolumeConfiguration& GetEfsVolumeConfiguration() const { return m_efsVolumeConfiguration; }
89 inline bool EfsVolumeConfigurationHasBeenSet() const { return m_efsVolumeConfigurationHasBeenSet; }
90 template <typename EfsVolumeConfigurationT = EFSVolumeConfiguration>
91 void SetEfsVolumeConfiguration(EfsVolumeConfigurationT&& value) {
92 m_efsVolumeConfigurationHasBeenSet = true;
93 m_efsVolumeConfiguration = std::forward<EfsVolumeConfigurationT>(value);
94 }
95 template <typename EfsVolumeConfigurationT = EFSVolumeConfiguration>
96 Volume& WithEfsVolumeConfiguration(EfsVolumeConfigurationT&& value) {
97 SetEfsVolumeConfiguration(std::forward<EfsVolumeConfigurationT>(value));
98 return *this;
99 }
101 private:
102 Host m_host;
103
104 Aws::String m_name;
105
106 EFSVolumeConfiguration m_efsVolumeConfiguration;
107 bool m_hostHasBeenSet = false;
108 bool m_nameHasBeenSet = false;
109 bool m_efsVolumeConfigurationHasBeenSet = false;
110};
111
112} // namespace Model
113} // namespace Batch
114} // namespace Aws
void SetEfsVolumeConfiguration(EfsVolumeConfigurationT &&value)
Definition Volume.h:91
Volume & WithEfsVolumeConfiguration(EfsVolumeConfigurationT &&value)
Definition Volume.h:96
const Host & GetHost() const
Definition Volume.h:47
Volume & WithHost(HostT &&value)
Definition Volume.h:55
void SetName(NameT &&value)
Definition Volume.h:71
bool HostHasBeenSet() const
Definition Volume.h:48
void SetHost(HostT &&value)
Definition Volume.h:50
const Aws::String & GetName() const
Definition Volume.h:68
const EFSVolumeConfiguration & GetEfsVolumeConfiguration() const
Definition Volume.h:88
Volume & WithName(NameT &&value)
Definition Volume.h:76
bool NameHasBeenSet() const
Definition Volume.h:69
AWS_BATCH_API Volume & operator=(Aws::Utils::Json::JsonView jsonValue)
bool EfsVolumeConfigurationHasBeenSet() const
Definition Volume.h:89
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