#[allow(missing_docs)] #[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq)]
pub struct UpdateStudioComponentInput {
pub client_token: ::std::option::Option<::std::string::String>,
pub configuration: ::std::option::Option<crate::types::StudioComponentConfiguration>,
pub description: ::std::option::Option<::std::string::String>,
pub ec2_security_group_ids: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
pub initialization_scripts: ::std::option::Option<::std::vec::Vec<crate::types::StudioComponentInitializationScript>>,
pub name: ::std::option::Option<::std::string::String>,
pub script_parameters: ::std::option::Option<::std::vec::Vec<crate::types::ScriptParameterKeyValue>>,
pub studio_component_id: ::std::option::Option<::std::string::String>,
pub studio_id: ::std::option::Option<::std::string::String>,
pub subtype: ::std::option::Option<crate::types::StudioComponentSubtype>,
pub r#type: ::std::option::Option<crate::types::StudioComponentType>,
pub secure_initialization_role_arn: ::std::option::Option<::std::string::String>,
pub runtime_role_arn: ::std::option::Option<::std::string::String>,
}
impl UpdateStudioComponentInput {
pub fn client_token(&self) -> ::std::option::Option<&str> {
self.client_token.as_deref()
}
pub fn configuration(&self) -> ::std::option::Option<&crate::types::StudioComponentConfiguration> {
self.configuration.as_ref()
}
pub fn description(&self) -> ::std::option::Option<&str> {
self.description.as_deref()
}
pub fn ec2_security_group_ids(&self) -> &[::std::string::String] {
self.ec2_security_group_ids.as_deref().unwrap_or_default()
}
pub fn initialization_scripts(&self) -> &[crate::types::StudioComponentInitializationScript] {
self.initialization_scripts.as_deref().unwrap_or_default()
}
pub fn name(&self) -> ::std::option::Option<&str> {
self.name.as_deref()
}
pub fn script_parameters(&self) -> &[crate::types::ScriptParameterKeyValue] {
self.script_parameters.as_deref().unwrap_or_default()
}
pub fn studio_component_id(&self) -> ::std::option::Option<&str> {
self.studio_component_id.as_deref()
}
pub fn studio_id(&self) -> ::std::option::Option<&str> {
self.studio_id.as_deref()
}
pub fn subtype(&self) -> ::std::option::Option<&crate::types::StudioComponentSubtype> {
self.subtype.as_ref()
}
pub fn r#type(&self) -> ::std::option::Option<&crate::types::StudioComponentType> {
self.r#type.as_ref()
}
pub fn secure_initialization_role_arn(&self) -> ::std::option::Option<&str> {
self.secure_initialization_role_arn.as_deref()
}
pub fn runtime_role_arn(&self) -> ::std::option::Option<&str> {
self.runtime_role_arn.as_deref()
}
}
impl ::std::fmt::Debug for UpdateStudioComponentInput {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
let mut formatter = f.debug_struct("UpdateStudioComponentInput");
formatter.field("client_token", &self.client_token);
formatter.field("configuration", &self.configuration);
formatter.field("description", &"*** Sensitive Data Redacted ***");
formatter.field("ec2_security_group_ids", &self.ec2_security_group_ids);
formatter.field("initialization_scripts", &self.initialization_scripts);
formatter.field("name", &"*** Sensitive Data Redacted ***");
formatter.field("script_parameters", &"*** Sensitive Data Redacted ***");
formatter.field("studio_component_id", &self.studio_component_id);
formatter.field("studio_id", &self.studio_id);
formatter.field("subtype", &self.subtype);
formatter.field("r#type", &self.r#type);
formatter.field("secure_initialization_role_arn", &self.secure_initialization_role_arn);
formatter.field("runtime_role_arn", &self.runtime_role_arn);
formatter.finish()
}
}
impl UpdateStudioComponentInput {
pub fn builder() -> crate::operation::update_studio_component::builders::UpdateStudioComponentInputBuilder {
crate::operation::update_studio_component::builders::UpdateStudioComponentInputBuilder::default()
}
}
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
#[non_exhaustive]
pub struct UpdateStudioComponentInputBuilder {
pub(crate) client_token: ::std::option::Option<::std::string::String>,
pub(crate) configuration: ::std::option::Option<crate::types::StudioComponentConfiguration>,
pub(crate) description: ::std::option::Option<::std::string::String>,
pub(crate) ec2_security_group_ids: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
pub(crate) initialization_scripts: ::std::option::Option<::std::vec::Vec<crate::types::StudioComponentInitializationScript>>,
pub(crate) name: ::std::option::Option<::std::string::String>,
pub(crate) script_parameters: ::std::option::Option<::std::vec::Vec<crate::types::ScriptParameterKeyValue>>,
pub(crate) studio_component_id: ::std::option::Option<::std::string::String>,
pub(crate) studio_id: ::std::option::Option<::std::string::String>,
pub(crate) subtype: ::std::option::Option<crate::types::StudioComponentSubtype>,
pub(crate) r#type: ::std::option::Option<crate::types::StudioComponentType>,
pub(crate) secure_initialization_role_arn: ::std::option::Option<::std::string::String>,
pub(crate) runtime_role_arn: ::std::option::Option<::std::string::String>,
}
impl UpdateStudioComponentInputBuilder {
pub fn client_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.client_token = ::std::option::Option::Some(input.into());
self
}
pub fn set_client_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.client_token = input;
self
}
pub fn get_client_token(&self) -> &::std::option::Option<::std::string::String> {
&self.client_token
}
pub fn configuration(mut self, input: crate::types::StudioComponentConfiguration) -> Self {
self.configuration = ::std::option::Option::Some(input);
self
}
pub fn set_configuration(mut self, input: ::std::option::Option<crate::types::StudioComponentConfiguration>) -> Self {
self.configuration = input;
self
}
pub fn get_configuration(&self) -> &::std::option::Option<crate::types::StudioComponentConfiguration> {
&self.configuration
}
pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.description = ::std::option::Option::Some(input.into());
self
}
pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.description = input;
self
}
pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
&self.description
}
pub fn ec2_security_group_ids(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
let mut v = self.ec2_security_group_ids.unwrap_or_default();
v.push(input.into());
self.ec2_security_group_ids = ::std::option::Option::Some(v);
self
}
pub fn set_ec2_security_group_ids(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
self.ec2_security_group_ids = input;
self
}
pub fn get_ec2_security_group_ids(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
&self.ec2_security_group_ids
}
pub fn initialization_scripts(mut self, input: crate::types::StudioComponentInitializationScript) -> Self {
let mut v = self.initialization_scripts.unwrap_or_default();
v.push(input);
self.initialization_scripts = ::std::option::Option::Some(v);
self
}
pub fn set_initialization_scripts(
mut self,
input: ::std::option::Option<::std::vec::Vec<crate::types::StudioComponentInitializationScript>>,
) -> Self {
self.initialization_scripts = input;
self
}
pub fn get_initialization_scripts(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::StudioComponentInitializationScript>> {
&self.initialization_scripts
}
pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.name = ::std::option::Option::Some(input.into());
self
}
pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.name = input;
self
}
pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
&self.name
}
pub fn script_parameters(mut self, input: crate::types::ScriptParameterKeyValue) -> Self {
let mut v = self.script_parameters.unwrap_or_default();
v.push(input);
self.script_parameters = ::std::option::Option::Some(v);
self
}
pub fn set_script_parameters(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::ScriptParameterKeyValue>>) -> Self {
self.script_parameters = input;
self
}
pub fn get_script_parameters(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::ScriptParameterKeyValue>> {
&self.script_parameters
}
pub fn studio_component_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.studio_component_id = ::std::option::Option::Some(input.into());
self
}
pub fn set_studio_component_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.studio_component_id = input;
self
}
pub fn get_studio_component_id(&self) -> &::std::option::Option<::std::string::String> {
&self.studio_component_id
}
pub fn studio_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.studio_id = ::std::option::Option::Some(input.into());
self
}
pub fn set_studio_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.studio_id = input;
self
}
pub fn get_studio_id(&self) -> &::std::option::Option<::std::string::String> {
&self.studio_id
}
pub fn subtype(mut self, input: crate::types::StudioComponentSubtype) -> Self {
self.subtype = ::std::option::Option::Some(input);
self
}
pub fn set_subtype(mut self, input: ::std::option::Option<crate::types::StudioComponentSubtype>) -> Self {
self.subtype = input;
self
}
pub fn get_subtype(&self) -> &::std::option::Option<crate::types::StudioComponentSubtype> {
&self.subtype
}
pub fn r#type(mut self, input: crate::types::StudioComponentType) -> Self {
self.r#type = ::std::option::Option::Some(input);
self
}
pub fn set_type(mut self, input: ::std::option::Option<crate::types::StudioComponentType>) -> Self {
self.r#type = input;
self
}
pub fn get_type(&self) -> &::std::option::Option<crate::types::StudioComponentType> {
&self.r#type
}
pub fn secure_initialization_role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.secure_initialization_role_arn = ::std::option::Option::Some(input.into());
self
}
pub fn set_secure_initialization_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.secure_initialization_role_arn = input;
self
}
pub fn get_secure_initialization_role_arn(&self) -> &::std::option::Option<::std::string::String> {
&self.secure_initialization_role_arn
}
pub fn runtime_role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.runtime_role_arn = ::std::option::Option::Some(input.into());
self
}
pub fn set_runtime_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.runtime_role_arn = input;
self
}
pub fn get_runtime_role_arn(&self) -> &::std::option::Option<::std::string::String> {
&self.runtime_role_arn
}
pub fn build(
self,
) -> ::std::result::Result<crate::operation::update_studio_component::UpdateStudioComponentInput, ::aws_smithy_types::error::operation::BuildError>
{
::std::result::Result::Ok(crate::operation::update_studio_component::UpdateStudioComponentInput {
client_token: self.client_token,
configuration: self.configuration,
description: self.description,
ec2_security_group_ids: self.ec2_security_group_ids,
initialization_scripts: self.initialization_scripts,
name: self.name,
script_parameters: self.script_parameters,
studio_component_id: self.studio_component_id,
studio_id: self.studio_id,
subtype: self.subtype,
r#type: self.r#type,
secure_initialization_role_arn: self.secure_initialization_role_arn,
runtime_role_arn: self.runtime_role_arn,
})
}
}
impl ::std::fmt::Debug for UpdateStudioComponentInputBuilder {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
let mut formatter = f.debug_struct("UpdateStudioComponentInputBuilder");
formatter.field("client_token", &self.client_token);
formatter.field("configuration", &self.configuration);
formatter.field("description", &"*** Sensitive Data Redacted ***");
formatter.field("ec2_security_group_ids", &self.ec2_security_group_ids);
formatter.field("initialization_scripts", &self.initialization_scripts);
formatter.field("name", &"*** Sensitive Data Redacted ***");
formatter.field("script_parameters", &"*** Sensitive Data Redacted ***");
formatter.field("studio_component_id", &self.studio_component_id);
formatter.field("studio_id", &self.studio_id);
formatter.field("subtype", &self.subtype);
formatter.field("r#type", &self.r#type);
formatter.field("secure_initialization_role_arn", &self.secure_initialization_role_arn);
formatter.field("runtime_role_arn", &self.runtime_role_arn);
formatter.finish()
}
}