aws-sdk-iam 1.109.0

AWS SDK for AWS Identity and Access Management
Documentation
// 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 UpdateServerCertificateInput {
    /// <p>The name of the server certificate that you want to update.</p>
    /// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
    pub server_certificate_name: ::std::option::Option<::std::string::String>,
    /// <p>The new path for the server certificate. Include this only if you are updating the server certificate's path.</p>
    /// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (<code>\u0021</code>) through the DEL character (<code>\u007F</code>), including most punctuation characters, digits, and upper and lowercased letters.</p>
    pub new_path: ::std::option::Option<::std::string::String>,
    /// <p>The new name for the server certificate. Include this only if you are updating the server certificate's name. The name of the certificate cannot contain any spaces.</p>
    /// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
    pub new_server_certificate_name: ::std::option::Option<::std::string::String>,
}
impl UpdateServerCertificateInput {
    /// <p>The name of the server certificate that you want to update.</p>
    /// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
    pub fn server_certificate_name(&self) -> ::std::option::Option<&str> {
        self.server_certificate_name.as_deref()
    }
    /// <p>The new path for the server certificate. Include this only if you are updating the server certificate's path.</p>
    /// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (<code>\u0021</code>) through the DEL character (<code>\u007F</code>), including most punctuation characters, digits, and upper and lowercased letters.</p>
    pub fn new_path(&self) -> ::std::option::Option<&str> {
        self.new_path.as_deref()
    }
    /// <p>The new name for the server certificate. Include this only if you are updating the server certificate's name. The name of the certificate cannot contain any spaces.</p>
    /// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
    pub fn new_server_certificate_name(&self) -> ::std::option::Option<&str> {
        self.new_server_certificate_name.as_deref()
    }
}
impl UpdateServerCertificateInput {
    /// Creates a new builder-style object to manufacture [`UpdateServerCertificateInput`](crate::operation::update_server_certificate::UpdateServerCertificateInput).
    pub fn builder() -> crate::operation::update_server_certificate::builders::UpdateServerCertificateInputBuilder {
        crate::operation::update_server_certificate::builders::UpdateServerCertificateInputBuilder::default()
    }
}

/// A builder for [`UpdateServerCertificateInput`](crate::operation::update_server_certificate::UpdateServerCertificateInput).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct UpdateServerCertificateInputBuilder {
    pub(crate) server_certificate_name: ::std::option::Option<::std::string::String>,
    pub(crate) new_path: ::std::option::Option<::std::string::String>,
    pub(crate) new_server_certificate_name: ::std::option::Option<::std::string::String>,
}
impl UpdateServerCertificateInputBuilder {
    /// <p>The name of the server certificate that you want to update.</p>
    /// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
    /// This field is required.
    pub fn server_certificate_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.server_certificate_name = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The name of the server certificate that you want to update.</p>
    /// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
    pub fn set_server_certificate_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.server_certificate_name = input;
        self
    }
    /// <p>The name of the server certificate that you want to update.</p>
    /// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
    pub fn get_server_certificate_name(&self) -> &::std::option::Option<::std::string::String> {
        &self.server_certificate_name
    }
    /// <p>The new path for the server certificate. Include this only if you are updating the server certificate's path.</p>
    /// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (<code>\u0021</code>) through the DEL character (<code>\u007F</code>), including most punctuation characters, digits, and upper and lowercased letters.</p>
    pub fn new_path(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.new_path = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The new path for the server certificate. Include this only if you are updating the server certificate's path.</p>
    /// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (<code>\u0021</code>) through the DEL character (<code>\u007F</code>), including most punctuation characters, digits, and upper and lowercased letters.</p>
    pub fn set_new_path(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.new_path = input;
        self
    }
    /// <p>The new path for the server certificate. Include this only if you are updating the server certificate's path.</p>
    /// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (<code>\u0021</code>) through the DEL character (<code>\u007F</code>), including most punctuation characters, digits, and upper and lowercased letters.</p>
    pub fn get_new_path(&self) -> &::std::option::Option<::std::string::String> {
        &self.new_path
    }
    /// <p>The new name for the server certificate. Include this only if you are updating the server certificate's name. The name of the certificate cannot contain any spaces.</p>
    /// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
    pub fn new_server_certificate_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.new_server_certificate_name = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The new name for the server certificate. Include this only if you are updating the server certificate's name. The name of the certificate cannot contain any spaces.</p>
    /// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
    pub fn set_new_server_certificate_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.new_server_certificate_name = input;
        self
    }
    /// <p>The new name for the server certificate. Include this only if you are updating the server certificate's name. The name of the certificate cannot contain any spaces.</p>
    /// <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
    pub fn get_new_server_certificate_name(&self) -> &::std::option::Option<::std::string::String> {
        &self.new_server_certificate_name
    }
    /// Consumes the builder and constructs a [`UpdateServerCertificateInput`](crate::operation::update_server_certificate::UpdateServerCertificateInput).
    pub fn build(
        self,
    ) -> ::std::result::Result<
        crate::operation::update_server_certificate::UpdateServerCertificateInput,
        ::aws_smithy_types::error::operation::BuildError,
    > {
        ::std::result::Result::Ok(crate::operation::update_server_certificate::UpdateServerCertificateInput {
            server_certificate_name: self.server_certificate_name,
            new_path: self.new_path,
            new_server_certificate_name: self.new_server_certificate_name,
        })
    }
}