/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace Glacier { namespace Model { /** *

Contains the description of an Amazon S3 Glacier job.

See * Also:

AWS * API Reference

*/ class GlacierJobDescription { public: AWS_GLACIER_API GlacierJobDescription(); AWS_GLACIER_API GlacierJobDescription(Aws::Utils::Json::JsonView jsonValue); AWS_GLACIER_API GlacierJobDescription& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_GLACIER_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

An opaque string that identifies an Amazon S3 Glacier job.

*/ inline const Aws::String& GetJobId() const{ return m_jobId; } /** *

An opaque string that identifies an Amazon S3 Glacier job.

*/ inline bool JobIdHasBeenSet() const { return m_jobIdHasBeenSet; } /** *

An opaque string that identifies an Amazon S3 Glacier job.

*/ inline void SetJobId(const Aws::String& value) { m_jobIdHasBeenSet = true; m_jobId = value; } /** *

An opaque string that identifies an Amazon S3 Glacier job.

*/ inline void SetJobId(Aws::String&& value) { m_jobIdHasBeenSet = true; m_jobId = std::move(value); } /** *

An opaque string that identifies an Amazon S3 Glacier job.

*/ inline void SetJobId(const char* value) { m_jobIdHasBeenSet = true; m_jobId.assign(value); } /** *

An opaque string that identifies an Amazon S3 Glacier job.

*/ inline GlacierJobDescription& WithJobId(const Aws::String& value) { SetJobId(value); return *this;} /** *

An opaque string that identifies an Amazon S3 Glacier job.

*/ inline GlacierJobDescription& WithJobId(Aws::String&& value) { SetJobId(std::move(value)); return *this;} /** *

An opaque string that identifies an Amazon S3 Glacier job.

*/ inline GlacierJobDescription& WithJobId(const char* value) { SetJobId(value); return *this;} /** *

The job description provided when initiating the job.

*/ inline const Aws::String& GetJobDescription() const{ return m_jobDescription; } /** *

The job description provided when initiating the job.

*/ inline bool JobDescriptionHasBeenSet() const { return m_jobDescriptionHasBeenSet; } /** *

The job description provided when initiating the job.

*/ inline void SetJobDescription(const Aws::String& value) { m_jobDescriptionHasBeenSet = true; m_jobDescription = value; } /** *

The job description provided when initiating the job.

*/ inline void SetJobDescription(Aws::String&& value) { m_jobDescriptionHasBeenSet = true; m_jobDescription = std::move(value); } /** *

The job description provided when initiating the job.

*/ inline void SetJobDescription(const char* value) { m_jobDescriptionHasBeenSet = true; m_jobDescription.assign(value); } /** *

The job description provided when initiating the job.

*/ inline GlacierJobDescription& WithJobDescription(const Aws::String& value) { SetJobDescription(value); return *this;} /** *

The job description provided when initiating the job.

*/ inline GlacierJobDescription& WithJobDescription(Aws::String&& value) { SetJobDescription(std::move(value)); return *this;} /** *

The job description provided when initiating the job.

*/ inline GlacierJobDescription& WithJobDescription(const char* value) { SetJobDescription(value); return *this;} /** *

The job type. This value is either ArchiveRetrieval, * InventoryRetrieval, or Select.

*/ inline const ActionCode& GetAction() const{ return m_action; } /** *

The job type. This value is either ArchiveRetrieval, * InventoryRetrieval, or Select.

*/ inline bool ActionHasBeenSet() const { return m_actionHasBeenSet; } /** *

The job type. This value is either ArchiveRetrieval, * InventoryRetrieval, or Select.

*/ inline void SetAction(const ActionCode& value) { m_actionHasBeenSet = true; m_action = value; } /** *

The job type. This value is either ArchiveRetrieval, * InventoryRetrieval, or Select.

*/ inline void SetAction(ActionCode&& value) { m_actionHasBeenSet = true; m_action = std::move(value); } /** *

The job type. This value is either ArchiveRetrieval, * InventoryRetrieval, or Select.

*/ inline GlacierJobDescription& WithAction(const ActionCode& value) { SetAction(value); return *this;} /** *

The job type. This value is either ArchiveRetrieval, * InventoryRetrieval, or Select.

*/ inline GlacierJobDescription& WithAction(ActionCode&& value) { SetAction(std::move(value)); return *this;} /** *

The archive ID requested for a select job or archive retrieval. Otherwise, * this field is null.

*/ inline const Aws::String& GetArchiveId() const{ return m_archiveId; } /** *

The archive ID requested for a select job or archive retrieval. Otherwise, * this field is null.

*/ inline bool ArchiveIdHasBeenSet() const { return m_archiveIdHasBeenSet; } /** *

The archive ID requested for a select job or archive retrieval. Otherwise, * this field is null.

*/ inline void SetArchiveId(const Aws::String& value) { m_archiveIdHasBeenSet = true; m_archiveId = value; } /** *

The archive ID requested for a select job or archive retrieval. Otherwise, * this field is null.

*/ inline void SetArchiveId(Aws::String&& value) { m_archiveIdHasBeenSet = true; m_archiveId = std::move(value); } /** *

The archive ID requested for a select job or archive retrieval. Otherwise, * this field is null.

*/ inline void SetArchiveId(const char* value) { m_archiveIdHasBeenSet = true; m_archiveId.assign(value); } /** *

The archive ID requested for a select job or archive retrieval. Otherwise, * this field is null.

*/ inline GlacierJobDescription& WithArchiveId(const Aws::String& value) { SetArchiveId(value); return *this;} /** *

The archive ID requested for a select job or archive retrieval. Otherwise, * this field is null.

*/ inline GlacierJobDescription& WithArchiveId(Aws::String&& value) { SetArchiveId(std::move(value)); return *this;} /** *

The archive ID requested for a select job or archive retrieval. Otherwise, * this field is null.

*/ inline GlacierJobDescription& WithArchiveId(const char* value) { SetArchiveId(value); return *this;} /** *

The Amazon Resource Name (ARN) of the vault from which an archive retrieval * was requested.

*/ inline const Aws::String& GetVaultARN() const{ return m_vaultARN; } /** *

The Amazon Resource Name (ARN) of the vault from which an archive retrieval * was requested.

*/ inline bool VaultARNHasBeenSet() const { return m_vaultARNHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the vault from which an archive retrieval * was requested.

*/ inline void SetVaultARN(const Aws::String& value) { m_vaultARNHasBeenSet = true; m_vaultARN = value; } /** *

The Amazon Resource Name (ARN) of the vault from which an archive retrieval * was requested.

*/ inline void SetVaultARN(Aws::String&& value) { m_vaultARNHasBeenSet = true; m_vaultARN = std::move(value); } /** *

The Amazon Resource Name (ARN) of the vault from which an archive retrieval * was requested.

*/ inline void SetVaultARN(const char* value) { m_vaultARNHasBeenSet = true; m_vaultARN.assign(value); } /** *

The Amazon Resource Name (ARN) of the vault from which an archive retrieval * was requested.

*/ inline GlacierJobDescription& WithVaultARN(const Aws::String& value) { SetVaultARN(value); return *this;} /** *

The Amazon Resource Name (ARN) of the vault from which an archive retrieval * was requested.

*/ inline GlacierJobDescription& WithVaultARN(Aws::String&& value) { SetVaultARN(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the vault from which an archive retrieval * was requested.

*/ inline GlacierJobDescription& WithVaultARN(const char* value) { SetVaultARN(value); return *this;} /** *

The UTC date when the job was created. This value is a string representation * of ISO 8601 date format, for example * "2012-03-20T17:03:43.221Z".

*/ inline const Aws::String& GetCreationDate() const{ return m_creationDate; } /** *

The UTC date when the job was created. This value is a string representation * of ISO 8601 date format, for example * "2012-03-20T17:03:43.221Z".

*/ inline bool CreationDateHasBeenSet() const { return m_creationDateHasBeenSet; } /** *

The UTC date when the job was created. This value is a string representation * of ISO 8601 date format, for example * "2012-03-20T17:03:43.221Z".

*/ inline void SetCreationDate(const Aws::String& value) { m_creationDateHasBeenSet = true; m_creationDate = value; } /** *

The UTC date when the job was created. This value is a string representation * of ISO 8601 date format, for example * "2012-03-20T17:03:43.221Z".

*/ inline void SetCreationDate(Aws::String&& value) { m_creationDateHasBeenSet = true; m_creationDate = std::move(value); } /** *

The UTC date when the job was created. This value is a string representation * of ISO 8601 date format, for example * "2012-03-20T17:03:43.221Z".

*/ inline void SetCreationDate(const char* value) { m_creationDateHasBeenSet = true; m_creationDate.assign(value); } /** *

The UTC date when the job was created. This value is a string representation * of ISO 8601 date format, for example * "2012-03-20T17:03:43.221Z".

*/ inline GlacierJobDescription& WithCreationDate(const Aws::String& value) { SetCreationDate(value); return *this;} /** *

The UTC date when the job was created. This value is a string representation * of ISO 8601 date format, for example * "2012-03-20T17:03:43.221Z".

*/ inline GlacierJobDescription& WithCreationDate(Aws::String&& value) { SetCreationDate(std::move(value)); return *this;} /** *

The UTC date when the job was created. This value is a string representation * of ISO 8601 date format, for example * "2012-03-20T17:03:43.221Z".

*/ inline GlacierJobDescription& WithCreationDate(const char* value) { SetCreationDate(value); return *this;} /** *

The job status. When a job is completed, you get the job's output using Get * Job Output (GET output).

*/ inline bool GetCompleted() const{ return m_completed; } /** *

The job status. When a job is completed, you get the job's output using Get * Job Output (GET output).

*/ inline bool CompletedHasBeenSet() const { return m_completedHasBeenSet; } /** *

The job status. When a job is completed, you get the job's output using Get * Job Output (GET output).

*/ inline void SetCompleted(bool value) { m_completedHasBeenSet = true; m_completed = value; } /** *

The job status. When a job is completed, you get the job's output using Get * Job Output (GET output).

*/ inline GlacierJobDescription& WithCompleted(bool value) { SetCompleted(value); return *this;} /** *

The status code can be InProgress, Succeeded, or * Failed, and indicates the status of the job.

*/ inline const StatusCode& GetStatusCode() const{ return m_statusCode; } /** *

The status code can be InProgress, Succeeded, or * Failed, and indicates the status of the job.

*/ inline bool StatusCodeHasBeenSet() const { return m_statusCodeHasBeenSet; } /** *

The status code can be InProgress, Succeeded, or * Failed, and indicates the status of the job.

*/ inline void SetStatusCode(const StatusCode& value) { m_statusCodeHasBeenSet = true; m_statusCode = value; } /** *

The status code can be InProgress, Succeeded, or * Failed, and indicates the status of the job.

*/ inline void SetStatusCode(StatusCode&& value) { m_statusCodeHasBeenSet = true; m_statusCode = std::move(value); } /** *

The status code can be InProgress, Succeeded, or * Failed, and indicates the status of the job.

*/ inline GlacierJobDescription& WithStatusCode(const StatusCode& value) { SetStatusCode(value); return *this;} /** *

The status code can be InProgress, Succeeded, or * Failed, and indicates the status of the job.

*/ inline GlacierJobDescription& WithStatusCode(StatusCode&& value) { SetStatusCode(std::move(value)); return *this;} /** *

A friendly message that describes the job status.

*/ inline const Aws::String& GetStatusMessage() const{ return m_statusMessage; } /** *

A friendly message that describes the job status.

*/ inline bool StatusMessageHasBeenSet() const { return m_statusMessageHasBeenSet; } /** *

A friendly message that describes the job status.

*/ inline void SetStatusMessage(const Aws::String& value) { m_statusMessageHasBeenSet = true; m_statusMessage = value; } /** *

A friendly message that describes the job status.

*/ inline void SetStatusMessage(Aws::String&& value) { m_statusMessageHasBeenSet = true; m_statusMessage = std::move(value); } /** *

A friendly message that describes the job status.

*/ inline void SetStatusMessage(const char* value) { m_statusMessageHasBeenSet = true; m_statusMessage.assign(value); } /** *

A friendly message that describes the job status.

*/ inline GlacierJobDescription& WithStatusMessage(const Aws::String& value) { SetStatusMessage(value); return *this;} /** *

A friendly message that describes the job status.

*/ inline GlacierJobDescription& WithStatusMessage(Aws::String&& value) { SetStatusMessage(std::move(value)); return *this;} /** *

A friendly message that describes the job status.

*/ inline GlacierJobDescription& WithStatusMessage(const char* value) { SetStatusMessage(value); return *this;} /** *

For an archive retrieval job, this value is the size in bytes of the archive * being requested for download. For an inventory retrieval or select job, this * value is null.

*/ inline long long GetArchiveSizeInBytes() const{ return m_archiveSizeInBytes; } /** *

For an archive retrieval job, this value is the size in bytes of the archive * being requested for download. For an inventory retrieval or select job, this * value is null.

*/ inline bool ArchiveSizeInBytesHasBeenSet() const { return m_archiveSizeInBytesHasBeenSet; } /** *

For an archive retrieval job, this value is the size in bytes of the archive * being requested for download. For an inventory retrieval or select job, this * value is null.

*/ inline void SetArchiveSizeInBytes(long long value) { m_archiveSizeInBytesHasBeenSet = true; m_archiveSizeInBytes = value; } /** *

For an archive retrieval job, this value is the size in bytes of the archive * being requested for download. For an inventory retrieval or select job, this * value is null.

*/ inline GlacierJobDescription& WithArchiveSizeInBytes(long long value) { SetArchiveSizeInBytes(value); return *this;} /** *

For an inventory retrieval job, this value is the size in bytes of the * inventory requested for download. For an archive retrieval or select job, this * value is null.

*/ inline long long GetInventorySizeInBytes() const{ return m_inventorySizeInBytes; } /** *

For an inventory retrieval job, this value is the size in bytes of the * inventory requested for download. For an archive retrieval or select job, this * value is null.

*/ inline bool InventorySizeInBytesHasBeenSet() const { return m_inventorySizeInBytesHasBeenSet; } /** *

For an inventory retrieval job, this value is the size in bytes of the * inventory requested for download. For an archive retrieval or select job, this * value is null.

*/ inline void SetInventorySizeInBytes(long long value) { m_inventorySizeInBytesHasBeenSet = true; m_inventorySizeInBytes = value; } /** *

For an inventory retrieval job, this value is the size in bytes of the * inventory requested for download. For an archive retrieval or select job, this * value is null.

*/ inline GlacierJobDescription& WithInventorySizeInBytes(long long value) { SetInventorySizeInBytes(value); return *this;} /** *

An Amazon SNS topic that receives notification.

*/ inline const Aws::String& GetSNSTopic() const{ return m_sNSTopic; } /** *

An Amazon SNS topic that receives notification.

*/ inline bool SNSTopicHasBeenSet() const { return m_sNSTopicHasBeenSet; } /** *

An Amazon SNS topic that receives notification.

*/ inline void SetSNSTopic(const Aws::String& value) { m_sNSTopicHasBeenSet = true; m_sNSTopic = value; } /** *

An Amazon SNS topic that receives notification.

*/ inline void SetSNSTopic(Aws::String&& value) { m_sNSTopicHasBeenSet = true; m_sNSTopic = std::move(value); } /** *

An Amazon SNS topic that receives notification.

*/ inline void SetSNSTopic(const char* value) { m_sNSTopicHasBeenSet = true; m_sNSTopic.assign(value); } /** *

An Amazon SNS topic that receives notification.

*/ inline GlacierJobDescription& WithSNSTopic(const Aws::String& value) { SetSNSTopic(value); return *this;} /** *

An Amazon SNS topic that receives notification.

*/ inline GlacierJobDescription& WithSNSTopic(Aws::String&& value) { SetSNSTopic(std::move(value)); return *this;} /** *

An Amazon SNS topic that receives notification.

*/ inline GlacierJobDescription& WithSNSTopic(const char* value) { SetSNSTopic(value); return *this;} /** *

The UTC time that the job request completed. While the job is in progress, * the value is null.

*/ inline const Aws::String& GetCompletionDate() const{ return m_completionDate; } /** *

The UTC time that the job request completed. While the job is in progress, * the value is null.

*/ inline bool CompletionDateHasBeenSet() const { return m_completionDateHasBeenSet; } /** *

The UTC time that the job request completed. While the job is in progress, * the value is null.

*/ inline void SetCompletionDate(const Aws::String& value) { m_completionDateHasBeenSet = true; m_completionDate = value; } /** *

The UTC time that the job request completed. While the job is in progress, * the value is null.

*/ inline void SetCompletionDate(Aws::String&& value) { m_completionDateHasBeenSet = true; m_completionDate = std::move(value); } /** *

The UTC time that the job request completed. While the job is in progress, * the value is null.

*/ inline void SetCompletionDate(const char* value) { m_completionDateHasBeenSet = true; m_completionDate.assign(value); } /** *

The UTC time that the job request completed. While the job is in progress, * the value is null.

*/ inline GlacierJobDescription& WithCompletionDate(const Aws::String& value) { SetCompletionDate(value); return *this;} /** *

The UTC time that the job request completed. While the job is in progress, * the value is null.

*/ inline GlacierJobDescription& WithCompletionDate(Aws::String&& value) { SetCompletionDate(std::move(value)); return *this;} /** *

The UTC time that the job request completed. While the job is in progress, * the value is null.

*/ inline GlacierJobDescription& WithCompletionDate(const char* value) { SetCompletionDate(value); return *this;} /** *

For an archive retrieval job, this value is the checksum of the archive. * Otherwise, this value is null.

The SHA256 tree hash value for the * requested range of an archive. If the InitiateJob request for an archive * specified a tree-hash aligned range, then this field returns a value.

If * the whole archive is retrieved, this value is the same as the * ArchiveSHA256TreeHash value.

This field is null for the following:

*
  • Archive retrieval jobs that specify a range that is not tree-hash * aligned

  • Archival jobs that specify a range that is * equal to the whole archive, when the job status is InProgress

    *
  • Inventory jobs

  • Select jobs

  • *
*/ inline const Aws::String& GetSHA256TreeHash() const{ return m_sHA256TreeHash; } /** *

For an archive retrieval job, this value is the checksum of the archive. * Otherwise, this value is null.

The SHA256 tree hash value for the * requested range of an archive. If the InitiateJob request for an archive * specified a tree-hash aligned range, then this field returns a value.

If * the whole archive is retrieved, this value is the same as the * ArchiveSHA256TreeHash value.

This field is null for the following:

*
  • Archive retrieval jobs that specify a range that is not tree-hash * aligned

  • Archival jobs that specify a range that is * equal to the whole archive, when the job status is InProgress

    *
  • Inventory jobs

  • Select jobs

  • *
*/ inline bool SHA256TreeHashHasBeenSet() const { return m_sHA256TreeHashHasBeenSet; } /** *

For an archive retrieval job, this value is the checksum of the archive. * Otherwise, this value is null.

The SHA256 tree hash value for the * requested range of an archive. If the InitiateJob request for an archive * specified a tree-hash aligned range, then this field returns a value.

If * the whole archive is retrieved, this value is the same as the * ArchiveSHA256TreeHash value.

This field is null for the following:

*
  • Archive retrieval jobs that specify a range that is not tree-hash * aligned

  • Archival jobs that specify a range that is * equal to the whole archive, when the job status is InProgress

    *
  • Inventory jobs

  • Select jobs

  • *
*/ inline void SetSHA256TreeHash(const Aws::String& value) { m_sHA256TreeHashHasBeenSet = true; m_sHA256TreeHash = value; } /** *

For an archive retrieval job, this value is the checksum of the archive. * Otherwise, this value is null.

The SHA256 tree hash value for the * requested range of an archive. If the InitiateJob request for an archive * specified a tree-hash aligned range, then this field returns a value.

If * the whole archive is retrieved, this value is the same as the * ArchiveSHA256TreeHash value.

This field is null for the following:

*
  • Archive retrieval jobs that specify a range that is not tree-hash * aligned

  • Archival jobs that specify a range that is * equal to the whole archive, when the job status is InProgress

    *
  • Inventory jobs

  • Select jobs

  • *
*/ inline void SetSHA256TreeHash(Aws::String&& value) { m_sHA256TreeHashHasBeenSet = true; m_sHA256TreeHash = std::move(value); } /** *

For an archive retrieval job, this value is the checksum of the archive. * Otherwise, this value is null.

The SHA256 tree hash value for the * requested range of an archive. If the InitiateJob request for an archive * specified a tree-hash aligned range, then this field returns a value.

If * the whole archive is retrieved, this value is the same as the * ArchiveSHA256TreeHash value.

This field is null for the following:

*
  • Archive retrieval jobs that specify a range that is not tree-hash * aligned

  • Archival jobs that specify a range that is * equal to the whole archive, when the job status is InProgress

    *
  • Inventory jobs

  • Select jobs

  • *
*/ inline void SetSHA256TreeHash(const char* value) { m_sHA256TreeHashHasBeenSet = true; m_sHA256TreeHash.assign(value); } /** *

For an archive retrieval job, this value is the checksum of the archive. * Otherwise, this value is null.

The SHA256 tree hash value for the * requested range of an archive. If the InitiateJob request for an archive * specified a tree-hash aligned range, then this field returns a value.

If * the whole archive is retrieved, this value is the same as the * ArchiveSHA256TreeHash value.

This field is null for the following:

*
  • Archive retrieval jobs that specify a range that is not tree-hash * aligned

  • Archival jobs that specify a range that is * equal to the whole archive, when the job status is InProgress

    *
  • Inventory jobs

  • Select jobs

  • *
*/ inline GlacierJobDescription& WithSHA256TreeHash(const Aws::String& value) { SetSHA256TreeHash(value); return *this;} /** *

For an archive retrieval job, this value is the checksum of the archive. * Otherwise, this value is null.

The SHA256 tree hash value for the * requested range of an archive. If the InitiateJob request for an archive * specified a tree-hash aligned range, then this field returns a value.

If * the whole archive is retrieved, this value is the same as the * ArchiveSHA256TreeHash value.

This field is null for the following:

*
  • Archive retrieval jobs that specify a range that is not tree-hash * aligned

  • Archival jobs that specify a range that is * equal to the whole archive, when the job status is InProgress

    *
  • Inventory jobs

  • Select jobs

  • *
*/ inline GlacierJobDescription& WithSHA256TreeHash(Aws::String&& value) { SetSHA256TreeHash(std::move(value)); return *this;} /** *

For an archive retrieval job, this value is the checksum of the archive. * Otherwise, this value is null.

The SHA256 tree hash value for the * requested range of an archive. If the InitiateJob request for an archive * specified a tree-hash aligned range, then this field returns a value.

If * the whole archive is retrieved, this value is the same as the * ArchiveSHA256TreeHash value.

This field is null for the following:

*
  • Archive retrieval jobs that specify a range that is not tree-hash * aligned

  • Archival jobs that specify a range that is * equal to the whole archive, when the job status is InProgress

    *
  • Inventory jobs

  • Select jobs

  • *
*/ inline GlacierJobDescription& WithSHA256TreeHash(const char* value) { SetSHA256TreeHash(value); return *this;} /** *

The SHA256 tree hash of the entire archive for an archive retrieval. For * inventory retrieval or select jobs, this field is null.

*/ inline const Aws::String& GetArchiveSHA256TreeHash() const{ return m_archiveSHA256TreeHash; } /** *

The SHA256 tree hash of the entire archive for an archive retrieval. For * inventory retrieval or select jobs, this field is null.

*/ inline bool ArchiveSHA256TreeHashHasBeenSet() const { return m_archiveSHA256TreeHashHasBeenSet; } /** *

The SHA256 tree hash of the entire archive for an archive retrieval. For * inventory retrieval or select jobs, this field is null.

*/ inline void SetArchiveSHA256TreeHash(const Aws::String& value) { m_archiveSHA256TreeHashHasBeenSet = true; m_archiveSHA256TreeHash = value; } /** *

The SHA256 tree hash of the entire archive for an archive retrieval. For * inventory retrieval or select jobs, this field is null.

*/ inline void SetArchiveSHA256TreeHash(Aws::String&& value) { m_archiveSHA256TreeHashHasBeenSet = true; m_archiveSHA256TreeHash = std::move(value); } /** *

The SHA256 tree hash of the entire archive for an archive retrieval. For * inventory retrieval or select jobs, this field is null.

*/ inline void SetArchiveSHA256TreeHash(const char* value) { m_archiveSHA256TreeHashHasBeenSet = true; m_archiveSHA256TreeHash.assign(value); } /** *

The SHA256 tree hash of the entire archive for an archive retrieval. For * inventory retrieval or select jobs, this field is null.

*/ inline GlacierJobDescription& WithArchiveSHA256TreeHash(const Aws::String& value) { SetArchiveSHA256TreeHash(value); return *this;} /** *

The SHA256 tree hash of the entire archive for an archive retrieval. For * inventory retrieval or select jobs, this field is null.

*/ inline GlacierJobDescription& WithArchiveSHA256TreeHash(Aws::String&& value) { SetArchiveSHA256TreeHash(std::move(value)); return *this;} /** *

The SHA256 tree hash of the entire archive for an archive retrieval. For * inventory retrieval or select jobs, this field is null.

*/ inline GlacierJobDescription& WithArchiveSHA256TreeHash(const char* value) { SetArchiveSHA256TreeHash(value); return *this;} /** *

The retrieved byte range for archive retrieval jobs in the form * StartByteValue-EndByteValue. If no range was specified in the * archive retrieval, then the whole archive is retrieved. In this case, * StartByteValue equals 0 and EndByteValue equals the size of the * archive minus 1. For inventory retrieval or select jobs, this field is null. *

*/ inline const Aws::String& GetRetrievalByteRange() const{ return m_retrievalByteRange; } /** *

The retrieved byte range for archive retrieval jobs in the form * StartByteValue-EndByteValue. If no range was specified in the * archive retrieval, then the whole archive is retrieved. In this case, * StartByteValue equals 0 and EndByteValue equals the size of the * archive minus 1. For inventory retrieval or select jobs, this field is null. *

*/ inline bool RetrievalByteRangeHasBeenSet() const { return m_retrievalByteRangeHasBeenSet; } /** *

The retrieved byte range for archive retrieval jobs in the form * StartByteValue-EndByteValue. If no range was specified in the * archive retrieval, then the whole archive is retrieved. In this case, * StartByteValue equals 0 and EndByteValue equals the size of the * archive minus 1. For inventory retrieval or select jobs, this field is null. *

*/ inline void SetRetrievalByteRange(const Aws::String& value) { m_retrievalByteRangeHasBeenSet = true; m_retrievalByteRange = value; } /** *

The retrieved byte range for archive retrieval jobs in the form * StartByteValue-EndByteValue. If no range was specified in the * archive retrieval, then the whole archive is retrieved. In this case, * StartByteValue equals 0 and EndByteValue equals the size of the * archive minus 1. For inventory retrieval or select jobs, this field is null. *

*/ inline void SetRetrievalByteRange(Aws::String&& value) { m_retrievalByteRangeHasBeenSet = true; m_retrievalByteRange = std::move(value); } /** *

The retrieved byte range for archive retrieval jobs in the form * StartByteValue-EndByteValue. If no range was specified in the * archive retrieval, then the whole archive is retrieved. In this case, * StartByteValue equals 0 and EndByteValue equals the size of the * archive minus 1. For inventory retrieval or select jobs, this field is null. *

*/ inline void SetRetrievalByteRange(const char* value) { m_retrievalByteRangeHasBeenSet = true; m_retrievalByteRange.assign(value); } /** *

The retrieved byte range for archive retrieval jobs in the form * StartByteValue-EndByteValue. If no range was specified in the * archive retrieval, then the whole archive is retrieved. In this case, * StartByteValue equals 0 and EndByteValue equals the size of the * archive minus 1. For inventory retrieval or select jobs, this field is null. *

*/ inline GlacierJobDescription& WithRetrievalByteRange(const Aws::String& value) { SetRetrievalByteRange(value); return *this;} /** *

The retrieved byte range for archive retrieval jobs in the form * StartByteValue-EndByteValue. If no range was specified in the * archive retrieval, then the whole archive is retrieved. In this case, * StartByteValue equals 0 and EndByteValue equals the size of the * archive minus 1. For inventory retrieval or select jobs, this field is null. *

*/ inline GlacierJobDescription& WithRetrievalByteRange(Aws::String&& value) { SetRetrievalByteRange(std::move(value)); return *this;} /** *

The retrieved byte range for archive retrieval jobs in the form * StartByteValue-EndByteValue. If no range was specified in the * archive retrieval, then the whole archive is retrieved. In this case, * StartByteValue equals 0 and EndByteValue equals the size of the * archive minus 1. For inventory retrieval or select jobs, this field is null. *

*/ inline GlacierJobDescription& WithRetrievalByteRange(const char* value) { SetRetrievalByteRange(value); return *this;} /** *

The tier to use for a select or an archive retrieval. Valid values are * Expedited, Standard, or Bulk. * Standard is the default.

*/ inline const Aws::String& GetTier() const{ return m_tier; } /** *

The tier to use for a select or an archive retrieval. Valid values are * Expedited, Standard, or Bulk. * Standard is the default.

*/ inline bool TierHasBeenSet() const { return m_tierHasBeenSet; } /** *

The tier to use for a select or an archive retrieval. Valid values are * Expedited, Standard, or Bulk. * Standard is the default.

*/ inline void SetTier(const Aws::String& value) { m_tierHasBeenSet = true; m_tier = value; } /** *

The tier to use for a select or an archive retrieval. Valid values are * Expedited, Standard, or Bulk. * Standard is the default.

*/ inline void SetTier(Aws::String&& value) { m_tierHasBeenSet = true; m_tier = std::move(value); } /** *

The tier to use for a select or an archive retrieval. Valid values are * Expedited, Standard, or Bulk. * Standard is the default.

*/ inline void SetTier(const char* value) { m_tierHasBeenSet = true; m_tier.assign(value); } /** *

The tier to use for a select or an archive retrieval. Valid values are * Expedited, Standard, or Bulk. * Standard is the default.

*/ inline GlacierJobDescription& WithTier(const Aws::String& value) { SetTier(value); return *this;} /** *

The tier to use for a select or an archive retrieval. Valid values are * Expedited, Standard, or Bulk. * Standard is the default.

*/ inline GlacierJobDescription& WithTier(Aws::String&& value) { SetTier(std::move(value)); return *this;} /** *

The tier to use for a select or an archive retrieval. Valid values are * Expedited, Standard, or Bulk. * Standard is the default.

*/ inline GlacierJobDescription& WithTier(const char* value) { SetTier(value); return *this;} /** *

Parameters used for range inventory retrieval.

*/ inline const InventoryRetrievalJobDescription& GetInventoryRetrievalParameters() const{ return m_inventoryRetrievalParameters; } /** *

Parameters used for range inventory retrieval.

*/ inline bool InventoryRetrievalParametersHasBeenSet() const { return m_inventoryRetrievalParametersHasBeenSet; } /** *

Parameters used for range inventory retrieval.

*/ inline void SetInventoryRetrievalParameters(const InventoryRetrievalJobDescription& value) { m_inventoryRetrievalParametersHasBeenSet = true; m_inventoryRetrievalParameters = value; } /** *

Parameters used for range inventory retrieval.

*/ inline void SetInventoryRetrievalParameters(InventoryRetrievalJobDescription&& value) { m_inventoryRetrievalParametersHasBeenSet = true; m_inventoryRetrievalParameters = std::move(value); } /** *

Parameters used for range inventory retrieval.

*/ inline GlacierJobDescription& WithInventoryRetrievalParameters(const InventoryRetrievalJobDescription& value) { SetInventoryRetrievalParameters(value); return *this;} /** *

Parameters used for range inventory retrieval.

*/ inline GlacierJobDescription& WithInventoryRetrievalParameters(InventoryRetrievalJobDescription&& value) { SetInventoryRetrievalParameters(std::move(value)); return *this;} /** *

Contains the job output location.

*/ inline const Aws::String& GetJobOutputPath() const{ return m_jobOutputPath; } /** *

Contains the job output location.

*/ inline bool JobOutputPathHasBeenSet() const { return m_jobOutputPathHasBeenSet; } /** *

Contains the job output location.

*/ inline void SetJobOutputPath(const Aws::String& value) { m_jobOutputPathHasBeenSet = true; m_jobOutputPath = value; } /** *

Contains the job output location.

*/ inline void SetJobOutputPath(Aws::String&& value) { m_jobOutputPathHasBeenSet = true; m_jobOutputPath = std::move(value); } /** *

Contains the job output location.

*/ inline void SetJobOutputPath(const char* value) { m_jobOutputPathHasBeenSet = true; m_jobOutputPath.assign(value); } /** *

Contains the job output location.

*/ inline GlacierJobDescription& WithJobOutputPath(const Aws::String& value) { SetJobOutputPath(value); return *this;} /** *

Contains the job output location.

*/ inline GlacierJobDescription& WithJobOutputPath(Aws::String&& value) { SetJobOutputPath(std::move(value)); return *this;} /** *

Contains the job output location.

*/ inline GlacierJobDescription& WithJobOutputPath(const char* value) { SetJobOutputPath(value); return *this;} /** *

Contains the parameters used for a select.

*/ inline const SelectParameters& GetSelectParameters() const{ return m_selectParameters; } /** *

Contains the parameters used for a select.

*/ inline bool SelectParametersHasBeenSet() const { return m_selectParametersHasBeenSet; } /** *

Contains the parameters used for a select.

*/ inline void SetSelectParameters(const SelectParameters& value) { m_selectParametersHasBeenSet = true; m_selectParameters = value; } /** *

Contains the parameters used for a select.

*/ inline void SetSelectParameters(SelectParameters&& value) { m_selectParametersHasBeenSet = true; m_selectParameters = std::move(value); } /** *

Contains the parameters used for a select.

*/ inline GlacierJobDescription& WithSelectParameters(const SelectParameters& value) { SetSelectParameters(value); return *this;} /** *

Contains the parameters used for a select.

*/ inline GlacierJobDescription& WithSelectParameters(SelectParameters&& value) { SetSelectParameters(std::move(value)); return *this;} /** *

Contains the location where the data from the select job is stored.

*/ inline const OutputLocation& GetOutputLocation() const{ return m_outputLocation; } /** *

Contains the location where the data from the select job is stored.

*/ inline bool OutputLocationHasBeenSet() const { return m_outputLocationHasBeenSet; } /** *

Contains the location where the data from the select job is stored.

*/ inline void SetOutputLocation(const OutputLocation& value) { m_outputLocationHasBeenSet = true; m_outputLocation = value; } /** *

Contains the location where the data from the select job is stored.

*/ inline void SetOutputLocation(OutputLocation&& value) { m_outputLocationHasBeenSet = true; m_outputLocation = std::move(value); } /** *

Contains the location where the data from the select job is stored.

*/ inline GlacierJobDescription& WithOutputLocation(const OutputLocation& value) { SetOutputLocation(value); return *this;} /** *

Contains the location where the data from the select job is stored.

*/ inline GlacierJobDescription& WithOutputLocation(OutputLocation&& value) { SetOutputLocation(std::move(value)); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline bool RequestIdHasBeenSet() const { return m_requestIdHasBeenSet; } inline void SetRequestId(const Aws::String& value) { m_requestIdHasBeenSet = true; m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestIdHasBeenSet = true; m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestIdHasBeenSet = true; m_requestId.assign(value); } inline GlacierJobDescription& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline GlacierJobDescription& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline GlacierJobDescription& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_jobId; bool m_jobIdHasBeenSet = false; Aws::String m_jobDescription; bool m_jobDescriptionHasBeenSet = false; ActionCode m_action; bool m_actionHasBeenSet = false; Aws::String m_archiveId; bool m_archiveIdHasBeenSet = false; Aws::String m_vaultARN; bool m_vaultARNHasBeenSet = false; Aws::String m_creationDate; bool m_creationDateHasBeenSet = false; bool m_completed; bool m_completedHasBeenSet = false; StatusCode m_statusCode; bool m_statusCodeHasBeenSet = false; Aws::String m_statusMessage; bool m_statusMessageHasBeenSet = false; long long m_archiveSizeInBytes; bool m_archiveSizeInBytesHasBeenSet = false; long long m_inventorySizeInBytes; bool m_inventorySizeInBytesHasBeenSet = false; Aws::String m_sNSTopic; bool m_sNSTopicHasBeenSet = false; Aws::String m_completionDate; bool m_completionDateHasBeenSet = false; Aws::String m_sHA256TreeHash; bool m_sHA256TreeHashHasBeenSet = false; Aws::String m_archiveSHA256TreeHash; bool m_archiveSHA256TreeHashHasBeenSet = false; Aws::String m_retrievalByteRange; bool m_retrievalByteRangeHasBeenSet = false; Aws::String m_tier; bool m_tierHasBeenSet = false; InventoryRetrievalJobDescription m_inventoryRetrievalParameters; bool m_inventoryRetrievalParametersHasBeenSet = false; Aws::String m_jobOutputPath; bool m_jobOutputPathHasBeenSet = false; SelectParameters m_selectParameters; bool m_selectParametersHasBeenSet = false; OutputLocation m_outputLocation; bool m_outputLocationHasBeenSet = false; Aws::String m_requestId; bool m_requestIdHasBeenSet = false; }; } // namespace Model } // namespace Glacier } // namespace Aws