/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Provides options for defining a job.See Also:
AWS
* API Reference
When initiating a job to retrieve a vault inventory, you can optionally add * this parameter to your request to specify the output format. If you are * initiating an inventory job and do not specify a Format field, JSON is the * default format. Valid values are "CSV" and "JSON".
*/ inline const Aws::String& GetFormat() const{ return m_format; } /** *When initiating a job to retrieve a vault inventory, you can optionally add * this parameter to your request to specify the output format. If you are * initiating an inventory job and do not specify a Format field, JSON is the * default format. Valid values are "CSV" and "JSON".
*/ inline bool FormatHasBeenSet() const { return m_formatHasBeenSet; } /** *When initiating a job to retrieve a vault inventory, you can optionally add * this parameter to your request to specify the output format. If you are * initiating an inventory job and do not specify a Format field, JSON is the * default format. Valid values are "CSV" and "JSON".
*/ inline void SetFormat(const Aws::String& value) { m_formatHasBeenSet = true; m_format = value; } /** *When initiating a job to retrieve a vault inventory, you can optionally add * this parameter to your request to specify the output format. If you are * initiating an inventory job and do not specify a Format field, JSON is the * default format. Valid values are "CSV" and "JSON".
*/ inline void SetFormat(Aws::String&& value) { m_formatHasBeenSet = true; m_format = std::move(value); } /** *When initiating a job to retrieve a vault inventory, you can optionally add * this parameter to your request to specify the output format. If you are * initiating an inventory job and do not specify a Format field, JSON is the * default format. Valid values are "CSV" and "JSON".
*/ inline void SetFormat(const char* value) { m_formatHasBeenSet = true; m_format.assign(value); } /** *When initiating a job to retrieve a vault inventory, you can optionally add * this parameter to your request to specify the output format. If you are * initiating an inventory job and do not specify a Format field, JSON is the * default format. Valid values are "CSV" and "JSON".
*/ inline JobParameters& WithFormat(const Aws::String& value) { SetFormat(value); return *this;} /** *When initiating a job to retrieve a vault inventory, you can optionally add * this parameter to your request to specify the output format. If you are * initiating an inventory job and do not specify a Format field, JSON is the * default format. Valid values are "CSV" and "JSON".
*/ inline JobParameters& WithFormat(Aws::String&& value) { SetFormat(std::move(value)); return *this;} /** *When initiating a job to retrieve a vault inventory, you can optionally add * this parameter to your request to specify the output format. If you are * initiating an inventory job and do not specify a Format field, JSON is the * default format. Valid values are "CSV" and "JSON".
*/ inline JobParameters& WithFormat(const char* value) { SetFormat(value); return *this;} /** *The job type. You can initiate a job to perform a select query on an archive, * retrieve an archive, or get an inventory of a vault. Valid values are "select", * "archive-retrieval" and "inventory-retrieval".
*/ inline const Aws::String& GetType() const{ return m_type; } /** *The job type. You can initiate a job to perform a select query on an archive, * retrieve an archive, or get an inventory of a vault. Valid values are "select", * "archive-retrieval" and "inventory-retrieval".
*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *The job type. You can initiate a job to perform a select query on an archive, * retrieve an archive, or get an inventory of a vault. Valid values are "select", * "archive-retrieval" and "inventory-retrieval".
*/ inline void SetType(const Aws::String& value) { m_typeHasBeenSet = true; m_type = value; } /** *The job type. You can initiate a job to perform a select query on an archive, * retrieve an archive, or get an inventory of a vault. Valid values are "select", * "archive-retrieval" and "inventory-retrieval".
*/ inline void SetType(Aws::String&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *The job type. You can initiate a job to perform a select query on an archive, * retrieve an archive, or get an inventory of a vault. Valid values are "select", * "archive-retrieval" and "inventory-retrieval".
*/ inline void SetType(const char* value) { m_typeHasBeenSet = true; m_type.assign(value); } /** *The job type. You can initiate a job to perform a select query on an archive, * retrieve an archive, or get an inventory of a vault. Valid values are "select", * "archive-retrieval" and "inventory-retrieval".
*/ inline JobParameters& WithType(const Aws::String& value) { SetType(value); return *this;} /** *The job type. You can initiate a job to perform a select query on an archive, * retrieve an archive, or get an inventory of a vault. Valid values are "select", * "archive-retrieval" and "inventory-retrieval".
*/ inline JobParameters& WithType(Aws::String&& value) { SetType(std::move(value)); return *this;} /** *The job type. You can initiate a job to perform a select query on an archive, * retrieve an archive, or get an inventory of a vault. Valid values are "select", * "archive-retrieval" and "inventory-retrieval".
*/ inline JobParameters& WithType(const char* value) { SetType(value); return *this;} /** *The ID of the archive that you want to retrieve. This field is required only
* if Type
is set to select
or
* archive-retrieval
code>. An error occurs if you specify this
* request parameter for an inventory retrieval job request.
The ID of the archive that you want to retrieve. This field is required only
* if Type
is set to select
or
* archive-retrieval
code>. An error occurs if you specify this
* request parameter for an inventory retrieval job request.
The ID of the archive that you want to retrieve. This field is required only
* if Type
is set to select
or
* archive-retrieval
code>. An error occurs if you specify this
* request parameter for an inventory retrieval job request.
The ID of the archive that you want to retrieve. This field is required only
* if Type
is set to select
or
* archive-retrieval
code>. An error occurs if you specify this
* request parameter for an inventory retrieval job request.
The ID of the archive that you want to retrieve. This field is required only
* if Type
is set to select
or
* archive-retrieval
code>. An error occurs if you specify this
* request parameter for an inventory retrieval job request.
The ID of the archive that you want to retrieve. This field is required only
* if Type
is set to select
or
* archive-retrieval
code>. An error occurs if you specify this
* request parameter for an inventory retrieval job request.
The ID of the archive that you want to retrieve. This field is required only
* if Type
is set to select
or
* archive-retrieval
code>. An error occurs if you specify this
* request parameter for an inventory retrieval job request.
The ID of the archive that you want to retrieve. This field is required only
* if Type
is set to select
or
* archive-retrieval
code>. An error occurs if you specify this
* request parameter for an inventory retrieval job request.
The optional description for the job. The description must be less than or * equal to 1,024 bytes. The allowable characters are 7-bit ASCII without control * codes-specifically, ASCII values 32-126 decimal or 0x20-0x7E hexadecimal.
*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *The optional description for the job. The description must be less than or * equal to 1,024 bytes. The allowable characters are 7-bit ASCII without control * codes-specifically, ASCII values 32-126 decimal or 0x20-0x7E hexadecimal.
*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *The optional description for the job. The description must be less than or * equal to 1,024 bytes. The allowable characters are 7-bit ASCII without control * codes-specifically, ASCII values 32-126 decimal or 0x20-0x7E hexadecimal.
*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *The optional description for the job. The description must be less than or * equal to 1,024 bytes. The allowable characters are 7-bit ASCII without control * codes-specifically, ASCII values 32-126 decimal or 0x20-0x7E hexadecimal.
*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *The optional description for the job. The description must be less than or * equal to 1,024 bytes. The allowable characters are 7-bit ASCII without control * codes-specifically, ASCII values 32-126 decimal or 0x20-0x7E hexadecimal.
*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *The optional description for the job. The description must be less than or * equal to 1,024 bytes. The allowable characters are 7-bit ASCII without control * codes-specifically, ASCII values 32-126 decimal or 0x20-0x7E hexadecimal.
*/ inline JobParameters& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *The optional description for the job. The description must be less than or * equal to 1,024 bytes. The allowable characters are 7-bit ASCII without control * codes-specifically, ASCII values 32-126 decimal or 0x20-0x7E hexadecimal.
*/ inline JobParameters& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *The optional description for the job. The description must be less than or * equal to 1,024 bytes. The allowable characters are 7-bit ASCII without control * codes-specifically, ASCII values 32-126 decimal or 0x20-0x7E hexadecimal.
*/ inline JobParameters& WithDescription(const char* value) { SetDescription(value); return *this;} /** *The Amazon SNS topic ARN to which Amazon S3 Glacier sends a notification when * the job is completed and the output is ready for you to download. The specified * topic publishes the notification to its subscribers. The SNS topic must * exist.
*/ inline const Aws::String& GetSNSTopic() const{ return m_sNSTopic; } /** *The Amazon SNS topic ARN to which Amazon S3 Glacier sends a notification when * the job is completed and the output is ready for you to download. The specified * topic publishes the notification to its subscribers. The SNS topic must * exist.
*/ inline bool SNSTopicHasBeenSet() const { return m_sNSTopicHasBeenSet; } /** *The Amazon SNS topic ARN to which Amazon S3 Glacier sends a notification when * the job is completed and the output is ready for you to download. The specified * topic publishes the notification to its subscribers. The SNS topic must * exist.
*/ inline void SetSNSTopic(const Aws::String& value) { m_sNSTopicHasBeenSet = true; m_sNSTopic = value; } /** *The Amazon SNS topic ARN to which Amazon S3 Glacier sends a notification when * the job is completed and the output is ready for you to download. The specified * topic publishes the notification to its subscribers. The SNS topic must * exist.
*/ inline void SetSNSTopic(Aws::String&& value) { m_sNSTopicHasBeenSet = true; m_sNSTopic = std::move(value); } /** *The Amazon SNS topic ARN to which Amazon S3 Glacier sends a notification when * the job is completed and the output is ready for you to download. The specified * topic publishes the notification to its subscribers. The SNS topic must * exist.
*/ inline void SetSNSTopic(const char* value) { m_sNSTopicHasBeenSet = true; m_sNSTopic.assign(value); } /** *The Amazon SNS topic ARN to which Amazon S3 Glacier sends a notification when * the job is completed and the output is ready for you to download. The specified * topic publishes the notification to its subscribers. The SNS topic must * exist.
*/ inline JobParameters& WithSNSTopic(const Aws::String& value) { SetSNSTopic(value); return *this;} /** *The Amazon SNS topic ARN to which Amazon S3 Glacier sends a notification when * the job is completed and the output is ready for you to download. The specified * topic publishes the notification to its subscribers. The SNS topic must * exist.
*/ inline JobParameters& WithSNSTopic(Aws::String&& value) { SetSNSTopic(std::move(value)); return *this;} /** *The Amazon SNS topic ARN to which Amazon S3 Glacier sends a notification when * the job is completed and the output is ready for you to download. The specified * topic publishes the notification to its subscribers. The SNS topic must * exist.
*/ inline JobParameters& WithSNSTopic(const char* value) { SetSNSTopic(value); return *this;} /** *The byte range to retrieve for an archive retrieval. in the form * "StartByteValue-EndByteValue" If not specified, the whole archive * is retrieved. If specified, the byte range must be megabyte (1024*1024) aligned * which means that StartByteValue must be divisible by 1 MB and * EndByteValue plus 1 must be divisible by 1 MB or be the end of the * archive specified as the archive byte size value minus 1. If RetrievalByteRange * is not megabyte aligned, this operation returns a 400 response.
An error * occurs if you specify this field for an inventory retrieval job request.
*/ inline const Aws::String& GetRetrievalByteRange() const{ return m_retrievalByteRange; } /** *The byte range to retrieve for an archive retrieval. in the form * "StartByteValue-EndByteValue" If not specified, the whole archive * is retrieved. If specified, the byte range must be megabyte (1024*1024) aligned * which means that StartByteValue must be divisible by 1 MB and * EndByteValue plus 1 must be divisible by 1 MB or be the end of the * archive specified as the archive byte size value minus 1. If RetrievalByteRange * is not megabyte aligned, this operation returns a 400 response.
An error * occurs if you specify this field for an inventory retrieval job request.
*/ inline bool RetrievalByteRangeHasBeenSet() const { return m_retrievalByteRangeHasBeenSet; } /** *The byte range to retrieve for an archive retrieval. in the form * "StartByteValue-EndByteValue" If not specified, the whole archive * is retrieved. If specified, the byte range must be megabyte (1024*1024) aligned * which means that StartByteValue must be divisible by 1 MB and * EndByteValue plus 1 must be divisible by 1 MB or be the end of the * archive specified as the archive byte size value minus 1. If RetrievalByteRange * is not megabyte aligned, this operation returns a 400 response.
An error * occurs if you specify this field for an inventory retrieval job request.
*/ inline void SetRetrievalByteRange(const Aws::String& value) { m_retrievalByteRangeHasBeenSet = true; m_retrievalByteRange = value; } /** *The byte range to retrieve for an archive retrieval. in the form * "StartByteValue-EndByteValue" If not specified, the whole archive * is retrieved. If specified, the byte range must be megabyte (1024*1024) aligned * which means that StartByteValue must be divisible by 1 MB and * EndByteValue plus 1 must be divisible by 1 MB or be the end of the * archive specified as the archive byte size value minus 1. If RetrievalByteRange * is not megabyte aligned, this operation returns a 400 response.
An error * occurs if you specify this field for an inventory retrieval job request.
*/ inline void SetRetrievalByteRange(Aws::String&& value) { m_retrievalByteRangeHasBeenSet = true; m_retrievalByteRange = std::move(value); } /** *The byte range to retrieve for an archive retrieval. in the form * "StartByteValue-EndByteValue" If not specified, the whole archive * is retrieved. If specified, the byte range must be megabyte (1024*1024) aligned * which means that StartByteValue must be divisible by 1 MB and * EndByteValue plus 1 must be divisible by 1 MB or be the end of the * archive specified as the archive byte size value minus 1. If RetrievalByteRange * is not megabyte aligned, this operation returns a 400 response.
An error * occurs if you specify this field for an inventory retrieval job request.
*/ inline void SetRetrievalByteRange(const char* value) { m_retrievalByteRangeHasBeenSet = true; m_retrievalByteRange.assign(value); } /** *The byte range to retrieve for an archive retrieval. in the form * "StartByteValue-EndByteValue" If not specified, the whole archive * is retrieved. If specified, the byte range must be megabyte (1024*1024) aligned * which means that StartByteValue must be divisible by 1 MB and * EndByteValue plus 1 must be divisible by 1 MB or be the end of the * archive specified as the archive byte size value minus 1. If RetrievalByteRange * is not megabyte aligned, this operation returns a 400 response.
An error * occurs if you specify this field for an inventory retrieval job request.
*/ inline JobParameters& WithRetrievalByteRange(const Aws::String& value) { SetRetrievalByteRange(value); return *this;} /** *The byte range to retrieve for an archive retrieval. in the form * "StartByteValue-EndByteValue" If not specified, the whole archive * is retrieved. If specified, the byte range must be megabyte (1024*1024) aligned * which means that StartByteValue must be divisible by 1 MB and * EndByteValue plus 1 must be divisible by 1 MB or be the end of the * archive specified as the archive byte size value minus 1. If RetrievalByteRange * is not megabyte aligned, this operation returns a 400 response.
An error * occurs if you specify this field for an inventory retrieval job request.
*/ inline JobParameters& WithRetrievalByteRange(Aws::String&& value) { SetRetrievalByteRange(std::move(value)); return *this;} /** *The byte range to retrieve for an archive retrieval. in the form * "StartByteValue-EndByteValue" If not specified, the whole archive * is retrieved. If specified, the byte range must be megabyte (1024*1024) aligned * which means that StartByteValue must be divisible by 1 MB and * EndByteValue plus 1 must be divisible by 1 MB or be the end of the * archive specified as the archive byte size value minus 1. If RetrievalByteRange * is not megabyte aligned, this operation returns a 400 response.
An error * occurs if you specify this field for an inventory retrieval job request.
*/ inline JobParameters& WithRetrievalByteRange(const char* value) { SetRetrievalByteRange(value); return *this;} /** *The tier to use for a select or an archive retrieval job. Valid values are
* Expedited
, Standard
, or Bulk
.
* Standard
is the default.
The tier to use for a select or an archive retrieval job. Valid values are
* Expedited
, Standard
, or Bulk
.
* Standard
is the default.
The tier to use for a select or an archive retrieval job. Valid values are
* Expedited
, Standard
, or Bulk
.
* Standard
is the default.
The tier to use for a select or an archive retrieval job. Valid values are
* Expedited
, Standard
, or Bulk
.
* Standard
is the default.
The tier to use for a select or an archive retrieval job. Valid values are
* Expedited
, Standard
, or Bulk
.
* Standard
is the default.
The tier to use for a select or an archive retrieval job. Valid values are
* Expedited
, Standard
, or Bulk
.
* Standard
is the default.
The tier to use for a select or an archive retrieval job. Valid values are
* Expedited
, Standard
, or Bulk
.
* Standard
is the default.
The tier to use for a select or an archive retrieval job. Valid values are
* Expedited
, Standard
, or Bulk
.
* Standard
is the default.
Input parameters used for range inventory retrieval.
*/ inline const InventoryRetrievalJobInput& GetInventoryRetrievalParameters() const{ return m_inventoryRetrievalParameters; } /** *Input parameters used for range inventory retrieval.
*/ inline bool InventoryRetrievalParametersHasBeenSet() const { return m_inventoryRetrievalParametersHasBeenSet; } /** *Input parameters used for range inventory retrieval.
*/ inline void SetInventoryRetrievalParameters(const InventoryRetrievalJobInput& value) { m_inventoryRetrievalParametersHasBeenSet = true; m_inventoryRetrievalParameters = value; } /** *Input parameters used for range inventory retrieval.
*/ inline void SetInventoryRetrievalParameters(InventoryRetrievalJobInput&& value) { m_inventoryRetrievalParametersHasBeenSet = true; m_inventoryRetrievalParameters = std::move(value); } /** *Input parameters used for range inventory retrieval.
*/ inline JobParameters& WithInventoryRetrievalParameters(const InventoryRetrievalJobInput& value) { SetInventoryRetrievalParameters(value); return *this;} /** *Input parameters used for range inventory retrieval.
*/ inline JobParameters& WithInventoryRetrievalParameters(InventoryRetrievalJobInput&& value) { SetInventoryRetrievalParameters(std::move(value)); return *this;} /** *Contains the parameters that define a job.
*/ inline const SelectParameters& GetSelectParameters() const{ return m_selectParameters; } /** *Contains the parameters that define a job.
*/ inline bool SelectParametersHasBeenSet() const { return m_selectParametersHasBeenSet; } /** *Contains the parameters that define a job.
*/ inline void SetSelectParameters(const SelectParameters& value) { m_selectParametersHasBeenSet = true; m_selectParameters = value; } /** *Contains the parameters that define a job.
*/ inline void SetSelectParameters(SelectParameters&& value) { m_selectParametersHasBeenSet = true; m_selectParameters = std::move(value); } /** *Contains the parameters that define a job.
*/ inline JobParameters& WithSelectParameters(const SelectParameters& value) { SetSelectParameters(value); return *this;} /** *Contains the parameters that define a job.
*/ inline JobParameters& WithSelectParameters(SelectParameters&& value) { SetSelectParameters(std::move(value)); return *this;} /** *Contains information about the location where the select job results are * stored.
*/ inline const OutputLocation& GetOutputLocation() const{ return m_outputLocation; } /** *Contains information about the location where the select job results are * stored.
*/ inline bool OutputLocationHasBeenSet() const { return m_outputLocationHasBeenSet; } /** *Contains information about the location where the select job results are * stored.
*/ inline void SetOutputLocation(const OutputLocation& value) { m_outputLocationHasBeenSet = true; m_outputLocation = value; } /** *Contains information about the location where the select job results are * stored.
*/ inline void SetOutputLocation(OutputLocation&& value) { m_outputLocationHasBeenSet = true; m_outputLocation = std::move(value); } /** *Contains information about the location where the select job results are * stored.
*/ inline JobParameters& WithOutputLocation(const OutputLocation& value) { SetOutputLocation(value); return *this;} /** *Contains information about the location where the select job results are * stored.
*/ inline JobParameters& WithOutputLocation(OutputLocation&& value) { SetOutputLocation(std::move(value)); return *this;} private: Aws::String m_format; bool m_formatHasBeenSet = false; Aws::String m_type; bool m_typeHasBeenSet = false; Aws::String m_archiveId; bool m_archiveIdHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; Aws::String m_sNSTopic; bool m_sNSTopicHasBeenSet = false; Aws::String m_retrievalByteRange; bool m_retrievalByteRangeHasBeenSet = false; Aws::String m_tier; bool m_tierHasBeenSet = false; InventoryRetrievalJobInput m_inventoryRetrievalParameters; bool m_inventoryRetrievalParametersHasBeenSet = false; SelectParameters m_selectParameters; bool m_selectParametersHasBeenSet = false; OutputLocation m_outputLocation; bool m_outputLocationHasBeenSet = false; }; } // namespace Model } // namespace Glacier } // namespace Aws