1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`ModifySnapshotAttribute`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`attribute(SnapshotAttributeName)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::attribute) / [`set_attribute(Option<SnapshotAttributeName>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::set_attribute): <p>The snapshot attribute to modify. Only volume creation permissions can be modified.</p>
    ///   - [`create_volume_permission(CreateVolumePermissionModifications)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::create_volume_permission) / [`set_create_volume_permission(Option<CreateVolumePermissionModifications>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::set_create_volume_permission): <p>A JSON representation of the snapshot attribute modification.</p>
    ///   - [`group_names(Vec<String>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::group_names) / [`set_group_names(Option<Vec<String>>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::set_group_names): <p>The group to modify for the snapshot.</p>
    ///   - [`operation_type(OperationType)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::operation_type) / [`set_operation_type(Option<OperationType>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::set_operation_type): <p>The type of operation to perform to the attribute.</p>
    ///   - [`snapshot_id(impl Into<String>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::snapshot_id) / [`set_snapshot_id(Option<String>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::set_snapshot_id): <p>The ID of the snapshot.</p>
    ///   - [`user_ids(Vec<String>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::user_ids) / [`set_user_ids(Option<Vec<String>>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::set_user_ids): <p>The account ID to modify for the snapshot.</p>
    ///   - [`dry_run(bool)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::dry_run) / [`set_dry_run(Option<bool>)`](crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::set_dry_run): <p>Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p>
    /// - On success, responds with [`ModifySnapshotAttributeOutput`](crate::operation::modify_snapshot_attribute::ModifySnapshotAttributeOutput)
    /// - On failure, responds with [`SdkError<ModifySnapshotAttributeError>`](crate::operation::modify_snapshot_attribute::ModifySnapshotAttributeError)
    pub fn modify_snapshot_attribute(
        &self,
    ) -> crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder
    {
        crate::operation::modify_snapshot_attribute::builders::ModifySnapshotAttributeFluentBuilder::new(self.handle.clone())
    }
}