AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
PoolInfo.h
1
6#pragma once
7#include <aws/storagegateway/StorageGateway_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/storagegateway/model/TapeStorageClass.h>
10#include <aws/storagegateway/model/RetentionLockType.h>
11#include <aws/storagegateway/model/PoolStatus.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace StorageGateway
25{
26namespace Model
27{
28
35 {
36 public:
37 AWS_STORAGEGATEWAY_API PoolInfo() = default;
38 AWS_STORAGEGATEWAY_API PoolInfo(Aws::Utils::Json::JsonView jsonValue);
39 AWS_STORAGEGATEWAY_API PoolInfo& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_STORAGEGATEWAY_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
49 inline const Aws::String& GetPoolARN() const { return m_poolARN; }
50 inline bool PoolARNHasBeenSet() const { return m_poolARNHasBeenSet; }
51 template<typename PoolARNT = Aws::String>
52 void SetPoolARN(PoolARNT&& value) { m_poolARNHasBeenSet = true; m_poolARN = std::forward<PoolARNT>(value); }
53 template<typename PoolARNT = Aws::String>
54 PoolInfo& WithPoolARN(PoolARNT&& value) { SetPoolARN(std::forward<PoolARNT>(value)); return *this;}
56
58
62 inline const Aws::String& GetPoolName() const { return m_poolName; }
63 inline bool PoolNameHasBeenSet() const { return m_poolNameHasBeenSet; }
64 template<typename PoolNameT = Aws::String>
65 void SetPoolName(PoolNameT&& value) { m_poolNameHasBeenSet = true; m_poolName = std::forward<PoolNameT>(value); }
66 template<typename PoolNameT = Aws::String>
67 PoolInfo& WithPoolName(PoolNameT&& value) { SetPoolName(std::forward<PoolNameT>(value)); return *this;}
69
71
77 inline TapeStorageClass GetStorageClass() const { return m_storageClass; }
78 inline bool StorageClassHasBeenSet() const { return m_storageClassHasBeenSet; }
79 inline void SetStorageClass(TapeStorageClass value) { m_storageClassHasBeenSet = true; m_storageClass = value; }
80 inline PoolInfo& WithStorageClass(TapeStorageClass value) { SetStorageClass(value); return *this;}
82
84
92 inline RetentionLockType GetRetentionLockType() const { return m_retentionLockType; }
93 inline bool RetentionLockTypeHasBeenSet() const { return m_retentionLockTypeHasBeenSet; }
94 inline void SetRetentionLockType(RetentionLockType value) { m_retentionLockTypeHasBeenSet = true; m_retentionLockType = value; }
97
99
103 inline int GetRetentionLockTimeInDays() const { return m_retentionLockTimeInDays; }
104 inline bool RetentionLockTimeInDaysHasBeenSet() const { return m_retentionLockTimeInDaysHasBeenSet; }
105 inline void SetRetentionLockTimeInDays(int value) { m_retentionLockTimeInDaysHasBeenSet = true; m_retentionLockTimeInDays = value; }
106 inline PoolInfo& WithRetentionLockTimeInDays(int value) { SetRetentionLockTimeInDays(value); return *this;}
108
110
114 inline PoolStatus GetPoolStatus() const { return m_poolStatus; }
115 inline bool PoolStatusHasBeenSet() const { return m_poolStatusHasBeenSet; }
116 inline void SetPoolStatus(PoolStatus value) { m_poolStatusHasBeenSet = true; m_poolStatus = value; }
117 inline PoolInfo& WithPoolStatus(PoolStatus value) { SetPoolStatus(value); return *this;}
119 private:
120
121 Aws::String m_poolARN;
122 bool m_poolARNHasBeenSet = false;
123
124 Aws::String m_poolName;
125 bool m_poolNameHasBeenSet = false;
126
128 bool m_storageClassHasBeenSet = false;
129
131 bool m_retentionLockTypeHasBeenSet = false;
132
133 int m_retentionLockTimeInDays{0};
134 bool m_retentionLockTimeInDaysHasBeenSet = false;
135
136 PoolStatus m_poolStatus{PoolStatus::NOT_SET};
137 bool m_poolStatusHasBeenSet = false;
138 };
139
140} // namespace Model
141} // namespace StorageGateway
142} // namespace Aws
const Aws::String & GetPoolARN() const
Definition PoolInfo.h:49
void SetStorageClass(TapeStorageClass value)
Definition PoolInfo.h:79
void SetPoolStatus(PoolStatus value)
Definition PoolInfo.h:116
void SetPoolARN(PoolARNT &&value)
Definition PoolInfo.h:52
AWS_STORAGEGATEWAY_API PoolInfo & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetPoolName() const
Definition PoolInfo.h:62
AWS_STORAGEGATEWAY_API PoolInfo()=default
PoolInfo & WithPoolARN(PoolARNT &&value)
Definition PoolInfo.h:54
void SetPoolName(PoolNameT &&value)
Definition PoolInfo.h:65
void SetRetentionLockTimeInDays(int value)
Definition PoolInfo.h:105
PoolInfo & WithPoolName(PoolNameT &&value)
Definition PoolInfo.h:67
PoolInfo & WithRetentionLockType(RetentionLockType value)
Definition PoolInfo.h:95
AWS_STORAGEGATEWAY_API PoolInfo(Aws::Utils::Json::JsonView jsonValue)
bool RetentionLockTimeInDaysHasBeenSet() const
Definition PoolInfo.h:104
PoolInfo & WithRetentionLockTimeInDays(int value)
Definition PoolInfo.h:106
TapeStorageClass GetStorageClass() const
Definition PoolInfo.h:77
void SetRetentionLockType(RetentionLockType value)
Definition PoolInfo.h:94
PoolInfo & WithPoolStatus(PoolStatus value)
Definition PoolInfo.h:117
PoolInfo & WithStorageClass(TapeStorageClass value)
Definition PoolInfo.h:80
AWS_STORAGEGATEWAY_API Aws::Utils::Json::JsonValue Jsonize() const
RetentionLockType GetRetentionLockType() const
Definition PoolInfo.h:92
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue