AWS SDK for C++

AWS SDK for C++ Version 1.11.927

Loading...
Searching...
No Matches
CreateTapePoolRequest.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/storagegateway/StorageGatewayRequest.h>
10#include <aws/storagegateway/StorageGateway_EXPORTS.h>
11#include <aws/storagegateway/model/RetentionLockType.h>
12#include <aws/storagegateway/model/Tag.h>
13#include <aws/storagegateway/model/TapeStorageClass.h>
14
15#include <utility>
16
17namespace Aws {
18namespace StorageGateway {
19namespace Model {
20
24 public:
25 AWS_STORAGEGATEWAY_API CreateTapePoolRequest() = default;
26
27 // Service request name is the Operation name which will send this request out,
28 // each operation should has unique request name, so that we can get operation's name from this request.
29 // Note: this is not true for response, multiple operations may have the same response name,
30 // so we can not get operation's name from response.
31 inline virtual const char* GetServiceRequestName() const override { return "CreateTapePool"; }
32
33 AWS_STORAGEGATEWAY_API Aws::String SerializePayload() const override;
34
35 AWS_STORAGEGATEWAY_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
36
38
41 inline const Aws::String& GetPoolName() const { return m_poolName; }
42 inline bool PoolNameHasBeenSet() const { return m_poolNameHasBeenSet; }
43 template <typename PoolNameT = Aws::String>
44 void SetPoolName(PoolNameT&& value) {
45 m_poolNameHasBeenSet = true;
46 m_poolName = std::forward<PoolNameT>(value);
47 }
48 template <typename PoolNameT = Aws::String>
49 CreateTapePoolRequest& WithPoolName(PoolNameT&& value) {
50 SetPoolName(std::forward<PoolNameT>(value));
51 return *this;
52 }
54
56
62 inline TapeStorageClass GetStorageClass() const { return m_storageClass; }
63 inline bool StorageClassHasBeenSet() const { return m_storageClassHasBeenSet; }
64 inline void SetStorageClass(TapeStorageClass value) {
65 m_storageClassHasBeenSet = true;
66 m_storageClass = value;
67 }
69 SetStorageClass(value);
70 return *this;
71 }
73
75
82 inline RetentionLockType GetRetentionLockType() const { return m_retentionLockType; }
83 inline bool RetentionLockTypeHasBeenSet() const { return m_retentionLockTypeHasBeenSet; }
85 m_retentionLockTypeHasBeenSet = true;
86 m_retentionLockType = value;
87 }
90 return *this;
91 }
93
95
99 inline int GetRetentionLockTimeInDays() const { return m_retentionLockTimeInDays; }
100 inline bool RetentionLockTimeInDaysHasBeenSet() const { return m_retentionLockTimeInDaysHasBeenSet; }
101 inline void SetRetentionLockTimeInDays(int value) {
102 m_retentionLockTimeInDaysHasBeenSet = true;
103 m_retentionLockTimeInDays = value;
104 }
107 return *this;
108 }
110
112
119 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
120 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
121 template <typename TagsT = Aws::Vector<Tag>>
122 void SetTags(TagsT&& value) {
123 m_tagsHasBeenSet = true;
124 m_tags = std::forward<TagsT>(value);
125 }
126 template <typename TagsT = Aws::Vector<Tag>>
128 SetTags(std::forward<TagsT>(value));
129 return *this;
130 }
131 template <typename TagsT = Tag>
133 m_tagsHasBeenSet = true;
134 m_tags.emplace_back(std::forward<TagsT>(value));
135 return *this;
136 }
138 private:
139 Aws::String m_poolName;
140
142
144
145 int m_retentionLockTimeInDays{0};
146
147 Aws::Vector<Tag> m_tags;
148 bool m_poolNameHasBeenSet = false;
149 bool m_storageClassHasBeenSet = false;
150 bool m_retentionLockTypeHasBeenSet = false;
151 bool m_retentionLockTimeInDaysHasBeenSet = false;
152 bool m_tagsHasBeenSet = false;
153};
154
155} // namespace Model
156} // namespace StorageGateway
157} // namespace Aws
AWS_STORAGEGATEWAY_API CreateTapePoolRequest()=default
CreateTapePoolRequest & WithRetentionLockTimeInDays(int value)
AWS_STORAGEGATEWAY_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateTapePoolRequest & WithRetentionLockType(RetentionLockType value)
virtual const char * GetServiceRequestName() const override
CreateTapePoolRequest & WithTags(TagsT &&value)
CreateTapePoolRequest & WithPoolName(PoolNameT &&value)
CreateTapePoolRequest & WithStorageClass(TapeStorageClass value)
AWS_STORAGEGATEWAY_API Aws::String SerializePayload() const override
CreateTapePoolRequest & AddTags(TagsT &&value)
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector