/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes the storage parameters for Amazon S3 and Amazon S3 buckets for an
* instance store-backed AMI.See Also:
AWS API
* Reference
The access key ID of the owner of the bucket. Before you specify a value for * your access key ID, review and follow the guidance in Best * Practices for Amazon Web Services accounts in the Account * ManagementReference Guide.
*/ inline const Aws::String& GetAWSAccessKeyId() const{ return m_aWSAccessKeyId; } /** *The access key ID of the owner of the bucket. Before you specify a value for * your access key ID, review and follow the guidance in Best * Practices for Amazon Web Services accounts in the Account * ManagementReference Guide.
*/ inline bool AWSAccessKeyIdHasBeenSet() const { return m_aWSAccessKeyIdHasBeenSet; } /** *The access key ID of the owner of the bucket. Before you specify a value for * your access key ID, review and follow the guidance in Best * Practices for Amazon Web Services accounts in the Account * ManagementReference Guide.
*/ inline void SetAWSAccessKeyId(const Aws::String& value) { m_aWSAccessKeyIdHasBeenSet = true; m_aWSAccessKeyId = value; } /** *The access key ID of the owner of the bucket. Before you specify a value for * your access key ID, review and follow the guidance in Best * Practices for Amazon Web Services accounts in the Account * ManagementReference Guide.
*/ inline void SetAWSAccessKeyId(Aws::String&& value) { m_aWSAccessKeyIdHasBeenSet = true; m_aWSAccessKeyId = std::move(value); } /** *The access key ID of the owner of the bucket. Before you specify a value for * your access key ID, review and follow the guidance in Best * Practices for Amazon Web Services accounts in the Account * ManagementReference Guide.
*/ inline void SetAWSAccessKeyId(const char* value) { m_aWSAccessKeyIdHasBeenSet = true; m_aWSAccessKeyId.assign(value); } /** *The access key ID of the owner of the bucket. Before you specify a value for * your access key ID, review and follow the guidance in Best * Practices for Amazon Web Services accounts in the Account * ManagementReference Guide.
*/ inline S3Storage& WithAWSAccessKeyId(const Aws::String& value) { SetAWSAccessKeyId(value); return *this;} /** *The access key ID of the owner of the bucket. Before you specify a value for * your access key ID, review and follow the guidance in Best * Practices for Amazon Web Services accounts in the Account * ManagementReference Guide.
*/ inline S3Storage& WithAWSAccessKeyId(Aws::String&& value) { SetAWSAccessKeyId(std::move(value)); return *this;} /** *The access key ID of the owner of the bucket. Before you specify a value for * your access key ID, review and follow the guidance in Best * Practices for Amazon Web Services accounts in the Account * ManagementReference Guide.
*/ inline S3Storage& WithAWSAccessKeyId(const char* value) { SetAWSAccessKeyId(value); return *this;} /** *The bucket in which to store the AMI. You can specify a bucket that you * already own or a new bucket that Amazon EC2 creates on your behalf. If you * specify a bucket that belongs to someone else, Amazon EC2 returns an error.
*/ inline const Aws::String& GetBucket() const{ return m_bucket; } /** *The bucket in which to store the AMI. You can specify a bucket that you * already own or a new bucket that Amazon EC2 creates on your behalf. If you * specify a bucket that belongs to someone else, Amazon EC2 returns an error.
*/ inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; } /** *The bucket in which to store the AMI. You can specify a bucket that you * already own or a new bucket that Amazon EC2 creates on your behalf. If you * specify a bucket that belongs to someone else, Amazon EC2 returns an error.
*/ inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; } /** *The bucket in which to store the AMI. You can specify a bucket that you * already own or a new bucket that Amazon EC2 creates on your behalf. If you * specify a bucket that belongs to someone else, Amazon EC2 returns an error.
*/ inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); } /** *The bucket in which to store the AMI. You can specify a bucket that you * already own or a new bucket that Amazon EC2 creates on your behalf. If you * specify a bucket that belongs to someone else, Amazon EC2 returns an error.
*/ inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); } /** *The bucket in which to store the AMI. You can specify a bucket that you * already own or a new bucket that Amazon EC2 creates on your behalf. If you * specify a bucket that belongs to someone else, Amazon EC2 returns an error.
*/ inline S3Storage& WithBucket(const Aws::String& value) { SetBucket(value); return *this;} /** *The bucket in which to store the AMI. You can specify a bucket that you * already own or a new bucket that Amazon EC2 creates on your behalf. If you * specify a bucket that belongs to someone else, Amazon EC2 returns an error.
*/ inline S3Storage& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;} /** *The bucket in which to store the AMI. You can specify a bucket that you * already own or a new bucket that Amazon EC2 creates on your behalf. If you * specify a bucket that belongs to someone else, Amazon EC2 returns an error.
*/ inline S3Storage& WithBucket(const char* value) { SetBucket(value); return *this;} /** *The beginning of the file name of the AMI.
*/ inline const Aws::String& GetPrefix() const{ return m_prefix; } /** *The beginning of the file name of the AMI.
*/ inline bool PrefixHasBeenSet() const { return m_prefixHasBeenSet; } /** *The beginning of the file name of the AMI.
*/ inline void SetPrefix(const Aws::String& value) { m_prefixHasBeenSet = true; m_prefix = value; } /** *The beginning of the file name of the AMI.
*/ inline void SetPrefix(Aws::String&& value) { m_prefixHasBeenSet = true; m_prefix = std::move(value); } /** *The beginning of the file name of the AMI.
*/ inline void SetPrefix(const char* value) { m_prefixHasBeenSet = true; m_prefix.assign(value); } /** *The beginning of the file name of the AMI.
*/ inline S3Storage& WithPrefix(const Aws::String& value) { SetPrefix(value); return *this;} /** *The beginning of the file name of the AMI.
*/ inline S3Storage& WithPrefix(Aws::String&& value) { SetPrefix(std::move(value)); return *this;} /** *The beginning of the file name of the AMI.
*/ inline S3Storage& WithPrefix(const char* value) { SetPrefix(value); return *this;} /** *An Amazon S3 upload policy that gives Amazon EC2 permission to upload items * into Amazon S3 on your behalf.
*/ inline const Aws::Utils::ByteBuffer& GetUploadPolicy() const{ return m_uploadPolicy; } /** *An Amazon S3 upload policy that gives Amazon EC2 permission to upload items * into Amazon S3 on your behalf.
*/ inline bool UploadPolicyHasBeenSet() const { return m_uploadPolicyHasBeenSet; } /** *An Amazon S3 upload policy that gives Amazon EC2 permission to upload items * into Amazon S3 on your behalf.
*/ inline void SetUploadPolicy(const Aws::Utils::ByteBuffer& value) { m_uploadPolicyHasBeenSet = true; m_uploadPolicy = value; } /** *An Amazon S3 upload policy that gives Amazon EC2 permission to upload items * into Amazon S3 on your behalf.
*/ inline void SetUploadPolicy(Aws::Utils::ByteBuffer&& value) { m_uploadPolicyHasBeenSet = true; m_uploadPolicy = std::move(value); } /** *An Amazon S3 upload policy that gives Amazon EC2 permission to upload items * into Amazon S3 on your behalf.
*/ inline S3Storage& WithUploadPolicy(const Aws::Utils::ByteBuffer& value) { SetUploadPolicy(value); return *this;} /** *An Amazon S3 upload policy that gives Amazon EC2 permission to upload items * into Amazon S3 on your behalf.
*/ inline S3Storage& WithUploadPolicy(Aws::Utils::ByteBuffer&& value) { SetUploadPolicy(std::move(value)); return *this;} /** *The signature of the JSON document.
*/ inline const Aws::String& GetUploadPolicySignature() const{ return m_uploadPolicySignature; } /** *The signature of the JSON document.
*/ inline bool UploadPolicySignatureHasBeenSet() const { return m_uploadPolicySignatureHasBeenSet; } /** *The signature of the JSON document.
*/ inline void SetUploadPolicySignature(const Aws::String& value) { m_uploadPolicySignatureHasBeenSet = true; m_uploadPolicySignature = value; } /** *The signature of the JSON document.
*/ inline void SetUploadPolicySignature(Aws::String&& value) { m_uploadPolicySignatureHasBeenSet = true; m_uploadPolicySignature = std::move(value); } /** *The signature of the JSON document.
*/ inline void SetUploadPolicySignature(const char* value) { m_uploadPolicySignatureHasBeenSet = true; m_uploadPolicySignature.assign(value); } /** *The signature of the JSON document.
*/ inline S3Storage& WithUploadPolicySignature(const Aws::String& value) { SetUploadPolicySignature(value); return *this;} /** *The signature of the JSON document.
*/ inline S3Storage& WithUploadPolicySignature(Aws::String&& value) { SetUploadPolicySignature(std::move(value)); return *this;} /** *The signature of the JSON document.
*/ inline S3Storage& WithUploadPolicySignature(const char* value) { SetUploadPolicySignature(value); return *this;} private: Aws::String m_aWSAccessKeyId; bool m_aWSAccessKeyIdHasBeenSet = false; Aws::String m_bucket; bool m_bucketHasBeenSet = false; Aws::String m_prefix; bool m_prefixHasBeenSet = false; Aws::Utils::ByteBuffer m_uploadPolicy; bool m_uploadPolicyHasBeenSet = false; Aws::String m_uploadPolicySignature; bool m_uploadPolicySignatureHasBeenSet = false; }; } // namespace Model } // namespace EC2 } // namespace Aws