7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/fsx/FSx_EXPORTS.h>
11#include <aws/fsx/model/AdministrativeAction.h>
12#include <aws/fsx/model/LifecycleTransitionReason.h>
13#include <aws/fsx/model/OntapVolumeConfiguration.h>
14#include <aws/fsx/model/OpenZFSVolumeConfiguration.h>
15#include <aws/fsx/model/Tag.h>
16#include <aws/fsx/model/VolumeLifecycle.h>
17#include <aws/fsx/model/VolumeType.h>
30class AdministrativeAction;
48 template <
typename CreationTimeT = Aws::Utils::DateTime>
50 m_creationTimeHasBeenSet =
true;
51 m_creationTime = std::forward<CreationTimeT>(value);
53 template <
typename CreationTimeT = Aws::Utils::DateTime>
64 template <
typename FileSystemIdT = Aws::String>
66 m_fileSystemIdHasBeenSet =
true;
67 m_fileSystemId = std::forward<FileSystemIdT>(value);
69 template <
typename FileSystemIdT = Aws::String>
91 m_lifecycleHasBeenSet =
true;
106 template <
typename NameT = Aws::String>
108 m_nameHasBeenSet =
true;
109 m_name = std::forward<NameT>(value);
111 template <
typename NameT = Aws::String>
113 SetName(std::forward<NameT>(value));
122 template <
typename OntapConfigurationT = OntapVolumeConfiguration>
124 m_ontapConfigurationHasBeenSet =
true;
125 m_ontapConfiguration = std::forward<OntapConfigurationT>(value);
127 template <
typename OntapConfigurationT = OntapVolumeConfiguration>
138 template <
typename ResourceARNT = Aws::String>
140 m_resourceARNHasBeenSet =
true;
141 m_resourceARN = std::forward<ResourceARNT>(value);
143 template <
typename ResourceARNT = Aws::String>
154 template <
typename TagsT = Aws::Vector<Tag>>
156 m_tagsHasBeenSet =
true;
157 m_tags = std::forward<TagsT>(value);
159 template <
typename TagsT = Aws::Vector<Tag>>
161 SetTags(std::forward<TagsT>(value));
164 template <
typename TagsT = Tag>
166 m_tagsHasBeenSet =
true;
167 m_tags.emplace_back(std::forward<TagsT>(value));
178 template <
typename VolumeIdT = Aws::String>
180 m_volumeIdHasBeenSet =
true;
181 m_volumeId = std::forward<VolumeIdT>(value);
183 template <
typename VolumeIdT = Aws::String>
197 m_volumeTypeHasBeenSet =
true;
198 m_volumeType = value;
212 template <
typename LifecycleTransitionReasonT = LifecycleTransitionReason>
214 m_lifecycleTransitionReasonHasBeenSet =
true;
215 m_lifecycleTransitionReason = std::forward<LifecycleTransitionReasonT>(value);
217 template <
typename LifecycleTransitionReasonT = LifecycleTransitionReason>
232 template <
typename AdministrativeActionsT = Aws::Vector<AdministrativeAction>>
234 m_administrativeActionsHasBeenSet =
true;
235 m_administrativeActions = std::forward<AdministrativeActionsT>(value);
237 template <
typename AdministrativeActionsT = Aws::Vector<AdministrativeAction>>
242 template <
typename AdministrativeActionsT = AdministrativeAction>
244 m_administrativeActionsHasBeenSet =
true;
245 m_administrativeActions.emplace_back(std::forward<AdministrativeActionsT>(value));
256 template <
typename OpenZFSConfigurationT = OpenZFSVolumeConfiguration>
258 m_openZFSConfigurationHasBeenSet =
true;
259 m_openZFSConfiguration = std::forward<OpenZFSConfigurationT>(value);
261 template <
typename OpenZFSConfigurationT = OpenZFSVolumeConfiguration>
276 OntapVolumeConfiguration m_ontapConfiguration;
286 LifecycleTransitionReason m_lifecycleTransitionReason;
290 OpenZFSVolumeConfiguration m_openZFSConfiguration;
291 bool m_creationTimeHasBeenSet =
false;
292 bool m_fileSystemIdHasBeenSet =
false;
293 bool m_lifecycleHasBeenSet =
false;
294 bool m_nameHasBeenSet =
false;
295 bool m_ontapConfigurationHasBeenSet =
false;
296 bool m_resourceARNHasBeenSet =
false;
297 bool m_tagsHasBeenSet =
false;
298 bool m_volumeIdHasBeenSet =
false;
299 bool m_volumeTypeHasBeenSet =
false;
300 bool m_lifecycleTransitionReasonHasBeenSet =
false;
301 bool m_administrativeActionsHasBeenSet =
false;
302 bool m_openZFSConfigurationHasBeenSet =
false;
void SetOntapConfiguration(OntapConfigurationT &&value)
const Aws::String & GetVolumeId() const
Volume & WithCreationTime(CreationTimeT &&value)
void SetResourceARN(ResourceARNT &&value)
const OpenZFSVolumeConfiguration & GetOpenZFSConfiguration() const
void SetCreationTime(CreationTimeT &&value)
Volume & WithTags(TagsT &&value)
bool AdministrativeActionsHasBeenSet() const
AWS_FSX_API Volume & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetLifecycle(VolumeLifecycle value)
const Aws::Utils::DateTime & GetCreationTime() const
Volume & AddAdministrativeActions(AdministrativeActionsT &&value)
Volume & WithVolumeId(VolumeIdT &&value)
AWS_FSX_API Aws::Utils::Json::JsonValue Jsonize() const
Volume & WithVolumeType(VolumeType value)
void SetLifecycleTransitionReason(LifecycleTransitionReasonT &&value)
bool LifecycleHasBeenSet() const
void SetAdministrativeActions(AdministrativeActionsT &&value)
const OntapVolumeConfiguration & GetOntapConfiguration() const
void SetVolumeId(VolumeIdT &&value)
bool CreationTimeHasBeenSet() const
bool FileSystemIdHasBeenSet() const
Volume & WithLifecycleTransitionReason(LifecycleTransitionReasonT &&value)
bool VolumeIdHasBeenSet() const
AWS_FSX_API Volume()=default
Volume & AddTags(TagsT &&value)
bool LifecycleTransitionReasonHasBeenSet() const
void SetTags(TagsT &&value)
bool NameHasBeenSet() const
bool OpenZFSConfigurationHasBeenSet() const
Volume & WithName(NameT &&value)
void SetVolumeType(VolumeType value)
VolumeType GetVolumeType() const
Volume & WithAdministrativeActions(AdministrativeActionsT &&value)
const Aws::String & GetResourceARN() const
bool VolumeTypeHasBeenSet() const
const LifecycleTransitionReason & GetLifecycleTransitionReason() const
const Aws::String & GetFileSystemId() const
void SetName(NameT &&value)
Volume & WithFileSystemId(FileSystemIdT &&value)
bool OntapConfigurationHasBeenSet() const
VolumeLifecycle GetLifecycle() const
const Aws::String & GetName() const
const Aws::Vector< Tag > & GetTags() const
bool TagsHasBeenSet() const
Volume & WithResourceARN(ResourceARNT &&value)
void SetOpenZFSConfiguration(OpenZFSConfigurationT &&value)
bool ResourceARNHasBeenSet() const
AWS_FSX_API Volume(Aws::Utils::Json::JsonView jsonValue)
Volume & WithLifecycle(VolumeLifecycle value)
void SetFileSystemId(FileSystemIdT &&value)
Volume & WithOpenZFSConfiguration(OpenZFSConfigurationT &&value)
const Aws::Vector< AdministrativeAction > & GetAdministrativeActions() const
Volume & WithOntapConfiguration(OntapConfigurationT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue