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
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
// 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 GetSimilarProfilesInput {
    /// <p>The pagination token from the previous <code>GetSimilarProfiles</code> API call.</p>
    pub next_token: ::std::option::Option<::std::string::String>,
    /// <p>The maximum number of objects returned per page.</p>
    pub max_results: ::std::option::Option<i32>,
    /// <p>The unique name of the domain.</p>
    pub domain_name: ::std::option::Option<::std::string::String>,
    /// <p>Specify the type of matching to get similar profiles for.</p>
    pub match_type: ::std::option::Option<crate::types::MatchType>,
    /// <p>The string indicating the search key to be used.</p>
    pub search_key: ::std::option::Option<::std::string::String>,
    /// <p>The string based on <code>SearchKey</code> to be searched for similar profiles.</p>
    pub search_value: ::std::option::Option<::std::string::String>,
}
impl GetSimilarProfilesInput {
    /// <p>The pagination token from the previous <code>GetSimilarProfiles</code> API call.</p>
    pub fn next_token(&self) -> ::std::option::Option<&str> {
        self.next_token.as_deref()
    }
    /// <p>The maximum number of objects returned per page.</p>
    pub fn max_results(&self) -> ::std::option::Option<i32> {
        self.max_results
    }
    /// <p>The unique name of the domain.</p>
    pub fn domain_name(&self) -> ::std::option::Option<&str> {
        self.domain_name.as_deref()
    }
    /// <p>Specify the type of matching to get similar profiles for.</p>
    pub fn match_type(&self) -> ::std::option::Option<&crate::types::MatchType> {
        self.match_type.as_ref()
    }
    /// <p>The string indicating the search key to be used.</p>
    pub fn search_key(&self) -> ::std::option::Option<&str> {
        self.search_key.as_deref()
    }
    /// <p>The string based on <code>SearchKey</code> to be searched for similar profiles.</p>
    pub fn search_value(&self) -> ::std::option::Option<&str> {
        self.search_value.as_deref()
    }
}
impl GetSimilarProfilesInput {
    /// Creates a new builder-style object to manufacture [`GetSimilarProfilesInput`](crate::operation::get_similar_profiles::GetSimilarProfilesInput).
    pub fn builder() -> crate::operation::get_similar_profiles::builders::GetSimilarProfilesInputBuilder {
        crate::operation::get_similar_profiles::builders::GetSimilarProfilesInputBuilder::default()
    }
}

/// A builder for [`GetSimilarProfilesInput`](crate::operation::get_similar_profiles::GetSimilarProfilesInput).
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
pub struct GetSimilarProfilesInputBuilder {
    pub(crate) next_token: ::std::option::Option<::std::string::String>,
    pub(crate) max_results: ::std::option::Option<i32>,
    pub(crate) domain_name: ::std::option::Option<::std::string::String>,
    pub(crate) match_type: ::std::option::Option<crate::types::MatchType>,
    pub(crate) search_key: ::std::option::Option<::std::string::String>,
    pub(crate) search_value: ::std::option::Option<::std::string::String>,
}
impl GetSimilarProfilesInputBuilder {
    /// <p>The pagination token from the previous <code>GetSimilarProfiles</code> API call.</p>
    pub fn next_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.next_token = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The pagination token from the previous <code>GetSimilarProfiles</code> API call.</p>
    pub fn set_next_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.next_token = input;
        self
    }
    /// <p>The pagination token from the previous <code>GetSimilarProfiles</code> API call.</p>
    pub fn get_next_token(&self) -> &::std::option::Option<::std::string::String> {
        &self.next_token
    }
    /// <p>The maximum number of objects returned per page.</p>
    pub fn max_results(mut self, input: i32) -> Self {
        self.max_results = ::std::option::Option::Some(input);
        self
    }
    /// <p>The maximum number of objects returned per page.</p>
    pub fn set_max_results(mut self, input: ::std::option::Option<i32>) -> Self {
        self.max_results = input;
        self
    }
    /// <p>The maximum number of objects returned per page.</p>
    pub fn get_max_results(&self) -> &::std::option::Option<i32> {
        &self.max_results
    }
    /// <p>The unique name of the domain.</p>
    /// This field is required.
    pub fn domain_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.domain_name = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The unique name of the domain.</p>
    pub fn set_domain_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.domain_name = input;
        self
    }
    /// <p>The unique name of the domain.</p>
    pub fn get_domain_name(&self) -> &::std::option::Option<::std::string::String> {
        &self.domain_name
    }
    /// <p>Specify the type of matching to get similar profiles for.</p>
    /// This field is required.
    pub fn match_type(mut self, input: crate::types::MatchType) -> Self {
        self.match_type = ::std::option::Option::Some(input);
        self
    }
    /// <p>Specify the type of matching to get similar profiles for.</p>
    pub fn set_match_type(mut self, input: ::std::option::Option<crate::types::MatchType>) -> Self {
        self.match_type = input;
        self
    }
    /// <p>Specify the type of matching to get similar profiles for.</p>
    pub fn get_match_type(&self) -> &::std::option::Option<crate::types::MatchType> {
        &self.match_type
    }
    /// <p>The string indicating the search key to be used.</p>
    /// This field is required.
    pub fn search_key(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.search_key = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The string indicating the search key to be used.</p>
    pub fn set_search_key(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.search_key = input;
        self
    }
    /// <p>The string indicating the search key to be used.</p>
    pub fn get_search_key(&self) -> &::std::option::Option<::std::string::String> {
        &self.search_key
    }
    /// <p>The string based on <code>SearchKey</code> to be searched for similar profiles.</p>
    /// This field is required.
    pub fn search_value(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.search_value = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The string based on <code>SearchKey</code> to be searched for similar profiles.</p>
    pub fn set_search_value(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.search_value = input;
        self
    }
    /// <p>The string based on <code>SearchKey</code> to be searched for similar profiles.</p>
    pub fn get_search_value(&self) -> &::std::option::Option<::std::string::String> {
        &self.search_value
    }
    /// Consumes the builder and constructs a [`GetSimilarProfilesInput`](crate::operation::get_similar_profiles::GetSimilarProfilesInput).
    pub fn build(
        self,
    ) -> ::std::result::Result<crate::operation::get_similar_profiles::GetSimilarProfilesInput, ::aws_smithy_types::error::operation::BuildError>
    {
        ::std::result::Result::Ok(crate::operation::get_similar_profiles::GetSimilarProfilesInput {
            next_token: self.next_token,
            max_results: self.max_results,
            domain_name: self.domain_name,
            match_type: self.match_type,
            search_key: self.search_key,
            search_value: self.search_value,
        })
    }
}