aws_sdk_gameliftstreams/operation/disassociate_applications/
_disassociate_applications_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 DisassociateApplicationsOutput {
6    /// <p>An <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html">Amazon Resource Name (ARN)</a> that uniquely identifies the stream group resource. Example ARN: <code>arn:aws:gameliftstreams:us-west-2:111122223333:streamgroup/sg-1AB2C3De4</code>.</p>
7    pub arn: ::std::option::Option<::std::string::String>,
8    /// <p>A set of applications that are disassociated from this stream group.</p>
9    /// <p>This value is a set of <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html">Amazon Resource Names (ARNs)</a> that uniquely identify application resources. Example ARN: <code>arn:aws:gameliftstreams:us-west-2:111122223333:application/a-9ZY8X7Wv6</code>.</p>
10    pub application_arns: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
11    _request_id: Option<String>,
12}
13impl DisassociateApplicationsOutput {
14    /// <p>An <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html">Amazon Resource Name (ARN)</a> that uniquely identifies the stream group resource. Example ARN: <code>arn:aws:gameliftstreams:us-west-2:111122223333:streamgroup/sg-1AB2C3De4</code>.</p>
15    pub fn arn(&self) -> ::std::option::Option<&str> {
16        self.arn.as_deref()
17    }
18    /// <p>A set of applications that are disassociated from this stream group.</p>
19    /// <p>This value is a set of <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html">Amazon Resource Names (ARNs)</a> that uniquely identify application resources. Example ARN: <code>arn:aws:gameliftstreams:us-west-2:111122223333:application/a-9ZY8X7Wv6</code>.</p>
20    ///
21    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.application_arns.is_none()`.
22    pub fn application_arns(&self) -> &[::std::string::String] {
23        self.application_arns.as_deref().unwrap_or_default()
24    }
25}
26impl ::aws_types::request_id::RequestId for DisassociateApplicationsOutput {
27    fn request_id(&self) -> Option<&str> {
28        self._request_id.as_deref()
29    }
30}
31impl DisassociateApplicationsOutput {
32    /// Creates a new builder-style object to manufacture [`DisassociateApplicationsOutput`](crate::operation::disassociate_applications::DisassociateApplicationsOutput).
33    pub fn builder() -> crate::operation::disassociate_applications::builders::DisassociateApplicationsOutputBuilder {
34        crate::operation::disassociate_applications::builders::DisassociateApplicationsOutputBuilder::default()
35    }
36}
37
38/// A builder for [`DisassociateApplicationsOutput`](crate::operation::disassociate_applications::DisassociateApplicationsOutput).
39#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
40#[non_exhaustive]
41pub struct DisassociateApplicationsOutputBuilder {
42    pub(crate) arn: ::std::option::Option<::std::string::String>,
43    pub(crate) application_arns: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
44    _request_id: Option<String>,
45}
46impl DisassociateApplicationsOutputBuilder {
47    /// <p>An <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html">Amazon Resource Name (ARN)</a> that uniquely identifies the stream group resource. Example ARN: <code>arn:aws:gameliftstreams:us-west-2:111122223333:streamgroup/sg-1AB2C3De4</code>.</p>
48    pub fn arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
49        self.arn = ::std::option::Option::Some(input.into());
50        self
51    }
52    /// <p>An <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html">Amazon Resource Name (ARN)</a> that uniquely identifies the stream group resource. Example ARN: <code>arn:aws:gameliftstreams:us-west-2:111122223333:streamgroup/sg-1AB2C3De4</code>.</p>
53    pub fn set_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
54        self.arn = input;
55        self
56    }
57    /// <p>An <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html">Amazon Resource Name (ARN)</a> that uniquely identifies the stream group resource. Example ARN: <code>arn:aws:gameliftstreams:us-west-2:111122223333:streamgroup/sg-1AB2C3De4</code>.</p>
58    pub fn get_arn(&self) -> &::std::option::Option<::std::string::String> {
59        &self.arn
60    }
61    /// Appends an item to `application_arns`.
62    ///
63    /// To override the contents of this collection use [`set_application_arns`](Self::set_application_arns).
64    ///
65    /// <p>A set of applications that are disassociated from this stream group.</p>
66    /// <p>This value is a set of <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html">Amazon Resource Names (ARNs)</a> that uniquely identify application resources. Example ARN: <code>arn:aws:gameliftstreams:us-west-2:111122223333:application/a-9ZY8X7Wv6</code>.</p>
67    pub fn application_arns(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
68        let mut v = self.application_arns.unwrap_or_default();
69        v.push(input.into());
70        self.application_arns = ::std::option::Option::Some(v);
71        self
72    }
73    /// <p>A set of applications that are disassociated from this stream group.</p>
74    /// <p>This value is a set of <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html">Amazon Resource Names (ARNs)</a> that uniquely identify application resources. Example ARN: <code>arn:aws:gameliftstreams:us-west-2:111122223333:application/a-9ZY8X7Wv6</code>.</p>
75    pub fn set_application_arns(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
76        self.application_arns = input;
77        self
78    }
79    /// <p>A set of applications that are disassociated from this stream group.</p>
80    /// <p>This value is a set of <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html">Amazon Resource Names (ARNs)</a> that uniquely identify application resources. Example ARN: <code>arn:aws:gameliftstreams:us-west-2:111122223333:application/a-9ZY8X7Wv6</code>.</p>
81    pub fn get_application_arns(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
82        &self.application_arns
83    }
84    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
85        self._request_id = Some(request_id.into());
86        self
87    }
88
89    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
90        self._request_id = request_id;
91        self
92    }
93    /// Consumes the builder and constructs a [`DisassociateApplicationsOutput`](crate::operation::disassociate_applications::DisassociateApplicationsOutput).
94    pub fn build(self) -> crate::operation::disassociate_applications::DisassociateApplicationsOutput {
95        crate::operation::disassociate_applications::DisassociateApplicationsOutput {
96            arn: self.arn,
97            application_arns: self.application_arns,
98            _request_id: self._request_id,
99        }
100    }
101}