7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/ec2/EC2Request.h>
9#include <aws/ec2/model/SnapshotAttributeName.h>
10#include <aws/ec2/model/CreateVolumePermissionModifications.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/ec2/model/OperationType.h>
13#include <aws/core/utils/memory/stl/AWSString.h>
60 template<
typename CreateVolumePermissionT = CreateVolumePermissionModifications>
61 void SetCreateVolumePermission(CreateVolumePermissionT&& value) { m_createVolumePermissionHasBeenSet =
true; m_createVolumePermission = std::forward<CreateVolumePermissionT>(value); }
62 template<
typename CreateVolumePermissionT = CreateVolumePermissionModifications>
72 template<
typename GroupNamesT = Aws::Vector<Aws::String>>
73 void SetGroupNames(GroupNamesT&& value) { m_groupNamesHasBeenSet =
true; m_groupNames = std::forward<GroupNamesT>(value); }
74 template<
typename GroupNamesT = Aws::Vector<Aws::String>>
76 template<
typename GroupNamesT = Aws::String>
96 template<
typename SnapshotIdT = Aws::String>
97 void SetSnapshotId(SnapshotIdT&& value) { m_snapshotIdHasBeenSet =
true; m_snapshotId = std::forward<SnapshotIdT>(value); }
98 template<
typename SnapshotIdT = Aws::String>
108 template<
typename UserIdsT = Aws::Vector<Aws::String>>
109 void SetUserIds(UserIdsT&& value) { m_userIdsHasBeenSet =
true; m_userIds = std::forward<UserIdsT>(value); }
110 template<
typename UserIdsT = Aws::Vector<Aws::String>>
112 template<
typename UserIdsT = Aws::String>
125 inline void SetDryRun(
bool value) { m_dryRunHasBeenSet =
true; m_dryRun = value; }
131 bool m_attributeHasBeenSet =
false;
133 CreateVolumePermissionModifications m_createVolumePermission;
134 bool m_createVolumePermissionHasBeenSet =
false;
137 bool m_groupNamesHasBeenSet =
false;
140 bool m_operationTypeHasBeenSet =
false;
143 bool m_snapshotIdHasBeenSet =
false;
146 bool m_userIdsHasBeenSet =
false;
148 bool m_dryRun{
false};
149 bool m_dryRunHasBeenSet =
false;
OperationType GetOperationType() const
AWS_EC2_API ModifySnapshotAttributeRequest()=default
virtual const char * GetServiceRequestName() const override
const Aws::Vector< Aws::String > & GetGroupNames() const
bool DryRunHasBeenSet() const
SnapshotAttributeName GetAttribute() const
const Aws::String & GetSnapshotId() const
ModifySnapshotAttributeRequest & WithGroupNames(GroupNamesT &&value)
bool SnapshotIdHasBeenSet() const
const Aws::Vector< Aws::String > & GetUserIds() const
void SetAttribute(SnapshotAttributeName value)
void SetOperationType(OperationType value)
ModifySnapshotAttributeRequest & WithUserIds(UserIdsT &&value)
const CreateVolumePermissionModifications & GetCreateVolumePermission() const
bool AttributeHasBeenSet() const
void SetGroupNames(GroupNamesT &&value)
AWS_EC2_API Aws::String SerializePayload() const override
ModifySnapshotAttributeRequest & WithSnapshotId(SnapshotIdT &&value)
bool CreateVolumePermissionHasBeenSet() const
void SetDryRun(bool value)
ModifySnapshotAttributeRequest & WithOperationType(OperationType value)
ModifySnapshotAttributeRequest & WithCreateVolumePermission(CreateVolumePermissionT &&value)
ModifySnapshotAttributeRequest & AddUserIds(UserIdsT &&value)
ModifySnapshotAttributeRequest & AddGroupNames(GroupNamesT &&value)
ModifySnapshotAttributeRequest & WithDryRun(bool value)
void SetSnapshotId(SnapshotIdT &&value)
ModifySnapshotAttributeRequest & WithAttribute(SnapshotAttributeName value)
void SetCreateVolumePermission(CreateVolumePermissionT &&value)
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
void SetUserIds(UserIdsT &&value)
bool UserIdsHasBeenSet() const
bool GroupNamesHasBeenSet() const
bool OperationTypeHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector