AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Device.h
1
6#pragma once
7#include <aws/ecs/ECS_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ecs/model/DeviceCgroupPermission.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace ECS
24{
25namespace Model
26{
27
34 class Device
35 {
36 public:
37 AWS_ECS_API Device() = default;
38 AWS_ECS_API Device(Aws::Utils::Json::JsonView jsonValue);
41
42
44
47 inline const Aws::String& GetHostPath() const { return m_hostPath; }
48 inline bool HostPathHasBeenSet() const { return m_hostPathHasBeenSet; }
49 template<typename HostPathT = Aws::String>
50 void SetHostPath(HostPathT&& value) { m_hostPathHasBeenSet = true; m_hostPath = std::forward<HostPathT>(value); }
51 template<typename HostPathT = Aws::String>
52 Device& WithHostPath(HostPathT&& value) { SetHostPath(std::forward<HostPathT>(value)); return *this;}
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) { m_containerPathHasBeenSet = true; m_containerPath = std::forward<ContainerPathT>(value); }
63 template<typename ContainerPathT = Aws::String>
64 Device& WithContainerPath(ContainerPathT&& value) { SetContainerPath(std::forward<ContainerPathT>(value)); return *this;}
66
68
73 inline const Aws::Vector<DeviceCgroupPermission>& GetPermissions() const { return m_permissions; }
74 inline bool PermissionsHasBeenSet() const { return m_permissionsHasBeenSet; }
75 template<typename PermissionsT = Aws::Vector<DeviceCgroupPermission>>
76 void SetPermissions(PermissionsT&& value) { m_permissionsHasBeenSet = true; m_permissions = std::forward<PermissionsT>(value); }
77 template<typename PermissionsT = Aws::Vector<DeviceCgroupPermission>>
78 Device& WithPermissions(PermissionsT&& value) { SetPermissions(std::forward<PermissionsT>(value)); return *this;}
79 inline Device& AddPermissions(DeviceCgroupPermission value) { m_permissionsHasBeenSet = true; m_permissions.push_back(value); return *this; }
81 private:
82
83 Aws::String m_hostPath;
84 bool m_hostPathHasBeenSet = false;
85
86 Aws::String m_containerPath;
87 bool m_containerPathHasBeenSet = false;
88
90 bool m_permissionsHasBeenSet = false;
91 };
92
93} // namespace Model
94} // namespace ECS
95} // namespace Aws
AWS_ECS_API Device()=default
bool HostPathHasBeenSet() const
Definition Device.h:48
void SetPermissions(PermissionsT &&value)
Definition Device.h:76
void SetHostPath(HostPathT &&value)
Definition Device.h:50
AWS_ECS_API Device(Aws::Utils::Json::JsonView jsonValue)
Device & WithHostPath(HostPathT &&value)
Definition Device.h:52
Device & WithPermissions(PermissionsT &&value)
Definition Device.h:78
Device & WithContainerPath(ContainerPathT &&value)
Definition Device.h:64
void SetContainerPath(ContainerPathT &&value)
Definition Device.h:62
Device & AddPermissions(DeviceCgroupPermission value)
Definition Device.h:79
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:74
const Aws::String & GetHostPath() const
Definition Device.h:47
const Aws::String & GetContainerPath() const
Definition Device.h:59
const Aws::Vector< DeviceCgroupPermission > & GetPermissions() const
Definition Device.h:73
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue