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 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190
// 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 CreateAliasInput {
/// <p>The name or ARN of the Lambda function.</p>
/// <p class="title"><b>Name formats</b></p>
/// <ul>
/// <li>
/// <p><b>Function name</b> - <code>MyFunction</code>.</p></li>
/// <li>
/// <p><b>Function ARN</b> - <code>arn:aws:lambda:us-west-2:123456789012:function:MyFunction</code>.</p></li>
/// <li>
/// <p><b>Partial ARN</b> - <code>123456789012:function:MyFunction</code>.</p></li>
/// </ul>
/// <p>The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.</p>
pub function_name: ::std::option::Option<::std::string::String>,
/// <p>The name of the alias.</p>
pub name: ::std::option::Option<::std::string::String>,
/// <p>The function version that the alias invokes.</p>
pub function_version: ::std::option::Option<::std::string::String>,
/// <p>A description of the alias.</p>
pub description: ::std::option::Option<::std::string::String>,
/// <p>The <a href="https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html#configuring-alias-routing">routing configuration</a> of the alias.</p>
pub routing_config: ::std::option::Option<crate::types::AliasRoutingConfiguration>,
}
impl CreateAliasInput {
/// <p>The name or ARN of the Lambda function.</p>
/// <p class="title"><b>Name formats</b></p>
/// <ul>
/// <li>
/// <p><b>Function name</b> - <code>MyFunction</code>.</p></li>
/// <li>
/// <p><b>Function ARN</b> - <code>arn:aws:lambda:us-west-2:123456789012:function:MyFunction</code>.</p></li>
/// <li>
/// <p><b>Partial ARN</b> - <code>123456789012:function:MyFunction</code>.</p></li>
/// </ul>
/// <p>The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.</p>
pub fn function_name(&self) -> ::std::option::Option<&str> {
self.function_name.as_deref()
}
/// <p>The name of the alias.</p>
pub fn name(&self) -> ::std::option::Option<&str> {
self.name.as_deref()
}
/// <p>The function version that the alias invokes.</p>
pub fn function_version(&self) -> ::std::option::Option<&str> {
self.function_version.as_deref()
}
/// <p>A description of the alias.</p>
pub fn description(&self) -> ::std::option::Option<&str> {
self.description.as_deref()
}
/// <p>The <a href="https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html#configuring-alias-routing">routing configuration</a> of the alias.</p>
pub fn routing_config(&self) -> ::std::option::Option<&crate::types::AliasRoutingConfiguration> {
self.routing_config.as_ref()
}
}
impl CreateAliasInput {
/// Creates a new builder-style object to manufacture [`CreateAliasInput`](crate::operation::create_alias::CreateAliasInput).
pub fn builder() -> crate::operation::create_alias::builders::CreateAliasInputBuilder {
crate::operation::create_alias::builders::CreateAliasInputBuilder::default()
}
}
/// A builder for [`CreateAliasInput`](crate::operation::create_alias::CreateAliasInput).
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
pub struct CreateAliasInputBuilder {
pub(crate) function_name: ::std::option::Option<::std::string::String>,
pub(crate) name: ::std::option::Option<::std::string::String>,
pub(crate) function_version: ::std::option::Option<::std::string::String>,
pub(crate) description: ::std::option::Option<::std::string::String>,
pub(crate) routing_config: ::std::option::Option<crate::types::AliasRoutingConfiguration>,
}
impl CreateAliasInputBuilder {
/// <p>The name or ARN of the Lambda function.</p>
/// <p class="title"><b>Name formats</b></p>
/// <ul>
/// <li>
/// <p><b>Function name</b> - <code>MyFunction</code>.</p></li>
/// <li>
/// <p><b>Function ARN</b> - <code>arn:aws:lambda:us-west-2:123456789012:function:MyFunction</code>.</p></li>
/// <li>
/// <p><b>Partial ARN</b> - <code>123456789012:function:MyFunction</code>.</p></li>
/// </ul>
/// <p>The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.</p>
/// This field is required.
pub fn function_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.function_name = ::std::option::Option::Some(input.into());
self
}
/// <p>The name or ARN of the Lambda function.</p>
/// <p class="title"><b>Name formats</b></p>
/// <ul>
/// <li>
/// <p><b>Function name</b> - <code>MyFunction</code>.</p></li>
/// <li>
/// <p><b>Function ARN</b> - <code>arn:aws:lambda:us-west-2:123456789012:function:MyFunction</code>.</p></li>
/// <li>
/// <p><b>Partial ARN</b> - <code>123456789012:function:MyFunction</code>.</p></li>
/// </ul>
/// <p>The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.</p>
pub fn set_function_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.function_name = input;
self
}
/// <p>The name or ARN of the Lambda function.</p>
/// <p class="title"><b>Name formats</b></p>
/// <ul>
/// <li>
/// <p><b>Function name</b> - <code>MyFunction</code>.</p></li>
/// <li>
/// <p><b>Function ARN</b> - <code>arn:aws:lambda:us-west-2:123456789012:function:MyFunction</code>.</p></li>
/// <li>
/// <p><b>Partial ARN</b> - <code>123456789012:function:MyFunction</code>.</p></li>
/// </ul>
/// <p>The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.</p>
pub fn get_function_name(&self) -> &::std::option::Option<::std::string::String> {
&self.function_name
}
/// <p>The name of the alias.</p>
/// This field is required.
pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.name = ::std::option::Option::Some(input.into());
self
}
/// <p>The name of the alias.</p>
pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.name = input;
self
}
/// <p>The name of the alias.</p>
pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
&self.name
}
/// <p>The function version that the alias invokes.</p>
/// This field is required.
pub fn function_version(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.function_version = ::std::option::Option::Some(input.into());
self
}
/// <p>The function version that the alias invokes.</p>
pub fn set_function_version(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.function_version = input;
self
}
/// <p>The function version that the alias invokes.</p>
pub fn get_function_version(&self) -> &::std::option::Option<::std::string::String> {
&self.function_version
}
/// <p>A description of the alias.</p>
pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.description = ::std::option::Option::Some(input.into());
self
}
/// <p>A description of the alias.</p>
pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.description = input;
self
}
/// <p>A description of the alias.</p>
pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
&self.description
}
/// <p>The <a href="https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html#configuring-alias-routing">routing configuration</a> of the alias.</p>
pub fn routing_config(mut self, input: crate::types::AliasRoutingConfiguration) -> Self {
self.routing_config = ::std::option::Option::Some(input);
self
}
/// <p>The <a href="https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html#configuring-alias-routing">routing configuration</a> of the alias.</p>
pub fn set_routing_config(mut self, input: ::std::option::Option<crate::types::AliasRoutingConfiguration>) -> Self {
self.routing_config = input;
self
}
/// <p>The <a href="https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html#configuring-alias-routing">routing configuration</a> of the alias.</p>
pub fn get_routing_config(&self) -> &::std::option::Option<crate::types::AliasRoutingConfiguration> {
&self.routing_config
}
/// Consumes the builder and constructs a [`CreateAliasInput`](crate::operation::create_alias::CreateAliasInput).
pub fn build(self) -> ::std::result::Result<crate::operation::create_alias::CreateAliasInput, ::aws_smithy_types::error::operation::BuildError> {
::std::result::Result::Ok(crate::operation::create_alias::CreateAliasInput {
function_name: self.function_name,
name: self.name,
function_version: self.function_version,
description: self.description,
routing_config: self.routing_config,
})
}
}