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
// 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)]
pub struct CreateBuildOutput {
/// <p>The newly created build resource, including a unique build IDs and status.</p>
///
/// _Note: This member has been renamed from `build`._
pub build_value: ::std::option::Option<crate::types::Build>,
/// <p>This element is returned only when the operation is called without a storage location. It contains credentials to use when you are uploading a build file to an Amazon S3 bucket that is owned by Amazon GameLift. Credentials have a limited life span. To refresh these credentials, call <a href="https://docs.aws.amazon.com/gamelift/latest/apireference/API_RequestUploadCredentials.html">RequestUploadCredentials</a>.</p>
pub upload_credentials: ::std::option::Option<crate::types::AwsCredentials>,
/// <p>Amazon S3 location for your game build file, including bucket name and key.</p>
pub storage_location: ::std::option::Option<crate::types::S3Location>,
_request_id: Option<String>,
}
impl CreateBuildOutput {
/// <p>The newly created build resource, including a unique build IDs and status.</p>
///
/// _Note: This member has been renamed from `build`._
pub fn build_value(&self) -> ::std::option::Option<&crate::types::Build> {
self.build_value.as_ref()
}
/// <p>This element is returned only when the operation is called without a storage location. It contains credentials to use when you are uploading a build file to an Amazon S3 bucket that is owned by Amazon GameLift. Credentials have a limited life span. To refresh these credentials, call <a href="https://docs.aws.amazon.com/gamelift/latest/apireference/API_RequestUploadCredentials.html">RequestUploadCredentials</a>.</p>
pub fn upload_credentials(&self) -> ::std::option::Option<&crate::types::AwsCredentials> {
self.upload_credentials.as_ref()
}
/// <p>Amazon S3 location for your game build file, including bucket name and key.</p>
pub fn storage_location(&self) -> ::std::option::Option<&crate::types::S3Location> {
self.storage_location.as_ref()
}
}
impl ::std::fmt::Debug for CreateBuildOutput {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
let mut formatter = f.debug_struct("CreateBuildOutput");
formatter.field("build_value", &self.build_value);
formatter.field("upload_credentials", &"*** Sensitive Data Redacted ***");
formatter.field("storage_location", &self.storage_location);
formatter.field("_request_id", &self._request_id);
formatter.finish()
}
}
impl ::aws_types::request_id::RequestId for CreateBuildOutput {
fn request_id(&self) -> Option<&str> {
self._request_id.as_deref()
}
}
impl CreateBuildOutput {
/// Creates a new builder-style object to manufacture [`CreateBuildOutput`](crate::operation::create_build::CreateBuildOutput).
pub fn builder() -> crate::operation::create_build::builders::CreateBuildOutputBuilder {
crate::operation::create_build::builders::CreateBuildOutputBuilder::default()
}
}
/// A builder for [`CreateBuildOutput`](crate::operation::create_build::CreateBuildOutput).
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
pub struct CreateBuildOutputBuilder {
pub(crate) build_value: ::std::option::Option<crate::types::Build>,
pub(crate) upload_credentials: ::std::option::Option<crate::types::AwsCredentials>,
pub(crate) storage_location: ::std::option::Option<crate::types::S3Location>,
_request_id: Option<String>,
}
impl CreateBuildOutputBuilder {
/// <p>The newly created build resource, including a unique build IDs and status.</p>
pub fn build_value(mut self, input: crate::types::Build) -> Self {
self.build_value = ::std::option::Option::Some(input);
self
}
/// <p>The newly created build resource, including a unique build IDs and status.</p>
pub fn set_build(mut self, input: ::std::option::Option<crate::types::Build>) -> Self {
self.build_value = input;
self
}
/// <p>The newly created build resource, including a unique build IDs and status.</p>
pub fn get_build(&self) -> &::std::option::Option<crate::types::Build> {
&self.build_value
}
/// <p>This element is returned only when the operation is called without a storage location. It contains credentials to use when you are uploading a build file to an Amazon S3 bucket that is owned by Amazon GameLift. Credentials have a limited life span. To refresh these credentials, call <a href="https://docs.aws.amazon.com/gamelift/latest/apireference/API_RequestUploadCredentials.html">RequestUploadCredentials</a>.</p>
pub fn upload_credentials(mut self, input: crate::types::AwsCredentials) -> Self {
self.upload_credentials = ::std::option::Option::Some(input);
self
}
/// <p>This element is returned only when the operation is called without a storage location. It contains credentials to use when you are uploading a build file to an Amazon S3 bucket that is owned by Amazon GameLift. Credentials have a limited life span. To refresh these credentials, call <a href="https://docs.aws.amazon.com/gamelift/latest/apireference/API_RequestUploadCredentials.html">RequestUploadCredentials</a>.</p>
pub fn set_upload_credentials(mut self, input: ::std::option::Option<crate::types::AwsCredentials>) -> Self {
self.upload_credentials = input;
self
}
/// <p>This element is returned only when the operation is called without a storage location. It contains credentials to use when you are uploading a build file to an Amazon S3 bucket that is owned by Amazon GameLift. Credentials have a limited life span. To refresh these credentials, call <a href="https://docs.aws.amazon.com/gamelift/latest/apireference/API_RequestUploadCredentials.html">RequestUploadCredentials</a>.</p>
pub fn get_upload_credentials(&self) -> &::std::option::Option<crate::types::AwsCredentials> {
&self.upload_credentials
}
/// <p>Amazon S3 location for your game build file, including bucket name and key.</p>
pub fn storage_location(mut self, input: crate::types::S3Location) -> Self {
self.storage_location = ::std::option::Option::Some(input);
self
}
/// <p>Amazon S3 location for your game build file, including bucket name and key.</p>
pub fn set_storage_location(mut self, input: ::std::option::Option<crate::types::S3Location>) -> Self {
self.storage_location = input;
self
}
/// <p>Amazon S3 location for your game build file, including bucket name and key.</p>
pub fn get_storage_location(&self) -> &::std::option::Option<crate::types::S3Location> {
&self.storage_location
}
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 [`CreateBuildOutput`](crate::operation::create_build::CreateBuildOutput).
pub fn build(self) -> crate::operation::create_build::CreateBuildOutput {
crate::operation::create_build::CreateBuildOutput {
build_value: self.build_value,
upload_credentials: self.upload_credentials,
storage_location: self.storage_location,
_request_id: self._request_id,
}
}
}
impl ::std::fmt::Debug for CreateBuildOutputBuilder {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
let mut formatter = f.debug_struct("CreateBuildOutputBuilder");
formatter.field("build_value", &self.build_value);
formatter.field("upload_credentials", &"*** Sensitive Data Redacted ***");
formatter.field("storage_location", &self.storage_location);
formatter.field("_request_id", &self._request_id);
formatter.finish()
}
}