aws_sdk_docdb/operation/describe_db_cluster_parameters/_describe_db_cluster_parameters_input.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2
3/// <p>Represents the input to <code>DescribeDBClusterParameters</code>.</p>
4#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct DescribeDbClusterParametersInput {
7 /// <p>The name of a specific cluster parameter group to return parameter details for.</p>
8 /// <p>Constraints:</p>
9 /// <ul>
10 /// <li>
11 /// <p>If provided, must match the name of an existing <code>DBClusterParameterGroup</code>.</p></li>
12 /// </ul>
13 pub db_cluster_parameter_group_name: ::std::option::Option<::std::string::String>,
14 /// <p>A value that indicates to return only parameters for a specific source. Parameter sources can be <code>engine</code>, <code>service</code>, or <code>customer</code>.</p>
15 pub source: ::std::option::Option<::std::string::String>,
16 /// <p>This parameter is not currently supported.</p>
17 pub filters: ::std::option::Option<::std::vec::Vec<crate::types::Filter>>,
18 /// <p>The maximum number of records to include in the response. If more records exist than the specified <code>MaxRecords</code> value, a pagination token (marker) is included in the response so that the remaining results can be retrieved.</p>
19 /// <p>Default: 100</p>
20 /// <p>Constraints: Minimum 20, maximum 100.</p>
21 pub max_records: ::std::option::Option<i32>,
22 /// <p>An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by <code>MaxRecords</code>.</p>
23 pub marker: ::std::option::Option<::std::string::String>,
24}
25impl DescribeDbClusterParametersInput {
26 /// <p>The name of a specific cluster parameter group to return parameter details for.</p>
27 /// <p>Constraints:</p>
28 /// <ul>
29 /// <li>
30 /// <p>If provided, must match the name of an existing <code>DBClusterParameterGroup</code>.</p></li>
31 /// </ul>
32 pub fn db_cluster_parameter_group_name(&self) -> ::std::option::Option<&str> {
33 self.db_cluster_parameter_group_name.as_deref()
34 }
35 /// <p>A value that indicates to return only parameters for a specific source. Parameter sources can be <code>engine</code>, <code>service</code>, or <code>customer</code>.</p>
36 pub fn source(&self) -> ::std::option::Option<&str> {
37 self.source.as_deref()
38 }
39 /// <p>This parameter is not currently supported.</p>
40 ///
41 /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.filters.is_none()`.
42 pub fn filters(&self) -> &[crate::types::Filter] {
43 self.filters.as_deref().unwrap_or_default()
44 }
45 /// <p>The maximum number of records to include in the response. If more records exist than the specified <code>MaxRecords</code> value, a pagination token (marker) is included in the response so that the remaining results can be retrieved.</p>
46 /// <p>Default: 100</p>
47 /// <p>Constraints: Minimum 20, maximum 100.</p>
48 pub fn max_records(&self) -> ::std::option::Option<i32> {
49 self.max_records
50 }
51 /// <p>An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by <code>MaxRecords</code>.</p>
52 pub fn marker(&self) -> ::std::option::Option<&str> {
53 self.marker.as_deref()
54 }
55}
56impl DescribeDbClusterParametersInput {
57 /// Creates a new builder-style object to manufacture [`DescribeDbClusterParametersInput`](crate::operation::describe_db_cluster_parameters::DescribeDbClusterParametersInput).
58 pub fn builder() -> crate::operation::describe_db_cluster_parameters::builders::DescribeDbClusterParametersInputBuilder {
59 crate::operation::describe_db_cluster_parameters::builders::DescribeDbClusterParametersInputBuilder::default()
60 }
61}
62
63/// A builder for [`DescribeDbClusterParametersInput`](crate::operation::describe_db_cluster_parameters::DescribeDbClusterParametersInput).
64#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
65#[non_exhaustive]
66pub struct DescribeDbClusterParametersInputBuilder {
67 pub(crate) db_cluster_parameter_group_name: ::std::option::Option<::std::string::String>,
68 pub(crate) source: ::std::option::Option<::std::string::String>,
69 pub(crate) filters: ::std::option::Option<::std::vec::Vec<crate::types::Filter>>,
70 pub(crate) max_records: ::std::option::Option<i32>,
71 pub(crate) marker: ::std::option::Option<::std::string::String>,
72}
73impl DescribeDbClusterParametersInputBuilder {
74 /// <p>The name of a specific cluster parameter group to return parameter details for.</p>
75 /// <p>Constraints:</p>
76 /// <ul>
77 /// <li>
78 /// <p>If provided, must match the name of an existing <code>DBClusterParameterGroup</code>.</p></li>
79 /// </ul>
80 /// This field is required.
81 pub fn db_cluster_parameter_group_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
82 self.db_cluster_parameter_group_name = ::std::option::Option::Some(input.into());
83 self
84 }
85 /// <p>The name of a specific cluster parameter group to return parameter details for.</p>
86 /// <p>Constraints:</p>
87 /// <ul>
88 /// <li>
89 /// <p>If provided, must match the name of an existing <code>DBClusterParameterGroup</code>.</p></li>
90 /// </ul>
91 pub fn set_db_cluster_parameter_group_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
92 self.db_cluster_parameter_group_name = input;
93 self
94 }
95 /// <p>The name of a specific cluster parameter group to return parameter details for.</p>
96 /// <p>Constraints:</p>
97 /// <ul>
98 /// <li>
99 /// <p>If provided, must match the name of an existing <code>DBClusterParameterGroup</code>.</p></li>
100 /// </ul>
101 pub fn get_db_cluster_parameter_group_name(&self) -> &::std::option::Option<::std::string::String> {
102 &self.db_cluster_parameter_group_name
103 }
104 /// <p>A value that indicates to return only parameters for a specific source. Parameter sources can be <code>engine</code>, <code>service</code>, or <code>customer</code>.</p>
105 pub fn source(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
106 self.source = ::std::option::Option::Some(input.into());
107 self
108 }
109 /// <p>A value that indicates to return only parameters for a specific source. Parameter sources can be <code>engine</code>, <code>service</code>, or <code>customer</code>.</p>
110 pub fn set_source(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
111 self.source = input;
112 self
113 }
114 /// <p>A value that indicates to return only parameters for a specific source. Parameter sources can be <code>engine</code>, <code>service</code>, or <code>customer</code>.</p>
115 pub fn get_source(&self) -> &::std::option::Option<::std::string::String> {
116 &self.source
117 }
118 /// Appends an item to `filters`.
119 ///
120 /// To override the contents of this collection use [`set_filters`](Self::set_filters).
121 ///
122 /// <p>This parameter is not currently supported.</p>
123 pub fn filters(mut self, input: crate::types::Filter) -> Self {
124 let mut v = self.filters.unwrap_or_default();
125 v.push(input);
126 self.filters = ::std::option::Option::Some(v);
127 self
128 }
129 /// <p>This parameter is not currently supported.</p>
130 pub fn set_filters(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Filter>>) -> Self {
131 self.filters = input;
132 self
133 }
134 /// <p>This parameter is not currently supported.</p>
135 pub fn get_filters(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Filter>> {
136 &self.filters
137 }
138 /// <p>The maximum number of records to include in the response. If more records exist than the specified <code>MaxRecords</code> value, a pagination token (marker) is included in the response so that the remaining results can be retrieved.</p>
139 /// <p>Default: 100</p>
140 /// <p>Constraints: Minimum 20, maximum 100.</p>
141 pub fn max_records(mut self, input: i32) -> Self {
142 self.max_records = ::std::option::Option::Some(input);
143 self
144 }
145 /// <p>The maximum number of records to include in the response. If more records exist than the specified <code>MaxRecords</code> value, a pagination token (marker) is included in the response so that the remaining results can be retrieved.</p>
146 /// <p>Default: 100</p>
147 /// <p>Constraints: Minimum 20, maximum 100.</p>
148 pub fn set_max_records(mut self, input: ::std::option::Option<i32>) -> Self {
149 self.max_records = input;
150 self
151 }
152 /// <p>The maximum number of records to include in the response. If more records exist than the specified <code>MaxRecords</code> value, a pagination token (marker) is included in the response so that the remaining results can be retrieved.</p>
153 /// <p>Default: 100</p>
154 /// <p>Constraints: Minimum 20, maximum 100.</p>
155 pub fn get_max_records(&self) -> &::std::option::Option<i32> {
156 &self.max_records
157 }
158 /// <p>An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by <code>MaxRecords</code>.</p>
159 pub fn marker(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
160 self.marker = ::std::option::Option::Some(input.into());
161 self
162 }
163 /// <p>An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by <code>MaxRecords</code>.</p>
164 pub fn set_marker(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
165 self.marker = input;
166 self
167 }
168 /// <p>An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by <code>MaxRecords</code>.</p>
169 pub fn get_marker(&self) -> &::std::option::Option<::std::string::String> {
170 &self.marker
171 }
172 /// Consumes the builder and constructs a [`DescribeDbClusterParametersInput`](crate::operation::describe_db_cluster_parameters::DescribeDbClusterParametersInput).
173 pub fn build(
174 self,
175 ) -> ::std::result::Result<
176 crate::operation::describe_db_cluster_parameters::DescribeDbClusterParametersInput,
177 ::aws_smithy_types::error::operation::BuildError,
178 > {
179 ::std::result::Result::Ok(crate::operation::describe_db_cluster_parameters::DescribeDbClusterParametersInput {
180 db_cluster_parameter_group_name: self.db_cluster_parameter_group_name,
181 source: self.source,
182 filters: self.filters,
183 max_records: self.max_records,
184 marker: self.marker,
185 })
186 }
187}