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
// 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 CreateGroupOutput {
/// <p>The description of the resource group.</p>
pub group: ::std::option::Option<crate::types::Group>,
/// <p>The resource query associated with the group. For more information about resource queries, see <a href="https://docs.aws.amazon.com/ARG/latest/userguide/gettingstarted-query.html#gettingstarted-query-cli-tag">Create a tag-based group in Resource Groups</a>. </p>
pub resource_query: ::std::option::Option<crate::types::ResourceQuery>,
/// <p>The tags associated with the group.</p>
pub tags: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
/// <p>The service configuration associated with the resource group. For details about the syntax of a service configuration, see <a href="https://docs.aws.amazon.com/ARG/latest/APIReference/about-slg.html">Service configurations for Resource Groups</a>.</p>
pub group_configuration: ::std::option::Option<crate::types::GroupConfiguration>,
_request_id: Option<String>,
}
impl CreateGroupOutput {
/// <p>The description of the resource group.</p>
pub fn group(&self) -> ::std::option::Option<&crate::types::Group> {
self.group.as_ref()
}
/// <p>The resource query associated with the group. For more information about resource queries, see <a href="https://docs.aws.amazon.com/ARG/latest/userguide/gettingstarted-query.html#gettingstarted-query-cli-tag">Create a tag-based group in Resource Groups</a>. </p>
pub fn resource_query(&self) -> ::std::option::Option<&crate::types::ResourceQuery> {
self.resource_query.as_ref()
}
/// <p>The tags associated with the group.</p>
pub fn tags(&self) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, ::std::string::String>> {
self.tags.as_ref()
}
/// <p>The service configuration associated with the resource group. For details about the syntax of a service configuration, see <a href="https://docs.aws.amazon.com/ARG/latest/APIReference/about-slg.html">Service configurations for Resource Groups</a>.</p>
pub fn group_configuration(&self) -> ::std::option::Option<&crate::types::GroupConfiguration> {
self.group_configuration.as_ref()
}
}
impl ::aws_http::request_id::RequestId for CreateGroupOutput {
fn request_id(&self) -> Option<&str> {
self._request_id.as_deref()
}
}
impl CreateGroupOutput {
/// Creates a new builder-style object to manufacture [`CreateGroupOutput`](crate::operation::create_group::CreateGroupOutput).
pub fn builder() -> crate::operation::create_group::builders::CreateGroupOutputBuilder {
crate::operation::create_group::builders::CreateGroupOutputBuilder::default()
}
}
/// A builder for [`CreateGroupOutput`](crate::operation::create_group::CreateGroupOutput).
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
pub struct CreateGroupOutputBuilder {
pub(crate) group: ::std::option::Option<crate::types::Group>,
pub(crate) resource_query: ::std::option::Option<crate::types::ResourceQuery>,
pub(crate) tags: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
pub(crate) group_configuration: ::std::option::Option<crate::types::GroupConfiguration>,
_request_id: Option<String>,
}
impl CreateGroupOutputBuilder {
/// <p>The description of the resource group.</p>
pub fn group(mut self, input: crate::types::Group) -> Self {
self.group = ::std::option::Option::Some(input);
self
}
/// <p>The description of the resource group.</p>
pub fn set_group(mut self, input: ::std::option::Option<crate::types::Group>) -> Self {
self.group = input;
self
}
/// <p>The description of the resource group.</p>
pub fn get_group(&self) -> &::std::option::Option<crate::types::Group> {
&self.group
}
/// <p>The resource query associated with the group. For more information about resource queries, see <a href="https://docs.aws.amazon.com/ARG/latest/userguide/gettingstarted-query.html#gettingstarted-query-cli-tag">Create a tag-based group in Resource Groups</a>. </p>
pub fn resource_query(mut self, input: crate::types::ResourceQuery) -> Self {
self.resource_query = ::std::option::Option::Some(input);
self
}
/// <p>The resource query associated with the group. For more information about resource queries, see <a href="https://docs.aws.amazon.com/ARG/latest/userguide/gettingstarted-query.html#gettingstarted-query-cli-tag">Create a tag-based group in Resource Groups</a>. </p>
pub fn set_resource_query(mut self, input: ::std::option::Option<crate::types::ResourceQuery>) -> Self {
self.resource_query = input;
self
}
/// <p>The resource query associated with the group. For more information about resource queries, see <a href="https://docs.aws.amazon.com/ARG/latest/userguide/gettingstarted-query.html#gettingstarted-query-cli-tag">Create a tag-based group in Resource Groups</a>. </p>
pub fn get_resource_query(&self) -> &::std::option::Option<crate::types::ResourceQuery> {
&self.resource_query
}
/// Adds a key-value pair to `tags`.
///
/// To override the contents of this collection use [`set_tags`](Self::set_tags).
///
/// <p>The tags associated with the group.</p>
pub fn tags(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
let mut hash_map = self.tags.unwrap_or_default();
hash_map.insert(k.into(), v.into());
self.tags = ::std::option::Option::Some(hash_map);
self
}
/// <p>The tags associated with the group.</p>
pub fn set_tags(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>) -> Self {
self.tags = input;
self
}
/// <p>The tags associated with the group.</p>
pub fn get_tags(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
&self.tags
}
/// <p>The service configuration associated with the resource group. For details about the syntax of a service configuration, see <a href="https://docs.aws.amazon.com/ARG/latest/APIReference/about-slg.html">Service configurations for Resource Groups</a>.</p>
pub fn group_configuration(mut self, input: crate::types::GroupConfiguration) -> Self {
self.group_configuration = ::std::option::Option::Some(input);
self
}
/// <p>The service configuration associated with the resource group. For details about the syntax of a service configuration, see <a href="https://docs.aws.amazon.com/ARG/latest/APIReference/about-slg.html">Service configurations for Resource Groups</a>.</p>
pub fn set_group_configuration(mut self, input: ::std::option::Option<crate::types::GroupConfiguration>) -> Self {
self.group_configuration = input;
self
}
/// <p>The service configuration associated with the resource group. For details about the syntax of a service configuration, see <a href="https://docs.aws.amazon.com/ARG/latest/APIReference/about-slg.html">Service configurations for Resource Groups</a>.</p>
pub fn get_group_configuration(&self) -> &::std::option::Option<crate::types::GroupConfiguration> {
&self.group_configuration
}
pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
self._request_id = Some(request_id.into());
self
}
pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
self._request_id = request_id;
self
}
/// Consumes the builder and constructs a [`CreateGroupOutput`](crate::operation::create_group::CreateGroupOutput).
pub fn build(self) -> crate::operation::create_group::CreateGroupOutput {
crate::operation::create_group::CreateGroupOutput {
group: self.group,
resource_query: self.resource_query,
tags: self.tags,
group_configuration: self.group_configuration,
_request_id: self._request_id,
}
}
}