1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
#[allow(missing_docs)] // documentation missing in model
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct DeleteResourcePolicyInput {
/// <p>Amazon Resource Name (ARN) of the resource to which the policies are attached.</p>
pub resource_arn: ::std::option::Option<::std::string::String>,
/// <p>The policy ID.</p>
pub policy_id: ::std::option::Option<::std::string::String>,
/// <p>ID of the current policy version. The hash helps to prevent multiple calls from attempting to overwrite a policy.</p>
pub policy_hash: ::std::option::Option<::std::string::String>,
/// <p>Specifies the intended outcome of the operation. Applies only to the <code>Document</code> resource type. The operation ignores this parameter for other resource types. Optional. Defaults to <code>RemoveSharing</code>.</p>
/// <ul>
/// <li>
/// <p><code>RemoveSharing</code> – Deletes the resource policy and removes sharing of the document.</p></li>
/// <li>
/// <p><code>RollbackMigration</code> – Reverts the document to Custom sharing, preserving existing consumer access, instead of removing the policy.</p></li>
/// </ul>
pub deletion_mode: ::std::option::Option<crate::types::DeletionMode>,
}
impl DeleteResourcePolicyInput {
/// <p>Amazon Resource Name (ARN) of the resource to which the policies are attached.</p>
pub fn resource_arn(&self) -> ::std::option::Option<&str> {
self.resource_arn.as_deref()
}
/// <p>The policy ID.</p>
pub fn policy_id(&self) -> ::std::option::Option<&str> {
self.policy_id.as_deref()
}
/// <p>ID of the current policy version. The hash helps to prevent multiple calls from attempting to overwrite a policy.</p>
pub fn policy_hash(&self) -> ::std::option::Option<&str> {
self.policy_hash.as_deref()
}
/// <p>Specifies the intended outcome of the operation. Applies only to the <code>Document</code> resource type. The operation ignores this parameter for other resource types. Optional. Defaults to <code>RemoveSharing</code>.</p>
/// <ul>
/// <li>
/// <p><code>RemoveSharing</code> – Deletes the resource policy and removes sharing of the document.</p></li>
/// <li>
/// <p><code>RollbackMigration</code> – Reverts the document to Custom sharing, preserving existing consumer access, instead of removing the policy.</p></li>
/// </ul>
pub fn deletion_mode(&self) -> ::std::option::Option<&crate::types::DeletionMode> {
self.deletion_mode.as_ref()
}
}
impl DeleteResourcePolicyInput {
/// Creates a new builder-style object to manufacture [`DeleteResourcePolicyInput`](crate::operation::delete_resource_policy::DeleteResourcePolicyInput).
pub fn builder() -> crate::operation::delete_resource_policy::builders::DeleteResourcePolicyInputBuilder {
crate::operation::delete_resource_policy::builders::DeleteResourcePolicyInputBuilder::default()
}
}
/// A builder for [`DeleteResourcePolicyInput`](crate::operation::delete_resource_policy::DeleteResourcePolicyInput).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct DeleteResourcePolicyInputBuilder {
pub(crate) resource_arn: ::std::option::Option<::std::string::String>,
pub(crate) policy_id: ::std::option::Option<::std::string::String>,
pub(crate) policy_hash: ::std::option::Option<::std::string::String>,
pub(crate) deletion_mode: ::std::option::Option<crate::types::DeletionMode>,
}
impl DeleteResourcePolicyInputBuilder {
/// <p>Amazon Resource Name (ARN) of the resource to which the policies are attached.</p>
/// This field is required.
pub fn resource_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.resource_arn = ::std::option::Option::Some(input.into());
self
}
/// <p>Amazon Resource Name (ARN) of the resource to which the policies are attached.</p>
pub fn set_resource_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.resource_arn = input;
self
}
/// <p>Amazon Resource Name (ARN) of the resource to which the policies are attached.</p>
pub fn get_resource_arn(&self) -> &::std::option::Option<::std::string::String> {
&self.resource_arn
}
/// <p>The policy ID.</p>
/// This field is required.
pub fn policy_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.policy_id = ::std::option::Option::Some(input.into());
self
}
/// <p>The policy ID.</p>
pub fn set_policy_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.policy_id = input;
self
}
/// <p>The policy ID.</p>
pub fn get_policy_id(&self) -> &::std::option::Option<::std::string::String> {
&self.policy_id
}
/// <p>ID of the current policy version. The hash helps to prevent multiple calls from attempting to overwrite a policy.</p>
/// This field is required.
pub fn policy_hash(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.policy_hash = ::std::option::Option::Some(input.into());
self
}
/// <p>ID of the current policy version. The hash helps to prevent multiple calls from attempting to overwrite a policy.</p>
pub fn set_policy_hash(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.policy_hash = input;
self
}
/// <p>ID of the current policy version. The hash helps to prevent multiple calls from attempting to overwrite a policy.</p>
pub fn get_policy_hash(&self) -> &::std::option::Option<::std::string::String> {
&self.policy_hash
}
/// <p>Specifies the intended outcome of the operation. Applies only to the <code>Document</code> resource type. The operation ignores this parameter for other resource types. Optional. Defaults to <code>RemoveSharing</code>.</p>
/// <ul>
/// <li>
/// <p><code>RemoveSharing</code> – Deletes the resource policy and removes sharing of the document.</p></li>
/// <li>
/// <p><code>RollbackMigration</code> – Reverts the document to Custom sharing, preserving existing consumer access, instead of removing the policy.</p></li>
/// </ul>
pub fn deletion_mode(mut self, input: crate::types::DeletionMode) -> Self {
self.deletion_mode = ::std::option::Option::Some(input);
self
}
/// <p>Specifies the intended outcome of the operation. Applies only to the <code>Document</code> resource type. The operation ignores this parameter for other resource types. Optional. Defaults to <code>RemoveSharing</code>.</p>
/// <ul>
/// <li>
/// <p><code>RemoveSharing</code> – Deletes the resource policy and removes sharing of the document.</p></li>
/// <li>
/// <p><code>RollbackMigration</code> – Reverts the document to Custom sharing, preserving existing consumer access, instead of removing the policy.</p></li>
/// </ul>
pub fn set_deletion_mode(mut self, input: ::std::option::Option<crate::types::DeletionMode>) -> Self {
self.deletion_mode = input;
self
}
/// <p>Specifies the intended outcome of the operation. Applies only to the <code>Document</code> resource type. The operation ignores this parameter for other resource types. Optional. Defaults to <code>RemoveSharing</code>.</p>
/// <ul>
/// <li>
/// <p><code>RemoveSharing</code> – Deletes the resource policy and removes sharing of the document.</p></li>
/// <li>
/// <p><code>RollbackMigration</code> – Reverts the document to Custom sharing, preserving existing consumer access, instead of removing the policy.</p></li>
/// </ul>
pub fn get_deletion_mode(&self) -> &::std::option::Option<crate::types::DeletionMode> {
&self.deletion_mode
}
/// Consumes the builder and constructs a [`DeleteResourcePolicyInput`](crate::operation::delete_resource_policy::DeleteResourcePolicyInput).
pub fn build(
self,
) -> ::std::result::Result<crate::operation::delete_resource_policy::DeleteResourcePolicyInput, ::aws_smithy_types::error::operation::BuildError>
{
::std::result::Result::Ok(crate::operation::delete_resource_policy::DeleteResourcePolicyInput {
resource_arn: self.resource_arn,
policy_id: self.policy_id,
policy_hash: self.policy_hash,
deletion_mode: self.deletion_mode,
})
}
}