AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
Device.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/ecs/ECS_EXPORTS.h>
10#include <aws/ecs/model/DeviceCgroupPermission.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace ECS {
22namespace Model {
23
30class Device {
31 public:
32 AWS_ECS_API Device() = default;
33 AWS_ECS_API Device(Aws::Utils::Json::JsonView jsonValue);
36
38
41 inline const Aws::String& GetHostPath() const { return m_hostPath; }
42 inline bool HostPathHasBeenSet() const { return m_hostPathHasBeenSet; }
43 template <typename HostPathT = Aws::String>
44 void SetHostPath(HostPathT&& value) {
45 m_hostPathHasBeenSet = true;
46 m_hostPath = std::forward<HostPathT>(value);
47 }
48 template <typename HostPathT = Aws::String>
49 Device& WithHostPath(HostPathT&& value) {
50 SetHostPath(std::forward<HostPathT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::String& GetContainerPath() const { return m_containerPath; }
60 inline bool ContainerPathHasBeenSet() const { return m_containerPathHasBeenSet; }
61 template <typename ContainerPathT = Aws::String>
62 void SetContainerPath(ContainerPathT&& value) {
63 m_containerPathHasBeenSet = true;
64 m_containerPath = std::forward<ContainerPathT>(value);
65 }
66 template <typename ContainerPathT = Aws::String>
67 Device& WithContainerPath(ContainerPathT&& value) {
68 SetContainerPath(std::forward<ContainerPathT>(value));
69 return *this;
70 }
72
74
79 inline const Aws::Vector<DeviceCgroupPermission>& GetPermissions() const { return m_permissions; }
80 inline bool PermissionsHasBeenSet() const { return m_permissionsHasBeenSet; }
81 template <typename PermissionsT = Aws::Vector<DeviceCgroupPermission>>
82 void SetPermissions(PermissionsT&& value) {
83 m_permissionsHasBeenSet = true;
84 m_permissions = std::forward<PermissionsT>(value);
85 }
86 template <typename PermissionsT = Aws::Vector<DeviceCgroupPermission>>
87 Device& WithPermissions(PermissionsT&& value) {
88 SetPermissions(std::forward<PermissionsT>(value));
89 return *this;
90 }
92 m_permissionsHasBeenSet = true;
93 m_permissions.push_back(value);
94 return *this;
95 }
97 private:
98 Aws::String m_hostPath;
99
100 Aws::String m_containerPath;
101
103 bool m_hostPathHasBeenSet = false;
104 bool m_containerPathHasBeenSet = false;
105 bool m_permissionsHasBeenSet = false;
106};
107
108} // namespace Model
109} // namespace ECS
110} // namespace Aws
AWS_ECS_API Device()=default
bool HostPathHasBeenSet() const
Definition Device.h:42
void SetPermissions(PermissionsT &&value)
Definition Device.h:82
void SetHostPath(HostPathT &&value)
Definition Device.h:44
AWS_ECS_API Device(Aws::Utils::Json::JsonView jsonValue)
Device & WithHostPath(HostPathT &&value)
Definition Device.h:49
Device & WithPermissions(PermissionsT &&value)
Definition Device.h:87
Device & WithContainerPath(ContainerPathT &&value)
Definition Device.h:67
void SetContainerPath(ContainerPathT &&value)
Definition Device.h:62
Device & AddPermissions(DeviceCgroupPermission value)
Definition Device.h:91
AWS_ECS_API Aws::Utils::Json::JsonValue Jsonize() const
bool ContainerPathHasBeenSet() const
Definition Device.h:60
AWS_ECS_API Device & operator=(Aws::Utils::Json::JsonView jsonValue)
bool PermissionsHasBeenSet() const
Definition Device.h:80
const Aws::String & GetHostPath() const
Definition Device.h:41
const Aws::String & GetContainerPath() const
Definition Device.h:59
const Aws::Vector< DeviceCgroupPermission > & GetPermissions() const
Definition Device.h:79
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue