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 UpdateSchemaInput {
/// <p>This is a wrapper structure to contain schema identity fields. The structure contains:</p>
/// <ul>
/// <li> <p>SchemaId$SchemaArn: The Amazon Resource Name (ARN) of the schema. One of <code>SchemaArn</code> or <code>SchemaName</code> has to be provided.</p> </li>
/// <li> <p>SchemaId$SchemaName: The name of the schema. One of <code>SchemaArn</code> or <code>SchemaName</code> has to be provided.</p> </li>
/// </ul>
pub schema_id: ::std::option::Option<crate::types::SchemaId>,
/// <p>Version number required for check pointing. One of <code>VersionNumber</code> or <code>Compatibility</code> has to be provided.</p>
pub schema_version_number: ::std::option::Option<crate::types::SchemaVersionNumber>,
/// <p>The new compatibility setting for the schema.</p>
pub compatibility: ::std::option::Option<crate::types::Compatibility>,
/// <p>The new description for the schema.</p>
pub description: ::std::option::Option<::std::string::String>,
}
impl UpdateSchemaInput {
/// <p>This is a wrapper structure to contain schema identity fields. The structure contains:</p>
/// <ul>
/// <li> <p>SchemaId$SchemaArn: The Amazon Resource Name (ARN) of the schema. One of <code>SchemaArn</code> or <code>SchemaName</code> has to be provided.</p> </li>
/// <li> <p>SchemaId$SchemaName: The name of the schema. One of <code>SchemaArn</code> or <code>SchemaName</code> has to be provided.</p> </li>
/// </ul>
pub fn schema_id(&self) -> ::std::option::Option<&crate::types::SchemaId> {
self.schema_id.as_ref()
}
/// <p>Version number required for check pointing. One of <code>VersionNumber</code> or <code>Compatibility</code> has to be provided.</p>
pub fn schema_version_number(&self) -> ::std::option::Option<&crate::types::SchemaVersionNumber> {
self.schema_version_number.as_ref()
}
/// <p>The new compatibility setting for the schema.</p>
pub fn compatibility(&self) -> ::std::option::Option<&crate::types::Compatibility> {
self.compatibility.as_ref()
}
/// <p>The new description for the schema.</p>
pub fn description(&self) -> ::std::option::Option<&str> {
self.description.as_deref()
}
}
impl UpdateSchemaInput {
/// Creates a new builder-style object to manufacture [`UpdateSchemaInput`](crate::operation::update_schema::UpdateSchemaInput).
pub fn builder() -> crate::operation::update_schema::builders::UpdateSchemaInputBuilder {
crate::operation::update_schema::builders::UpdateSchemaInputBuilder::default()
}
}
/// A builder for [`UpdateSchemaInput`](crate::operation::update_schema::UpdateSchemaInput).
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
pub struct UpdateSchemaInputBuilder {
pub(crate) schema_id: ::std::option::Option<crate::types::SchemaId>,
pub(crate) schema_version_number: ::std::option::Option<crate::types::SchemaVersionNumber>,
pub(crate) compatibility: ::std::option::Option<crate::types::Compatibility>,
pub(crate) description: ::std::option::Option<::std::string::String>,
}
impl UpdateSchemaInputBuilder {
/// <p>This is a wrapper structure to contain schema identity fields. The structure contains:</p>
/// <ul>
/// <li> <p>SchemaId$SchemaArn: The Amazon Resource Name (ARN) of the schema. One of <code>SchemaArn</code> or <code>SchemaName</code> has to be provided.</p> </li>
/// <li> <p>SchemaId$SchemaName: The name of the schema. One of <code>SchemaArn</code> or <code>SchemaName</code> has to be provided.</p> </li>
/// </ul>
/// This field is required.
pub fn schema_id(mut self, input: crate::types::SchemaId) -> Self {
self.schema_id = ::std::option::Option::Some(input);
self
}
/// <p>This is a wrapper structure to contain schema identity fields. The structure contains:</p>
/// <ul>
/// <li> <p>SchemaId$SchemaArn: The Amazon Resource Name (ARN) of the schema. One of <code>SchemaArn</code> or <code>SchemaName</code> has to be provided.</p> </li>
/// <li> <p>SchemaId$SchemaName: The name of the schema. One of <code>SchemaArn</code> or <code>SchemaName</code> has to be provided.</p> </li>
/// </ul>
pub fn set_schema_id(mut self, input: ::std::option::Option<crate::types::SchemaId>) -> Self {
self.schema_id = input;
self
}
/// <p>This is a wrapper structure to contain schema identity fields. The structure contains:</p>
/// <ul>
/// <li> <p>SchemaId$SchemaArn: The Amazon Resource Name (ARN) of the schema. One of <code>SchemaArn</code> or <code>SchemaName</code> has to be provided.</p> </li>
/// <li> <p>SchemaId$SchemaName: The name of the schema. One of <code>SchemaArn</code> or <code>SchemaName</code> has to be provided.</p> </li>
/// </ul>
pub fn get_schema_id(&self) -> &::std::option::Option<crate::types::SchemaId> {
&self.schema_id
}
/// <p>Version number required for check pointing. One of <code>VersionNumber</code> or <code>Compatibility</code> has to be provided.</p>
pub fn schema_version_number(mut self, input: crate::types::SchemaVersionNumber) -> Self {
self.schema_version_number = ::std::option::Option::Some(input);
self
}
/// <p>Version number required for check pointing. One of <code>VersionNumber</code> or <code>Compatibility</code> has to be provided.</p>
pub fn set_schema_version_number(mut self, input: ::std::option::Option<crate::types::SchemaVersionNumber>) -> Self {
self.schema_version_number = input;
self
}
/// <p>Version number required for check pointing. One of <code>VersionNumber</code> or <code>Compatibility</code> has to be provided.</p>
pub fn get_schema_version_number(&self) -> &::std::option::Option<crate::types::SchemaVersionNumber> {
&self.schema_version_number
}
/// <p>The new compatibility setting for the schema.</p>
pub fn compatibility(mut self, input: crate::types::Compatibility) -> Self {
self.compatibility = ::std::option::Option::Some(input);
self
}
/// <p>The new compatibility setting for the schema.</p>
pub fn set_compatibility(mut self, input: ::std::option::Option<crate::types::Compatibility>) -> Self {
self.compatibility = input;
self
}
/// <p>The new compatibility setting for the schema.</p>
pub fn get_compatibility(&self) -> &::std::option::Option<crate::types::Compatibility> {
&self.compatibility
}
/// <p>The new description for the schema.</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>The new description for the schema.</p>
pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.description = input;
self
}
/// <p>The new description for the schema.</p>
pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
&self.description
}
/// Consumes the builder and constructs a [`UpdateSchemaInput`](crate::operation::update_schema::UpdateSchemaInput).
pub fn build(
self,
) -> ::std::result::Result<crate::operation::update_schema::UpdateSchemaInput, ::aws_smithy_types::error::operation::BuildError> {
::std::result::Result::Ok(crate::operation::update_schema::UpdateSchemaInput {
schema_id: self.schema_id,
schema_version_number: self.schema_version_number,
compatibility: self.compatibility,
description: self.description,
})
}
}