/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace WorkMail { namespace Model { class DescribeMailboxExportJobResult { public: AWS_WORKMAIL_API DescribeMailboxExportJobResult(); AWS_WORKMAIL_API DescribeMailboxExportJobResult(const Aws::AmazonWebServiceResult& result); AWS_WORKMAIL_API DescribeMailboxExportJobResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The identifier of the user or resource associated with the mailbox.

*/ inline const Aws::String& GetEntityId() const{ return m_entityId; } /** *

The identifier of the user or resource associated with the mailbox.

*/ inline void SetEntityId(const Aws::String& value) { m_entityId = value; } /** *

The identifier of the user or resource associated with the mailbox.

*/ inline void SetEntityId(Aws::String&& value) { m_entityId = std::move(value); } /** *

The identifier of the user or resource associated with the mailbox.

*/ inline void SetEntityId(const char* value) { m_entityId.assign(value); } /** *

The identifier of the user or resource associated with the mailbox.

*/ inline DescribeMailboxExportJobResult& WithEntityId(const Aws::String& value) { SetEntityId(value); return *this;} /** *

The identifier of the user or resource associated with the mailbox.

*/ inline DescribeMailboxExportJobResult& WithEntityId(Aws::String&& value) { SetEntityId(std::move(value)); return *this;} /** *

The identifier of the user or resource associated with the mailbox.

*/ inline DescribeMailboxExportJobResult& WithEntityId(const char* value) { SetEntityId(value); return *this;} /** *

The mailbox export job description.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

The mailbox export job description.

*/ inline void SetDescription(const Aws::String& value) { m_description = value; } /** *

The mailbox export job description.

*/ inline void SetDescription(Aws::String&& value) { m_description = std::move(value); } /** *

The mailbox export job description.

*/ inline void SetDescription(const char* value) { m_description.assign(value); } /** *

The mailbox export job description.

*/ inline DescribeMailboxExportJobResult& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

The mailbox export job description.

*/ inline DescribeMailboxExportJobResult& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

The mailbox export job description.

*/ inline DescribeMailboxExportJobResult& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

The ARN of the AWS Identity and Access Management (IAM) role that grants * write permission to the Amazon Simple Storage Service (Amazon S3) bucket.

*/ inline const Aws::String& GetRoleArn() const{ return m_roleArn; } /** *

The ARN of the AWS Identity and Access Management (IAM) role that grants * write permission to the Amazon Simple Storage Service (Amazon S3) bucket.

*/ inline void SetRoleArn(const Aws::String& value) { m_roleArn = value; } /** *

The ARN of the AWS Identity and Access Management (IAM) role that grants * write permission to the Amazon Simple Storage Service (Amazon S3) bucket.

*/ inline void SetRoleArn(Aws::String&& value) { m_roleArn = std::move(value); } /** *

The ARN of the AWS Identity and Access Management (IAM) role that grants * write permission to the Amazon Simple Storage Service (Amazon S3) bucket.

*/ inline void SetRoleArn(const char* value) { m_roleArn.assign(value); } /** *

The ARN of the AWS Identity and Access Management (IAM) role that grants * write permission to the Amazon Simple Storage Service (Amazon S3) bucket.

*/ inline DescribeMailboxExportJobResult& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} /** *

The ARN of the AWS Identity and Access Management (IAM) role that grants * write permission to the Amazon Simple Storage Service (Amazon S3) bucket.

*/ inline DescribeMailboxExportJobResult& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} /** *

The ARN of the AWS Identity and Access Management (IAM) role that grants * write permission to the Amazon Simple Storage Service (Amazon S3) bucket.

*/ inline DescribeMailboxExportJobResult& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the symmetric AWS Key Management Service * (AWS KMS) key that encrypts the exported mailbox content.

*/ inline const Aws::String& GetKmsKeyArn() const{ return m_kmsKeyArn; } /** *

The Amazon Resource Name (ARN) of the symmetric AWS Key Management Service * (AWS KMS) key that encrypts the exported mailbox content.

*/ inline void SetKmsKeyArn(const Aws::String& value) { m_kmsKeyArn = value; } /** *

The Amazon Resource Name (ARN) of the symmetric AWS Key Management Service * (AWS KMS) key that encrypts the exported mailbox content.

*/ inline void SetKmsKeyArn(Aws::String&& value) { m_kmsKeyArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the symmetric AWS Key Management Service * (AWS KMS) key that encrypts the exported mailbox content.

*/ inline void SetKmsKeyArn(const char* value) { m_kmsKeyArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the symmetric AWS Key Management Service * (AWS KMS) key that encrypts the exported mailbox content.

*/ inline DescribeMailboxExportJobResult& WithKmsKeyArn(const Aws::String& value) { SetKmsKeyArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the symmetric AWS Key Management Service * (AWS KMS) key that encrypts the exported mailbox content.

*/ inline DescribeMailboxExportJobResult& WithKmsKeyArn(Aws::String&& value) { SetKmsKeyArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the symmetric AWS Key Management Service * (AWS KMS) key that encrypts the exported mailbox content.

*/ inline DescribeMailboxExportJobResult& WithKmsKeyArn(const char* value) { SetKmsKeyArn(value); return *this;} /** *

The name of the S3 bucket.

*/ inline const Aws::String& GetS3BucketName() const{ return m_s3BucketName; } /** *

The name of the S3 bucket.

*/ inline void SetS3BucketName(const Aws::String& value) { m_s3BucketName = value; } /** *

The name of the S3 bucket.

*/ inline void SetS3BucketName(Aws::String&& value) { m_s3BucketName = std::move(value); } /** *

The name of the S3 bucket.

*/ inline void SetS3BucketName(const char* value) { m_s3BucketName.assign(value); } /** *

The name of the S3 bucket.

*/ inline DescribeMailboxExportJobResult& WithS3BucketName(const Aws::String& value) { SetS3BucketName(value); return *this;} /** *

The name of the S3 bucket.

*/ inline DescribeMailboxExportJobResult& WithS3BucketName(Aws::String&& value) { SetS3BucketName(std::move(value)); return *this;} /** *

The name of the S3 bucket.

*/ inline DescribeMailboxExportJobResult& WithS3BucketName(const char* value) { SetS3BucketName(value); return *this;} /** *

The S3 bucket prefix.

*/ inline const Aws::String& GetS3Prefix() const{ return m_s3Prefix; } /** *

The S3 bucket prefix.

*/ inline void SetS3Prefix(const Aws::String& value) { m_s3Prefix = value; } /** *

The S3 bucket prefix.

*/ inline void SetS3Prefix(Aws::String&& value) { m_s3Prefix = std::move(value); } /** *

The S3 bucket prefix.

*/ inline void SetS3Prefix(const char* value) { m_s3Prefix.assign(value); } /** *

The S3 bucket prefix.

*/ inline DescribeMailboxExportJobResult& WithS3Prefix(const Aws::String& value) { SetS3Prefix(value); return *this;} /** *

The S3 bucket prefix.

*/ inline DescribeMailboxExportJobResult& WithS3Prefix(Aws::String&& value) { SetS3Prefix(std::move(value)); return *this;} /** *

The S3 bucket prefix.

*/ inline DescribeMailboxExportJobResult& WithS3Prefix(const char* value) { SetS3Prefix(value); return *this;} /** *

The path to the S3 bucket and file that the mailbox export job is exporting * to.

*/ inline const Aws::String& GetS3Path() const{ return m_s3Path; } /** *

The path to the S3 bucket and file that the mailbox export job is exporting * to.

*/ inline void SetS3Path(const Aws::String& value) { m_s3Path = value; } /** *

The path to the S3 bucket and file that the mailbox export job is exporting * to.

*/ inline void SetS3Path(Aws::String&& value) { m_s3Path = std::move(value); } /** *

The path to the S3 bucket and file that the mailbox export job is exporting * to.

*/ inline void SetS3Path(const char* value) { m_s3Path.assign(value); } /** *

The path to the S3 bucket and file that the mailbox export job is exporting * to.

*/ inline DescribeMailboxExportJobResult& WithS3Path(const Aws::String& value) { SetS3Path(value); return *this;} /** *

The path to the S3 bucket and file that the mailbox export job is exporting * to.

*/ inline DescribeMailboxExportJobResult& WithS3Path(Aws::String&& value) { SetS3Path(std::move(value)); return *this;} /** *

The path to the S3 bucket and file that the mailbox export job is exporting * to.

*/ inline DescribeMailboxExportJobResult& WithS3Path(const char* value) { SetS3Path(value); return *this;} /** *

The estimated progress of the mailbox export job, in percentage points.

*/ inline int GetEstimatedProgress() const{ return m_estimatedProgress; } /** *

The estimated progress of the mailbox export job, in percentage points.

*/ inline void SetEstimatedProgress(int value) { m_estimatedProgress = value; } /** *

The estimated progress of the mailbox export job, in percentage points.

*/ inline DescribeMailboxExportJobResult& WithEstimatedProgress(int value) { SetEstimatedProgress(value); return *this;} /** *

The state of the mailbox export job.

*/ inline const MailboxExportJobState& GetState() const{ return m_state; } /** *

The state of the mailbox export job.

*/ inline void SetState(const MailboxExportJobState& value) { m_state = value; } /** *

The state of the mailbox export job.

*/ inline void SetState(MailboxExportJobState&& value) { m_state = std::move(value); } /** *

The state of the mailbox export job.

*/ inline DescribeMailboxExportJobResult& WithState(const MailboxExportJobState& value) { SetState(value); return *this;} /** *

The state of the mailbox export job.

*/ inline DescribeMailboxExportJobResult& WithState(MailboxExportJobState&& value) { SetState(std::move(value)); return *this;} /** *

Error information for failed mailbox export jobs.

*/ inline const Aws::String& GetErrorInfo() const{ return m_errorInfo; } /** *

Error information for failed mailbox export jobs.

*/ inline void SetErrorInfo(const Aws::String& value) { m_errorInfo = value; } /** *

Error information for failed mailbox export jobs.

*/ inline void SetErrorInfo(Aws::String&& value) { m_errorInfo = std::move(value); } /** *

Error information for failed mailbox export jobs.

*/ inline void SetErrorInfo(const char* value) { m_errorInfo.assign(value); } /** *

Error information for failed mailbox export jobs.

*/ inline DescribeMailboxExportJobResult& WithErrorInfo(const Aws::String& value) { SetErrorInfo(value); return *this;} /** *

Error information for failed mailbox export jobs.

*/ inline DescribeMailboxExportJobResult& WithErrorInfo(Aws::String&& value) { SetErrorInfo(std::move(value)); return *this;} /** *

Error information for failed mailbox export jobs.

*/ inline DescribeMailboxExportJobResult& WithErrorInfo(const char* value) { SetErrorInfo(value); return *this;} /** *

The mailbox export job start timestamp.

*/ inline const Aws::Utils::DateTime& GetStartTime() const{ return m_startTime; } /** *

The mailbox export job start timestamp.

*/ inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTime = value; } /** *

The mailbox export job start timestamp.

*/ inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTime = std::move(value); } /** *

The mailbox export job start timestamp.

*/ inline DescribeMailboxExportJobResult& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;} /** *

The mailbox export job start timestamp.

*/ inline DescribeMailboxExportJobResult& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(std::move(value)); return *this;} /** *

The mailbox export job end timestamp.

*/ inline const Aws::Utils::DateTime& GetEndTime() const{ return m_endTime; } /** *

The mailbox export job end timestamp.

*/ inline void SetEndTime(const Aws::Utils::DateTime& value) { m_endTime = value; } /** *

The mailbox export job end timestamp.

*/ inline void SetEndTime(Aws::Utils::DateTime&& value) { m_endTime = std::move(value); } /** *

The mailbox export job end timestamp.

*/ inline DescribeMailboxExportJobResult& WithEndTime(const Aws::Utils::DateTime& value) { SetEndTime(value); return *this;} /** *

The mailbox export job end timestamp.

*/ inline DescribeMailboxExportJobResult& WithEndTime(Aws::Utils::DateTime&& value) { SetEndTime(std::move(value)); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline DescribeMailboxExportJobResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline DescribeMailboxExportJobResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline DescribeMailboxExportJobResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_entityId; Aws::String m_description; Aws::String m_roleArn; Aws::String m_kmsKeyArn; Aws::String m_s3BucketName; Aws::String m_s3Prefix; Aws::String m_s3Path; int m_estimatedProgress; MailboxExportJobState m_state; Aws::String m_errorInfo; Aws::Utils::DateTime m_startTime; Aws::Utils::DateTime m_endTime; Aws::String m_requestId; }; } // namespace Model } // namespace WorkMail } // namespace Aws