aws_sdk_iot/operation/describe_endpoint/
_describe_endpoint_input.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2
3/// <p>The input for the DescribeEndpoint operation.</p>
4#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct DescribeEndpointInput {
7    /// <p>The endpoint type. Valid endpoint types include:</p>
8    /// <ul>
9    /// <li>
10    /// <p><code>iot:Data</code> - Returns a VeriSign signed data endpoint.</p></li>
11    /// </ul>
12    /// <ul>
13    /// <li>
14    /// <p><code>iot:Data-ATS</code> - Returns an ATS signed data endpoint.</p></li>
15    /// </ul>
16    /// <ul>
17    /// <li>
18    /// <p><code>iot:CredentialProvider</code> - Returns an IoT credentials provider API endpoint.</p></li>
19    /// </ul>
20    /// <ul>
21    /// <li>
22    /// <p><code>iot:Jobs</code> - Returns an IoT device management Jobs API endpoint.</p></li>
23    /// </ul>
24    /// <p>We strongly recommend that customers use the newer <code>iot:Data-ATS</code> endpoint type to avoid issues related to the widespread distrust of Symantec certificate authorities. ATS Signed Certificates are more secure and are trusted by most popular browsers.</p>
25    pub endpoint_type: ::std::option::Option<::std::string::String>,
26}
27impl DescribeEndpointInput {
28    /// <p>The endpoint type. Valid endpoint types include:</p>
29    /// <ul>
30    /// <li>
31    /// <p><code>iot:Data</code> - Returns a VeriSign signed data endpoint.</p></li>
32    /// </ul>
33    /// <ul>
34    /// <li>
35    /// <p><code>iot:Data-ATS</code> - Returns an ATS signed data endpoint.</p></li>
36    /// </ul>
37    /// <ul>
38    /// <li>
39    /// <p><code>iot:CredentialProvider</code> - Returns an IoT credentials provider API endpoint.</p></li>
40    /// </ul>
41    /// <ul>
42    /// <li>
43    /// <p><code>iot:Jobs</code> - Returns an IoT device management Jobs API endpoint.</p></li>
44    /// </ul>
45    /// <p>We strongly recommend that customers use the newer <code>iot:Data-ATS</code> endpoint type to avoid issues related to the widespread distrust of Symantec certificate authorities. ATS Signed Certificates are more secure and are trusted by most popular browsers.</p>
46    pub fn endpoint_type(&self) -> ::std::option::Option<&str> {
47        self.endpoint_type.as_deref()
48    }
49}
50impl DescribeEndpointInput {
51    /// Creates a new builder-style object to manufacture [`DescribeEndpointInput`](crate::operation::describe_endpoint::DescribeEndpointInput).
52    pub fn builder() -> crate::operation::describe_endpoint::builders::DescribeEndpointInputBuilder {
53        crate::operation::describe_endpoint::builders::DescribeEndpointInputBuilder::default()
54    }
55}
56
57/// A builder for [`DescribeEndpointInput`](crate::operation::describe_endpoint::DescribeEndpointInput).
58#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
59#[non_exhaustive]
60pub struct DescribeEndpointInputBuilder {
61    pub(crate) endpoint_type: ::std::option::Option<::std::string::String>,
62}
63impl DescribeEndpointInputBuilder {
64    /// <p>The endpoint type. Valid endpoint types include:</p>
65    /// <ul>
66    /// <li>
67    /// <p><code>iot:Data</code> - Returns a VeriSign signed data endpoint.</p></li>
68    /// </ul>
69    /// <ul>
70    /// <li>
71    /// <p><code>iot:Data-ATS</code> - Returns an ATS signed data endpoint.</p></li>
72    /// </ul>
73    /// <ul>
74    /// <li>
75    /// <p><code>iot:CredentialProvider</code> - Returns an IoT credentials provider API endpoint.</p></li>
76    /// </ul>
77    /// <ul>
78    /// <li>
79    /// <p><code>iot:Jobs</code> - Returns an IoT device management Jobs API endpoint.</p></li>
80    /// </ul>
81    /// <p>We strongly recommend that customers use the newer <code>iot:Data-ATS</code> endpoint type to avoid issues related to the widespread distrust of Symantec certificate authorities. ATS Signed Certificates are more secure and are trusted by most popular browsers.</p>
82    pub fn endpoint_type(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
83        self.endpoint_type = ::std::option::Option::Some(input.into());
84        self
85    }
86    /// <p>The endpoint type. Valid endpoint types include:</p>
87    /// <ul>
88    /// <li>
89    /// <p><code>iot:Data</code> - Returns a VeriSign signed data endpoint.</p></li>
90    /// </ul>
91    /// <ul>
92    /// <li>
93    /// <p><code>iot:Data-ATS</code> - Returns an ATS signed data endpoint.</p></li>
94    /// </ul>
95    /// <ul>
96    /// <li>
97    /// <p><code>iot:CredentialProvider</code> - Returns an IoT credentials provider API endpoint.</p></li>
98    /// </ul>
99    /// <ul>
100    /// <li>
101    /// <p><code>iot:Jobs</code> - Returns an IoT device management Jobs API endpoint.</p></li>
102    /// </ul>
103    /// <p>We strongly recommend that customers use the newer <code>iot:Data-ATS</code> endpoint type to avoid issues related to the widespread distrust of Symantec certificate authorities. ATS Signed Certificates are more secure and are trusted by most popular browsers.</p>
104    pub fn set_endpoint_type(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
105        self.endpoint_type = input;
106        self
107    }
108    /// <p>The endpoint type. Valid endpoint types include:</p>
109    /// <ul>
110    /// <li>
111    /// <p><code>iot:Data</code> - Returns a VeriSign signed data endpoint.</p></li>
112    /// </ul>
113    /// <ul>
114    /// <li>
115    /// <p><code>iot:Data-ATS</code> - Returns an ATS signed data endpoint.</p></li>
116    /// </ul>
117    /// <ul>
118    /// <li>
119    /// <p><code>iot:CredentialProvider</code> - Returns an IoT credentials provider API endpoint.</p></li>
120    /// </ul>
121    /// <ul>
122    /// <li>
123    /// <p><code>iot:Jobs</code> - Returns an IoT device management Jobs API endpoint.</p></li>
124    /// </ul>
125    /// <p>We strongly recommend that customers use the newer <code>iot:Data-ATS</code> endpoint type to avoid issues related to the widespread distrust of Symantec certificate authorities. ATS Signed Certificates are more secure and are trusted by most popular browsers.</p>
126    pub fn get_endpoint_type(&self) -> &::std::option::Option<::std::string::String> {
127        &self.endpoint_type
128    }
129    /// Consumes the builder and constructs a [`DescribeEndpointInput`](crate::operation::describe_endpoint::DescribeEndpointInput).
130    pub fn build(
131        self,
132    ) -> ::std::result::Result<crate::operation::describe_endpoint::DescribeEndpointInput, ::aws_smithy_types::error::operation::BuildError> {
133        ::std::result::Result::Ok(crate::operation::describe_endpoint::DescribeEndpointInput {
134            endpoint_type: self.endpoint_type,
135        })
136    }
137}