7#include <aws/fsx/FSx_EXPORTS.h>
8#include <aws/core/utils/DateTime.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/fsx/model/VolumeLifecycle.h>
11#include <aws/fsx/model/OntapVolumeConfiguration.h>
12#include <aws/core/utils/memory/stl/AWSVector.h>
13#include <aws/fsx/model/VolumeType.h>
14#include <aws/fsx/model/LifecycleTransitionReason.h>
15#include <aws/fsx/model/AdministrativeAction.h>
16#include <aws/fsx/model/OpenZFSVolumeConfiguration.h>
17#include <aws/fsx/model/Tag.h>
34 class AdministrativeAction;
54 template<
typename CreationTimeT = Aws::Utils::DateTime>
55 void SetCreationTime(CreationTimeT&& value) { m_creationTimeHasBeenSet =
true; m_creationTime = std::forward<CreationTimeT>(value); }
56 template<
typename CreationTimeT = Aws::Utils::DateTime>
64 template<
typename FileSystemIdT = Aws::String>
65 void SetFileSystemId(FileSystemIdT&& value) { m_fileSystemIdHasBeenSet =
true; m_fileSystemId = std::forward<FileSystemIdT>(value); }
66 template<
typename FileSystemIdT = Aws::String>
94 template<
typename NameT = Aws::String>
95 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
96 template<
typename NameT = Aws::String>
104 template<
typename OntapConfigurationT = OntapVolumeConfiguration>
105 void SetOntapConfiguration(OntapConfigurationT&& value) { m_ontapConfigurationHasBeenSet =
true; m_ontapConfiguration = std::forward<OntapConfigurationT>(value); }
106 template<
typename OntapConfigurationT = OntapVolumeConfiguration>
114 template<
typename ResourceARNT = Aws::String>
115 void SetResourceARN(ResourceARNT&& value) { m_resourceARNHasBeenSet =
true; m_resourceARN = std::forward<ResourceARNT>(value); }
116 template<
typename ResourceARNT = Aws::String>
124 template<
typename TagsT = Aws::Vector<Tag>>
125 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
126 template<
typename TagsT = Aws::Vector<Tag>>
128 template<
typename TagsT = Tag>
129 Volume&
AddTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags.emplace_back(std::forward<TagsT>(value));
return *
this; }
138 template<
typename VolumeIdT = Aws::String>
139 void SetVolumeId(VolumeIdT&& value) { m_volumeIdHasBeenSet =
true; m_volumeId = std::forward<VolumeIdT>(value); }
140 template<
typename VolumeIdT = Aws::String>
160 template<
typename LifecycleTransitionReasonT = LifecycleTransitionReason>
161 void SetLifecycleTransitionReason(LifecycleTransitionReasonT&& value) { m_lifecycleTransitionReasonHasBeenSet =
true; m_lifecycleTransitionReason = std::forward<LifecycleTransitionReasonT>(value); }
162 template<
typename LifecycleTransitionReasonT = LifecycleTransitionReason>
174 template<
typename AdministrativeActionsT = Aws::Vector<AdministrativeAction>>
175 void SetAdministrativeActions(AdministrativeActionsT&& value) { m_administrativeActionsHasBeenSet =
true; m_administrativeActions = std::forward<AdministrativeActionsT>(value); }
176 template<
typename AdministrativeActionsT = Aws::Vector<AdministrativeAction>>
178 template<
typename AdministrativeActionsT = AdministrativeAction>
179 Volume&
AddAdministrativeActions(AdministrativeActionsT&& value) { m_administrativeActionsHasBeenSet =
true; m_administrativeActions.emplace_back(std::forward<AdministrativeActionsT>(value));
return *
this; }
188 template<
typename OpenZFSConfigurationT = OpenZFSVolumeConfiguration>
189 void SetOpenZFSConfiguration(OpenZFSConfigurationT&& value) { m_openZFSConfigurationHasBeenSet =
true; m_openZFSConfiguration = std::forward<OpenZFSConfigurationT>(value); }
190 template<
typename OpenZFSConfigurationT = OpenZFSVolumeConfiguration>
196 bool m_creationTimeHasBeenSet =
false;
199 bool m_fileSystemIdHasBeenSet =
false;
202 bool m_lifecycleHasBeenSet =
false;
205 bool m_nameHasBeenSet =
false;
207 OntapVolumeConfiguration m_ontapConfiguration;
208 bool m_ontapConfigurationHasBeenSet =
false;
211 bool m_resourceARNHasBeenSet =
false;
214 bool m_tagsHasBeenSet =
false;
217 bool m_volumeIdHasBeenSet =
false;
220 bool m_volumeTypeHasBeenSet =
false;
222 LifecycleTransitionReason m_lifecycleTransitionReason;
223 bool m_lifecycleTransitionReasonHasBeenSet =
false;
226 bool m_administrativeActionsHasBeenSet =
false;
228 OpenZFSVolumeConfiguration m_openZFSConfiguration;
229 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