aws_sdk_cognitoidentity/operation/get_id/_get_id_input.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2
3/// <p>Input to the GetId action.</p>
4#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct GetIdInput {
7 /// <p>A standard Amazon Web Services account ID (9+ digits).</p>
8 pub account_id: ::std::option::Option<::std::string::String>,
9 /// <p>An identity pool ID in the format REGION:GUID.</p>
10 pub identity_pool_id: ::std::option::Option<::std::string::String>,
11 /// <p>A set of optional name-value pairs that map provider names to provider tokens. The available provider names for <code>Logins</code> are as follows:</p>
12 /// <ul>
13 /// <li>
14 /// <p>Facebook: <code>graph.facebook.com</code></p></li>
15 /// <li>
16 /// <p>Amazon Cognito user pool: <code>cognito-idp.<region>
17 /// .amazonaws.com/
18 /// <your_user_pool_id></your_user_pool_id>
19 /// </region></code>, for example, <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>.</p></li>
20 /// <li>
21 /// <p>Google: <code>accounts.google.com</code></p></li>
22 /// <li>
23 /// <p>Amazon: <code>www.amazon.com</code></p></li>
24 /// <li>
25 /// <p>Twitter: <code>api.twitter.com</code></p></li>
26 /// <li>
27 /// <p>Digits: <code>www.digits.com</code></p></li>
28 /// </ul>
29 pub logins: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
30}
31impl GetIdInput {
32 /// <p>A standard Amazon Web Services account ID (9+ digits).</p>
33 pub fn account_id(&self) -> ::std::option::Option<&str> {
34 self.account_id.as_deref()
35 }
36 /// <p>An identity pool ID in the format REGION:GUID.</p>
37 pub fn identity_pool_id(&self) -> ::std::option::Option<&str> {
38 self.identity_pool_id.as_deref()
39 }
40 /// <p>A set of optional name-value pairs that map provider names to provider tokens. The available provider names for <code>Logins</code> are as follows:</p>
41 /// <ul>
42 /// <li>
43 /// <p>Facebook: <code>graph.facebook.com</code></p></li>
44 /// <li>
45 /// <p>Amazon Cognito user pool: <code>cognito-idp.<region>
46 /// .amazonaws.com/
47 /// <your_user_pool_id></your_user_pool_id>
48 /// </region></code>, for example, <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>.</p></li>
49 /// <li>
50 /// <p>Google: <code>accounts.google.com</code></p></li>
51 /// <li>
52 /// <p>Amazon: <code>www.amazon.com</code></p></li>
53 /// <li>
54 /// <p>Twitter: <code>api.twitter.com</code></p></li>
55 /// <li>
56 /// <p>Digits: <code>www.digits.com</code></p></li>
57 /// </ul>
58 pub fn logins(&self) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, ::std::string::String>> {
59 self.logins.as_ref()
60 }
61}
62impl GetIdInput {
63 /// Creates a new builder-style object to manufacture [`GetIdInput`](crate::operation::get_id::GetIdInput).
64 pub fn builder() -> crate::operation::get_id::builders::GetIdInputBuilder {
65 crate::operation::get_id::builders::GetIdInputBuilder::default()
66 }
67}
68
69/// A builder for [`GetIdInput`](crate::operation::get_id::GetIdInput).
70#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
71#[non_exhaustive]
72pub struct GetIdInputBuilder {
73 pub(crate) account_id: ::std::option::Option<::std::string::String>,
74 pub(crate) identity_pool_id: ::std::option::Option<::std::string::String>,
75 pub(crate) logins: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
76}
77impl GetIdInputBuilder {
78 /// <p>A standard Amazon Web Services account ID (9+ digits).</p>
79 pub fn account_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
80 self.account_id = ::std::option::Option::Some(input.into());
81 self
82 }
83 /// <p>A standard Amazon Web Services account ID (9+ digits).</p>
84 pub fn set_account_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
85 self.account_id = input;
86 self
87 }
88 /// <p>A standard Amazon Web Services account ID (9+ digits).</p>
89 pub fn get_account_id(&self) -> &::std::option::Option<::std::string::String> {
90 &self.account_id
91 }
92 /// <p>An identity pool ID in the format REGION:GUID.</p>
93 /// This field is required.
94 pub fn identity_pool_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
95 self.identity_pool_id = ::std::option::Option::Some(input.into());
96 self
97 }
98 /// <p>An identity pool ID in the format REGION:GUID.</p>
99 pub fn set_identity_pool_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
100 self.identity_pool_id = input;
101 self
102 }
103 /// <p>An identity pool ID in the format REGION:GUID.</p>
104 pub fn get_identity_pool_id(&self) -> &::std::option::Option<::std::string::String> {
105 &self.identity_pool_id
106 }
107 /// Adds a key-value pair to `logins`.
108 ///
109 /// To override the contents of this collection use [`set_logins`](Self::set_logins).
110 ///
111 /// <p>A set of optional name-value pairs that map provider names to provider tokens. The available provider names for <code>Logins</code> are as follows:</p>
112 /// <ul>
113 /// <li>
114 /// <p>Facebook: <code>graph.facebook.com</code></p></li>
115 /// <li>
116 /// <p>Amazon Cognito user pool: <code>cognito-idp.<region>
117 /// .amazonaws.com/
118 /// <your_user_pool_id></your_user_pool_id>
119 /// </region></code>, for example, <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>.</p></li>
120 /// <li>
121 /// <p>Google: <code>accounts.google.com</code></p></li>
122 /// <li>
123 /// <p>Amazon: <code>www.amazon.com</code></p></li>
124 /// <li>
125 /// <p>Twitter: <code>api.twitter.com</code></p></li>
126 /// <li>
127 /// <p>Digits: <code>www.digits.com</code></p></li>
128 /// </ul>
129 pub fn logins(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
130 let mut hash_map = self.logins.unwrap_or_default();
131 hash_map.insert(k.into(), v.into());
132 self.logins = ::std::option::Option::Some(hash_map);
133 self
134 }
135 /// <p>A set of optional name-value pairs that map provider names to provider tokens. The available provider names for <code>Logins</code> are as follows:</p>
136 /// <ul>
137 /// <li>
138 /// <p>Facebook: <code>graph.facebook.com</code></p></li>
139 /// <li>
140 /// <p>Amazon Cognito user pool: <code>cognito-idp.<region>
141 /// .amazonaws.com/
142 /// <your_user_pool_id></your_user_pool_id>
143 /// </region></code>, for example, <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>.</p></li>
144 /// <li>
145 /// <p>Google: <code>accounts.google.com</code></p></li>
146 /// <li>
147 /// <p>Amazon: <code>www.amazon.com</code></p></li>
148 /// <li>
149 /// <p>Twitter: <code>api.twitter.com</code></p></li>
150 /// <li>
151 /// <p>Digits: <code>www.digits.com</code></p></li>
152 /// </ul>
153 pub fn set_logins(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>) -> Self {
154 self.logins = input;
155 self
156 }
157 /// <p>A set of optional name-value pairs that map provider names to provider tokens. The available provider names for <code>Logins</code> are as follows:</p>
158 /// <ul>
159 /// <li>
160 /// <p>Facebook: <code>graph.facebook.com</code></p></li>
161 /// <li>
162 /// <p>Amazon Cognito user pool: <code>cognito-idp.<region>
163 /// .amazonaws.com/
164 /// <your_user_pool_id></your_user_pool_id>
165 /// </region></code>, for example, <code>cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789</code>.</p></li>
166 /// <li>
167 /// <p>Google: <code>accounts.google.com</code></p></li>
168 /// <li>
169 /// <p>Amazon: <code>www.amazon.com</code></p></li>
170 /// <li>
171 /// <p>Twitter: <code>api.twitter.com</code></p></li>
172 /// <li>
173 /// <p>Digits: <code>www.digits.com</code></p></li>
174 /// </ul>
175 pub fn get_logins(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
176 &self.logins
177 }
178 /// Consumes the builder and constructs a [`GetIdInput`](crate::operation::get_id::GetIdInput).
179 pub fn build(self) -> ::std::result::Result<crate::operation::get_id::GetIdInput, ::aws_smithy_types::error::operation::BuildError> {
180 ::std::result::Result::Ok(crate::operation::get_id::GetIdInput {
181 account_id: self.account_id,
182 identity_pool_id: self.identity_pool_id,
183 logins: self.logins,
184 })
185 }
186}