aws_sdk_glue/operation/create_dev_endpoint/
_create_dev_endpoint_output.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(missing_docs)] // documentation missing in model
3#[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
5pub struct CreateDevEndpointOutput {
6    /// <p>The name assigned to the new <code>DevEndpoint</code>.</p>
7    pub endpoint_name: ::std::option::Option<::std::string::String>,
8    /// <p>The current status of the new <code>DevEndpoint</code>.</p>
9    pub status: ::std::option::Option<::std::string::String>,
10    /// <p>The security groups assigned to the new <code>DevEndpoint</code>.</p>
11    pub security_group_ids: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
12    /// <p>The subnet ID assigned to the new <code>DevEndpoint</code>.</p>
13    pub subnet_id: ::std::option::Option<::std::string::String>,
14    /// <p>The Amazon Resource Name (ARN) of the role assigned to the new <code>DevEndpoint</code>.</p>
15    pub role_arn: ::std::option::Option<::std::string::String>,
16    /// <p>The address of the YARN endpoint used by this <code>DevEndpoint</code>.</p>
17    pub yarn_endpoint_address: ::std::option::Option<::std::string::String>,
18    /// <p>The Apache Zeppelin port for the remote Apache Spark interpreter.</p>
19    pub zeppelin_remote_spark_interpreter_port: i32,
20    /// <p>The number of Glue Data Processing Units (DPUs) allocated to this DevEndpoint.</p>
21    pub number_of_nodes: i32,
22    /// <p>The type of predefined worker that is allocated to the development endpoint. May be a value of Standard, G.1X, or G.2X.</p>
23    pub worker_type: ::std::option::Option<crate::types::WorkerType>,
24    /// <p>Glue version determines the versions of Apache Spark and Python that Glue supports. The Python version indicates the version supported for running your ETL scripts on development endpoints.</p>
25    /// <p>For more information about the available Glue versions and corresponding Spark and Python versions, see <a href="https://docs.aws.amazon.com/glue/latest/dg/add-job.html">Glue version</a> in the developer guide.</p>
26    pub glue_version: ::std::option::Option<::std::string::String>,
27    /// <p>The number of workers of a defined <code>workerType</code> that are allocated to the development endpoint.</p>
28    pub number_of_workers: ::std::option::Option<i32>,
29    /// <p>The Amazon Web Services Availability Zone where this <code>DevEndpoint</code> is located.</p>
30    pub availability_zone: ::std::option::Option<::std::string::String>,
31    /// <p>The ID of the virtual private cloud (VPC) used by this <code>DevEndpoint</code>.</p>
32    pub vpc_id: ::std::option::Option<::std::string::String>,
33    /// <p>The paths to one or more Python libraries in an S3 bucket that will be loaded in your <code>DevEndpoint</code>.</p>
34    pub extra_python_libs_s3_path: ::std::option::Option<::std::string::String>,
35    /// <p>Path to one or more Java <code>.jar</code> files in an S3 bucket that will be loaded in your <code>DevEndpoint</code>.</p>
36    pub extra_jars_s3_path: ::std::option::Option<::std::string::String>,
37    /// <p>The reason for a current failure in this <code>DevEndpoint</code>.</p>
38    pub failure_reason: ::std::option::Option<::std::string::String>,
39    /// <p>The name of the <code>SecurityConfiguration</code> structure being used with this <code>DevEndpoint</code>.</p>
40    pub security_configuration: ::std::option::Option<::std::string::String>,
41    /// <p>The point in time at which this <code>DevEndpoint</code> was created.</p>
42    pub created_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
43    /// <p>The map of arguments used to configure this <code>DevEndpoint</code>.</p>
44    /// <p>Valid arguments are:</p>
45    /// <ul>
46    /// <li>
47    /// <p><code>"--enable-glue-datacatalog": ""</code></p></li>
48    /// </ul>
49    /// <p>You can specify a version of Python support for development endpoints by using the <code>Arguments</code> parameter in the <code>CreateDevEndpoint</code> or <code>UpdateDevEndpoint</code> APIs. If no arguments are provided, the version defaults to Python 2.</p>
50    pub arguments: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
51    _request_id: Option<String>,
52}
53impl CreateDevEndpointOutput {
54    /// <p>The name assigned to the new <code>DevEndpoint</code>.</p>
55    pub fn endpoint_name(&self) -> ::std::option::Option<&str> {
56        self.endpoint_name.as_deref()
57    }
58    /// <p>The current status of the new <code>DevEndpoint</code>.</p>
59    pub fn status(&self) -> ::std::option::Option<&str> {
60        self.status.as_deref()
61    }
62    /// <p>The security groups assigned to the new <code>DevEndpoint</code>.</p>
63    ///
64    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.security_group_ids.is_none()`.
65    pub fn security_group_ids(&self) -> &[::std::string::String] {
66        self.security_group_ids.as_deref().unwrap_or_default()
67    }
68    /// <p>The subnet ID assigned to the new <code>DevEndpoint</code>.</p>
69    pub fn subnet_id(&self) -> ::std::option::Option<&str> {
70        self.subnet_id.as_deref()
71    }
72    /// <p>The Amazon Resource Name (ARN) of the role assigned to the new <code>DevEndpoint</code>.</p>
73    pub fn role_arn(&self) -> ::std::option::Option<&str> {
74        self.role_arn.as_deref()
75    }
76    /// <p>The address of the YARN endpoint used by this <code>DevEndpoint</code>.</p>
77    pub fn yarn_endpoint_address(&self) -> ::std::option::Option<&str> {
78        self.yarn_endpoint_address.as_deref()
79    }
80    /// <p>The Apache Zeppelin port for the remote Apache Spark interpreter.</p>
81    pub fn zeppelin_remote_spark_interpreter_port(&self) -> i32 {
82        self.zeppelin_remote_spark_interpreter_port
83    }
84    /// <p>The number of Glue Data Processing Units (DPUs) allocated to this DevEndpoint.</p>
85    pub fn number_of_nodes(&self) -> i32 {
86        self.number_of_nodes
87    }
88    /// <p>The type of predefined worker that is allocated to the development endpoint. May be a value of Standard, G.1X, or G.2X.</p>
89    pub fn worker_type(&self) -> ::std::option::Option<&crate::types::WorkerType> {
90        self.worker_type.as_ref()
91    }
92    /// <p>Glue version determines the versions of Apache Spark and Python that Glue supports. The Python version indicates the version supported for running your ETL scripts on development endpoints.</p>
93    /// <p>For more information about the available Glue versions and corresponding Spark and Python versions, see <a href="https://docs.aws.amazon.com/glue/latest/dg/add-job.html">Glue version</a> in the developer guide.</p>
94    pub fn glue_version(&self) -> ::std::option::Option<&str> {
95        self.glue_version.as_deref()
96    }
97    /// <p>The number of workers of a defined <code>workerType</code> that are allocated to the development endpoint.</p>
98    pub fn number_of_workers(&self) -> ::std::option::Option<i32> {
99        self.number_of_workers
100    }
101    /// <p>The Amazon Web Services Availability Zone where this <code>DevEndpoint</code> is located.</p>
102    pub fn availability_zone(&self) -> ::std::option::Option<&str> {
103        self.availability_zone.as_deref()
104    }
105    /// <p>The ID of the virtual private cloud (VPC) used by this <code>DevEndpoint</code>.</p>
106    pub fn vpc_id(&self) -> ::std::option::Option<&str> {
107        self.vpc_id.as_deref()
108    }
109    /// <p>The paths to one or more Python libraries in an S3 bucket that will be loaded in your <code>DevEndpoint</code>.</p>
110    pub fn extra_python_libs_s3_path(&self) -> ::std::option::Option<&str> {
111        self.extra_python_libs_s3_path.as_deref()
112    }
113    /// <p>Path to one or more Java <code>.jar</code> files in an S3 bucket that will be loaded in your <code>DevEndpoint</code>.</p>
114    pub fn extra_jars_s3_path(&self) -> ::std::option::Option<&str> {
115        self.extra_jars_s3_path.as_deref()
116    }
117    /// <p>The reason for a current failure in this <code>DevEndpoint</code>.</p>
118    pub fn failure_reason(&self) -> ::std::option::Option<&str> {
119        self.failure_reason.as_deref()
120    }
121    /// <p>The name of the <code>SecurityConfiguration</code> structure being used with this <code>DevEndpoint</code>.</p>
122    pub fn security_configuration(&self) -> ::std::option::Option<&str> {
123        self.security_configuration.as_deref()
124    }
125    /// <p>The point in time at which this <code>DevEndpoint</code> was created.</p>
126    pub fn created_timestamp(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
127        self.created_timestamp.as_ref()
128    }
129    /// <p>The map of arguments used to configure this <code>DevEndpoint</code>.</p>
130    /// <p>Valid arguments are:</p>
131    /// <ul>
132    /// <li>
133    /// <p><code>"--enable-glue-datacatalog": ""</code></p></li>
134    /// </ul>
135    /// <p>You can specify a version of Python support for development endpoints by using the <code>Arguments</code> parameter in the <code>CreateDevEndpoint</code> or <code>UpdateDevEndpoint</code> APIs. If no arguments are provided, the version defaults to Python 2.</p>
136    pub fn arguments(&self) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, ::std::string::String>> {
137        self.arguments.as_ref()
138    }
139}
140impl ::aws_types::request_id::RequestId for CreateDevEndpointOutput {
141    fn request_id(&self) -> Option<&str> {
142        self._request_id.as_deref()
143    }
144}
145impl CreateDevEndpointOutput {
146    /// Creates a new builder-style object to manufacture [`CreateDevEndpointOutput`](crate::operation::create_dev_endpoint::CreateDevEndpointOutput).
147    pub fn builder() -> crate::operation::create_dev_endpoint::builders::CreateDevEndpointOutputBuilder {
148        crate::operation::create_dev_endpoint::builders::CreateDevEndpointOutputBuilder::default()
149    }
150}
151
152/// A builder for [`CreateDevEndpointOutput`](crate::operation::create_dev_endpoint::CreateDevEndpointOutput).
153#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
154#[non_exhaustive]
155pub struct CreateDevEndpointOutputBuilder {
156    pub(crate) endpoint_name: ::std::option::Option<::std::string::String>,
157    pub(crate) status: ::std::option::Option<::std::string::String>,
158    pub(crate) security_group_ids: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
159    pub(crate) subnet_id: ::std::option::Option<::std::string::String>,
160    pub(crate) role_arn: ::std::option::Option<::std::string::String>,
161    pub(crate) yarn_endpoint_address: ::std::option::Option<::std::string::String>,
162    pub(crate) zeppelin_remote_spark_interpreter_port: ::std::option::Option<i32>,
163    pub(crate) number_of_nodes: ::std::option::Option<i32>,
164    pub(crate) worker_type: ::std::option::Option<crate::types::WorkerType>,
165    pub(crate) glue_version: ::std::option::Option<::std::string::String>,
166    pub(crate) number_of_workers: ::std::option::Option<i32>,
167    pub(crate) availability_zone: ::std::option::Option<::std::string::String>,
168    pub(crate) vpc_id: ::std::option::Option<::std::string::String>,
169    pub(crate) extra_python_libs_s3_path: ::std::option::Option<::std::string::String>,
170    pub(crate) extra_jars_s3_path: ::std::option::Option<::std::string::String>,
171    pub(crate) failure_reason: ::std::option::Option<::std::string::String>,
172    pub(crate) security_configuration: ::std::option::Option<::std::string::String>,
173    pub(crate) created_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
174    pub(crate) arguments: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
175    _request_id: Option<String>,
176}
177impl CreateDevEndpointOutputBuilder {
178    /// <p>The name assigned to the new <code>DevEndpoint</code>.</p>
179    pub fn endpoint_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
180        self.endpoint_name = ::std::option::Option::Some(input.into());
181        self
182    }
183    /// <p>The name assigned to the new <code>DevEndpoint</code>.</p>
184    pub fn set_endpoint_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
185        self.endpoint_name = input;
186        self
187    }
188    /// <p>The name assigned to the new <code>DevEndpoint</code>.</p>
189    pub fn get_endpoint_name(&self) -> &::std::option::Option<::std::string::String> {
190        &self.endpoint_name
191    }
192    /// <p>The current status of the new <code>DevEndpoint</code>.</p>
193    pub fn status(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
194        self.status = ::std::option::Option::Some(input.into());
195        self
196    }
197    /// <p>The current status of the new <code>DevEndpoint</code>.</p>
198    pub fn set_status(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
199        self.status = input;
200        self
201    }
202    /// <p>The current status of the new <code>DevEndpoint</code>.</p>
203    pub fn get_status(&self) -> &::std::option::Option<::std::string::String> {
204        &self.status
205    }
206    /// Appends an item to `security_group_ids`.
207    ///
208    /// To override the contents of this collection use [`set_security_group_ids`](Self::set_security_group_ids).
209    ///
210    /// <p>The security groups assigned to the new <code>DevEndpoint</code>.</p>
211    pub fn security_group_ids(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
212        let mut v = self.security_group_ids.unwrap_or_default();
213        v.push(input.into());
214        self.security_group_ids = ::std::option::Option::Some(v);
215        self
216    }
217    /// <p>The security groups assigned to the new <code>DevEndpoint</code>.</p>
218    pub fn set_security_group_ids(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
219        self.security_group_ids = input;
220        self
221    }
222    /// <p>The security groups assigned to the new <code>DevEndpoint</code>.</p>
223    pub fn get_security_group_ids(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
224        &self.security_group_ids
225    }
226    /// <p>The subnet ID assigned to the new <code>DevEndpoint</code>.</p>
227    pub fn subnet_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
228        self.subnet_id = ::std::option::Option::Some(input.into());
229        self
230    }
231    /// <p>The subnet ID assigned to the new <code>DevEndpoint</code>.</p>
232    pub fn set_subnet_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
233        self.subnet_id = input;
234        self
235    }
236    /// <p>The subnet ID assigned to the new <code>DevEndpoint</code>.</p>
237    pub fn get_subnet_id(&self) -> &::std::option::Option<::std::string::String> {
238        &self.subnet_id
239    }
240    /// <p>The Amazon Resource Name (ARN) of the role assigned to the new <code>DevEndpoint</code>.</p>
241    pub fn role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
242        self.role_arn = ::std::option::Option::Some(input.into());
243        self
244    }
245    /// <p>The Amazon Resource Name (ARN) of the role assigned to the new <code>DevEndpoint</code>.</p>
246    pub fn set_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
247        self.role_arn = input;
248        self
249    }
250    /// <p>The Amazon Resource Name (ARN) of the role assigned to the new <code>DevEndpoint</code>.</p>
251    pub fn get_role_arn(&self) -> &::std::option::Option<::std::string::String> {
252        &self.role_arn
253    }
254    /// <p>The address of the YARN endpoint used by this <code>DevEndpoint</code>.</p>
255    pub fn yarn_endpoint_address(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
256        self.yarn_endpoint_address = ::std::option::Option::Some(input.into());
257        self
258    }
259    /// <p>The address of the YARN endpoint used by this <code>DevEndpoint</code>.</p>
260    pub fn set_yarn_endpoint_address(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
261        self.yarn_endpoint_address = input;
262        self
263    }
264    /// <p>The address of the YARN endpoint used by this <code>DevEndpoint</code>.</p>
265    pub fn get_yarn_endpoint_address(&self) -> &::std::option::Option<::std::string::String> {
266        &self.yarn_endpoint_address
267    }
268    /// <p>The Apache Zeppelin port for the remote Apache Spark interpreter.</p>
269    pub fn zeppelin_remote_spark_interpreter_port(mut self, input: i32) -> Self {
270        self.zeppelin_remote_spark_interpreter_port = ::std::option::Option::Some(input);
271        self
272    }
273    /// <p>The Apache Zeppelin port for the remote Apache Spark interpreter.</p>
274    pub fn set_zeppelin_remote_spark_interpreter_port(mut self, input: ::std::option::Option<i32>) -> Self {
275        self.zeppelin_remote_spark_interpreter_port = input;
276        self
277    }
278    /// <p>The Apache Zeppelin port for the remote Apache Spark interpreter.</p>
279    pub fn get_zeppelin_remote_spark_interpreter_port(&self) -> &::std::option::Option<i32> {
280        &self.zeppelin_remote_spark_interpreter_port
281    }
282    /// <p>The number of Glue Data Processing Units (DPUs) allocated to this DevEndpoint.</p>
283    pub fn number_of_nodes(mut self, input: i32) -> Self {
284        self.number_of_nodes = ::std::option::Option::Some(input);
285        self
286    }
287    /// <p>The number of Glue Data Processing Units (DPUs) allocated to this DevEndpoint.</p>
288    pub fn set_number_of_nodes(mut self, input: ::std::option::Option<i32>) -> Self {
289        self.number_of_nodes = input;
290        self
291    }
292    /// <p>The number of Glue Data Processing Units (DPUs) allocated to this DevEndpoint.</p>
293    pub fn get_number_of_nodes(&self) -> &::std::option::Option<i32> {
294        &self.number_of_nodes
295    }
296    /// <p>The type of predefined worker that is allocated to the development endpoint. May be a value of Standard, G.1X, or G.2X.</p>
297    pub fn worker_type(mut self, input: crate::types::WorkerType) -> Self {
298        self.worker_type = ::std::option::Option::Some(input);
299        self
300    }
301    /// <p>The type of predefined worker that is allocated to the development endpoint. May be a value of Standard, G.1X, or G.2X.</p>
302    pub fn set_worker_type(mut self, input: ::std::option::Option<crate::types::WorkerType>) -> Self {
303        self.worker_type = input;
304        self
305    }
306    /// <p>The type of predefined worker that is allocated to the development endpoint. May be a value of Standard, G.1X, or G.2X.</p>
307    pub fn get_worker_type(&self) -> &::std::option::Option<crate::types::WorkerType> {
308        &self.worker_type
309    }
310    /// <p>Glue version determines the versions of Apache Spark and Python that Glue supports. The Python version indicates the version supported for running your ETL scripts on development endpoints.</p>
311    /// <p>For more information about the available Glue versions and corresponding Spark and Python versions, see <a href="https://docs.aws.amazon.com/glue/latest/dg/add-job.html">Glue version</a> in the developer guide.</p>
312    pub fn glue_version(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
313        self.glue_version = ::std::option::Option::Some(input.into());
314        self
315    }
316    /// <p>Glue version determines the versions of Apache Spark and Python that Glue supports. The Python version indicates the version supported for running your ETL scripts on development endpoints.</p>
317    /// <p>For more information about the available Glue versions and corresponding Spark and Python versions, see <a href="https://docs.aws.amazon.com/glue/latest/dg/add-job.html">Glue version</a> in the developer guide.</p>
318    pub fn set_glue_version(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
319        self.glue_version = input;
320        self
321    }
322    /// <p>Glue version determines the versions of Apache Spark and Python that Glue supports. The Python version indicates the version supported for running your ETL scripts on development endpoints.</p>
323    /// <p>For more information about the available Glue versions and corresponding Spark and Python versions, see <a href="https://docs.aws.amazon.com/glue/latest/dg/add-job.html">Glue version</a> in the developer guide.</p>
324    pub fn get_glue_version(&self) -> &::std::option::Option<::std::string::String> {
325        &self.glue_version
326    }
327    /// <p>The number of workers of a defined <code>workerType</code> that are allocated to the development endpoint.</p>
328    pub fn number_of_workers(mut self, input: i32) -> Self {
329        self.number_of_workers = ::std::option::Option::Some(input);
330        self
331    }
332    /// <p>The number of workers of a defined <code>workerType</code> that are allocated to the development endpoint.</p>
333    pub fn set_number_of_workers(mut self, input: ::std::option::Option<i32>) -> Self {
334        self.number_of_workers = input;
335        self
336    }
337    /// <p>The number of workers of a defined <code>workerType</code> that are allocated to the development endpoint.</p>
338    pub fn get_number_of_workers(&self) -> &::std::option::Option<i32> {
339        &self.number_of_workers
340    }
341    /// <p>The Amazon Web Services Availability Zone where this <code>DevEndpoint</code> is located.</p>
342    pub fn availability_zone(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
343        self.availability_zone = ::std::option::Option::Some(input.into());
344        self
345    }
346    /// <p>The Amazon Web Services Availability Zone where this <code>DevEndpoint</code> is located.</p>
347    pub fn set_availability_zone(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
348        self.availability_zone = input;
349        self
350    }
351    /// <p>The Amazon Web Services Availability Zone where this <code>DevEndpoint</code> is located.</p>
352    pub fn get_availability_zone(&self) -> &::std::option::Option<::std::string::String> {
353        &self.availability_zone
354    }
355    /// <p>The ID of the virtual private cloud (VPC) used by this <code>DevEndpoint</code>.</p>
356    pub fn vpc_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
357        self.vpc_id = ::std::option::Option::Some(input.into());
358        self
359    }
360    /// <p>The ID of the virtual private cloud (VPC) used by this <code>DevEndpoint</code>.</p>
361    pub fn set_vpc_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
362        self.vpc_id = input;
363        self
364    }
365    /// <p>The ID of the virtual private cloud (VPC) used by this <code>DevEndpoint</code>.</p>
366    pub fn get_vpc_id(&self) -> &::std::option::Option<::std::string::String> {
367        &self.vpc_id
368    }
369    /// <p>The paths to one or more Python libraries in an S3 bucket that will be loaded in your <code>DevEndpoint</code>.</p>
370    pub fn extra_python_libs_s3_path(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
371        self.extra_python_libs_s3_path = ::std::option::Option::Some(input.into());
372        self
373    }
374    /// <p>The paths to one or more Python libraries in an S3 bucket that will be loaded in your <code>DevEndpoint</code>.</p>
375    pub fn set_extra_python_libs_s3_path(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
376        self.extra_python_libs_s3_path = input;
377        self
378    }
379    /// <p>The paths to one or more Python libraries in an S3 bucket that will be loaded in your <code>DevEndpoint</code>.</p>
380    pub fn get_extra_python_libs_s3_path(&self) -> &::std::option::Option<::std::string::String> {
381        &self.extra_python_libs_s3_path
382    }
383    /// <p>Path to one or more Java <code>.jar</code> files in an S3 bucket that will be loaded in your <code>DevEndpoint</code>.</p>
384    pub fn extra_jars_s3_path(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
385        self.extra_jars_s3_path = ::std::option::Option::Some(input.into());
386        self
387    }
388    /// <p>Path to one or more Java <code>.jar</code> files in an S3 bucket that will be loaded in your <code>DevEndpoint</code>.</p>
389    pub fn set_extra_jars_s3_path(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
390        self.extra_jars_s3_path = input;
391        self
392    }
393    /// <p>Path to one or more Java <code>.jar</code> files in an S3 bucket that will be loaded in your <code>DevEndpoint</code>.</p>
394    pub fn get_extra_jars_s3_path(&self) -> &::std::option::Option<::std::string::String> {
395        &self.extra_jars_s3_path
396    }
397    /// <p>The reason for a current failure in this <code>DevEndpoint</code>.</p>
398    pub fn failure_reason(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
399        self.failure_reason = ::std::option::Option::Some(input.into());
400        self
401    }
402    /// <p>The reason for a current failure in this <code>DevEndpoint</code>.</p>
403    pub fn set_failure_reason(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
404        self.failure_reason = input;
405        self
406    }
407    /// <p>The reason for a current failure in this <code>DevEndpoint</code>.</p>
408    pub fn get_failure_reason(&self) -> &::std::option::Option<::std::string::String> {
409        &self.failure_reason
410    }
411    /// <p>The name of the <code>SecurityConfiguration</code> structure being used with this <code>DevEndpoint</code>.</p>
412    pub fn security_configuration(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
413        self.security_configuration = ::std::option::Option::Some(input.into());
414        self
415    }
416    /// <p>The name of the <code>SecurityConfiguration</code> structure being used with this <code>DevEndpoint</code>.</p>
417    pub fn set_security_configuration(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
418        self.security_configuration = input;
419        self
420    }
421    /// <p>The name of the <code>SecurityConfiguration</code> structure being used with this <code>DevEndpoint</code>.</p>
422    pub fn get_security_configuration(&self) -> &::std::option::Option<::std::string::String> {
423        &self.security_configuration
424    }
425    /// <p>The point in time at which this <code>DevEndpoint</code> was created.</p>
426    pub fn created_timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
427        self.created_timestamp = ::std::option::Option::Some(input);
428        self
429    }
430    /// <p>The point in time at which this <code>DevEndpoint</code> was created.</p>
431    pub fn set_created_timestamp(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
432        self.created_timestamp = input;
433        self
434    }
435    /// <p>The point in time at which this <code>DevEndpoint</code> was created.</p>
436    pub fn get_created_timestamp(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
437        &self.created_timestamp
438    }
439    /// Adds a key-value pair to `arguments`.
440    ///
441    /// To override the contents of this collection use [`set_arguments`](Self::set_arguments).
442    ///
443    /// <p>The map of arguments used to configure this <code>DevEndpoint</code>.</p>
444    /// <p>Valid arguments are:</p>
445    /// <ul>
446    /// <li>
447    /// <p><code>"--enable-glue-datacatalog": ""</code></p></li>
448    /// </ul>
449    /// <p>You can specify a version of Python support for development endpoints by using the <code>Arguments</code> parameter in the <code>CreateDevEndpoint</code> or <code>UpdateDevEndpoint</code> APIs. If no arguments are provided, the version defaults to Python 2.</p>
450    pub fn arguments(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
451        let mut hash_map = self.arguments.unwrap_or_default();
452        hash_map.insert(k.into(), v.into());
453        self.arguments = ::std::option::Option::Some(hash_map);
454        self
455    }
456    /// <p>The map of arguments used to configure this <code>DevEndpoint</code>.</p>
457    /// <p>Valid arguments are:</p>
458    /// <ul>
459    /// <li>
460    /// <p><code>"--enable-glue-datacatalog": ""</code></p></li>
461    /// </ul>
462    /// <p>You can specify a version of Python support for development endpoints by using the <code>Arguments</code> parameter in the <code>CreateDevEndpoint</code> or <code>UpdateDevEndpoint</code> APIs. If no arguments are provided, the version defaults to Python 2.</p>
463    pub fn set_arguments(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>) -> Self {
464        self.arguments = input;
465        self
466    }
467    /// <p>The map of arguments used to configure this <code>DevEndpoint</code>.</p>
468    /// <p>Valid arguments are:</p>
469    /// <ul>
470    /// <li>
471    /// <p><code>"--enable-glue-datacatalog": ""</code></p></li>
472    /// </ul>
473    /// <p>You can specify a version of Python support for development endpoints by using the <code>Arguments</code> parameter in the <code>CreateDevEndpoint</code> or <code>UpdateDevEndpoint</code> APIs. If no arguments are provided, the version defaults to Python 2.</p>
474    pub fn get_arguments(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
475        &self.arguments
476    }
477    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
478        self._request_id = Some(request_id.into());
479        self
480    }
481
482    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
483        self._request_id = request_id;
484        self
485    }
486    /// Consumes the builder and constructs a [`CreateDevEndpointOutput`](crate::operation::create_dev_endpoint::CreateDevEndpointOutput).
487    pub fn build(self) -> crate::operation::create_dev_endpoint::CreateDevEndpointOutput {
488        crate::operation::create_dev_endpoint::CreateDevEndpointOutput {
489            endpoint_name: self.endpoint_name,
490            status: self.status,
491            security_group_ids: self.security_group_ids,
492            subnet_id: self.subnet_id,
493            role_arn: self.role_arn,
494            yarn_endpoint_address: self.yarn_endpoint_address,
495            zeppelin_remote_spark_interpreter_port: self.zeppelin_remote_spark_interpreter_port.unwrap_or_default(),
496            number_of_nodes: self.number_of_nodes.unwrap_or_default(),
497            worker_type: self.worker_type,
498            glue_version: self.glue_version,
499            number_of_workers: self.number_of_workers,
500            availability_zone: self.availability_zone,
501            vpc_id: self.vpc_id,
502            extra_python_libs_s3_path: self.extra_python_libs_s3_path,
503            extra_jars_s3_path: self.extra_jars_s3_path,
504            failure_reason: self.failure_reason,
505            security_configuration: self.security_configuration,
506            created_timestamp: self.created_timestamp,
507            arguments: self.arguments,
508            _request_id: self._request_id,
509        }
510    }
511}