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

Each step type has its own StepDetails structure.

See * Also:

AWS * API Reference

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

The name of the step, used as an identifier.

*/ inline const Aws::String& GetName() const{ return m_name; } /** *

The name of the step, used as an identifier.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

The name of the step, used as an identifier.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

The name of the step, used as an identifier.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

The name of the step, used as an identifier.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

The name of the step, used as an identifier.

*/ inline DecryptStepDetails& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

The name of the step, used as an identifier.

*/ inline DecryptStepDetails& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

The name of the step, used as an identifier.

*/ inline DecryptStepDetails& WithName(const char* value) { SetName(value); return *this;} /** *

The type of encryption used. Currently, this value must be * PGP.

*/ inline const EncryptionType& GetType() const{ return m_type; } /** *

The type of encryption used. Currently, this value must be * PGP.

*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

The type of encryption used. Currently, this value must be * PGP.

*/ inline void SetType(const EncryptionType& value) { m_typeHasBeenSet = true; m_type = value; } /** *

The type of encryption used. Currently, this value must be * PGP.

*/ inline void SetType(EncryptionType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

The type of encryption used. Currently, this value must be * PGP.

*/ inline DecryptStepDetails& WithType(const EncryptionType& value) { SetType(value); return *this;} /** *

The type of encryption used. Currently, this value must be * PGP.

*/ inline DecryptStepDetails& WithType(EncryptionType&& value) { SetType(std::move(value)); return *this;} /** *

Specifies which file to use as input to the workflow step: either the output * from the previous step, or the originally uploaded file for the workflow.

*
  • To use the previous file as the input, enter * ${previous.file}. In this case, this workflow step uses the output * file from the previous workflow step as input. This is the default value.

    *
  • To use the originally uploaded file location as input for this * step, enter ${original.file}.

*/ inline const Aws::String& GetSourceFileLocation() const{ return m_sourceFileLocation; } /** *

Specifies which file to use as input to the workflow step: either the output * from the previous step, or the originally uploaded file for the workflow.

*
  • To use the previous file as the input, enter * ${previous.file}. In this case, this workflow step uses the output * file from the previous workflow step as input. This is the default value.

    *
  • To use the originally uploaded file location as input for this * step, enter ${original.file}.

*/ inline bool SourceFileLocationHasBeenSet() const { return m_sourceFileLocationHasBeenSet; } /** *

Specifies which file to use as input to the workflow step: either the output * from the previous step, or the originally uploaded file for the workflow.

*
  • To use the previous file as the input, enter * ${previous.file}. In this case, this workflow step uses the output * file from the previous workflow step as input. This is the default value.

    *
  • To use the originally uploaded file location as input for this * step, enter ${original.file}.

*/ inline void SetSourceFileLocation(const Aws::String& value) { m_sourceFileLocationHasBeenSet = true; m_sourceFileLocation = value; } /** *

Specifies which file to use as input to the workflow step: either the output * from the previous step, or the originally uploaded file for the workflow.

*
  • To use the previous file as the input, enter * ${previous.file}. In this case, this workflow step uses the output * file from the previous workflow step as input. This is the default value.

    *
  • To use the originally uploaded file location as input for this * step, enter ${original.file}.

*/ inline void SetSourceFileLocation(Aws::String&& value) { m_sourceFileLocationHasBeenSet = true; m_sourceFileLocation = std::move(value); } /** *

Specifies which file to use as input to the workflow step: either the output * from the previous step, or the originally uploaded file for the workflow.

*
  • To use the previous file as the input, enter * ${previous.file}. In this case, this workflow step uses the output * file from the previous workflow step as input. This is the default value.

    *
  • To use the originally uploaded file location as input for this * step, enter ${original.file}.

*/ inline void SetSourceFileLocation(const char* value) { m_sourceFileLocationHasBeenSet = true; m_sourceFileLocation.assign(value); } /** *

Specifies which file to use as input to the workflow step: either the output * from the previous step, or the originally uploaded file for the workflow.

*
  • To use the previous file as the input, enter * ${previous.file}. In this case, this workflow step uses the output * file from the previous workflow step as input. This is the default value.

    *
  • To use the originally uploaded file location as input for this * step, enter ${original.file}.

*/ inline DecryptStepDetails& WithSourceFileLocation(const Aws::String& value) { SetSourceFileLocation(value); return *this;} /** *

Specifies which file to use as input to the workflow step: either the output * from the previous step, or the originally uploaded file for the workflow.

*
  • To use the previous file as the input, enter * ${previous.file}. In this case, this workflow step uses the output * file from the previous workflow step as input. This is the default value.

    *
  • To use the originally uploaded file location as input for this * step, enter ${original.file}.

*/ inline DecryptStepDetails& WithSourceFileLocation(Aws::String&& value) { SetSourceFileLocation(std::move(value)); return *this;} /** *

Specifies which file to use as input to the workflow step: either the output * from the previous step, or the originally uploaded file for the workflow.

*
  • To use the previous file as the input, enter * ${previous.file}. In this case, this workflow step uses the output * file from the previous workflow step as input. This is the default value.

    *
  • To use the originally uploaded file location as input for this * step, enter ${original.file}.

*/ inline DecryptStepDetails& WithSourceFileLocation(const char* value) { SetSourceFileLocation(value); return *this;} /** *

A flag that indicates whether to overwrite an existing file of the same name. * The default is FALSE.

If the workflow is processing a file * that has the same name as an existing file, the behavior is as follows:

    *
  • If OverwriteExisting is TRUE, the existing * file is replaced with the file being processed.

  • If * OverwriteExisting is FALSE, nothing happens, and the * workflow processing stops.

*/ inline const OverwriteExisting& GetOverwriteExisting() const{ return m_overwriteExisting; } /** *

A flag that indicates whether to overwrite an existing file of the same name. * The default is FALSE.

If the workflow is processing a file * that has the same name as an existing file, the behavior is as follows:

    *
  • If OverwriteExisting is TRUE, the existing * file is replaced with the file being processed.

  • If * OverwriteExisting is FALSE, nothing happens, and the * workflow processing stops.

*/ inline bool OverwriteExistingHasBeenSet() const { return m_overwriteExistingHasBeenSet; } /** *

A flag that indicates whether to overwrite an existing file of the same name. * The default is FALSE.

If the workflow is processing a file * that has the same name as an existing file, the behavior is as follows:

    *
  • If OverwriteExisting is TRUE, the existing * file is replaced with the file being processed.

  • If * OverwriteExisting is FALSE, nothing happens, and the * workflow processing stops.

*/ inline void SetOverwriteExisting(const OverwriteExisting& value) { m_overwriteExistingHasBeenSet = true; m_overwriteExisting = value; } /** *

A flag that indicates whether to overwrite an existing file of the same name. * The default is FALSE.

If the workflow is processing a file * that has the same name as an existing file, the behavior is as follows:

    *
  • If OverwriteExisting is TRUE, the existing * file is replaced with the file being processed.

  • If * OverwriteExisting is FALSE, nothing happens, and the * workflow processing stops.

*/ inline void SetOverwriteExisting(OverwriteExisting&& value) { m_overwriteExistingHasBeenSet = true; m_overwriteExisting = std::move(value); } /** *

A flag that indicates whether to overwrite an existing file of the same name. * The default is FALSE.

If the workflow is processing a file * that has the same name as an existing file, the behavior is as follows:

    *
  • If OverwriteExisting is TRUE, the existing * file is replaced with the file being processed.

  • If * OverwriteExisting is FALSE, nothing happens, and the * workflow processing stops.

*/ inline DecryptStepDetails& WithOverwriteExisting(const OverwriteExisting& value) { SetOverwriteExisting(value); return *this;} /** *

A flag that indicates whether to overwrite an existing file of the same name. * The default is FALSE.

If the workflow is processing a file * that has the same name as an existing file, the behavior is as follows:

    *
  • If OverwriteExisting is TRUE, the existing * file is replaced with the file being processed.

  • If * OverwriteExisting is FALSE, nothing happens, and the * workflow processing stops.

*/ inline DecryptStepDetails& WithOverwriteExisting(OverwriteExisting&& value) { SetOverwriteExisting(std::move(value)); return *this;} /** *

Specifies the location for the file being decrypted. Use * ${Transfer:UserName} or ${Transfer:UploadDate} in this * field to parametrize the destination prefix by username or uploaded date.

*
  • Set the value of DestinationFileLocation to * ${Transfer:UserName} to decrypt uploaded files to an Amazon S3 * bucket that is prefixed with the name of the Transfer Family user that uploaded * the file.

  • Set the value of * DestinationFileLocation to ${Transfer:UploadDate} to * decrypt uploaded files to an Amazon S3 bucket that is prefixed with the date of * the upload.

    The system resolves UploadDate to a date * format of YYYY-MM-DD, based on the date the file is uploaded in UTC.

    *
*/ inline const InputFileLocation& GetDestinationFileLocation() const{ return m_destinationFileLocation; } /** *

Specifies the location for the file being decrypted. Use * ${Transfer:UserName} or ${Transfer:UploadDate} in this * field to parametrize the destination prefix by username or uploaded date.

*
  • Set the value of DestinationFileLocation to * ${Transfer:UserName} to decrypt uploaded files to an Amazon S3 * bucket that is prefixed with the name of the Transfer Family user that uploaded * the file.

  • Set the value of * DestinationFileLocation to ${Transfer:UploadDate} to * decrypt uploaded files to an Amazon S3 bucket that is prefixed with the date of * the upload.

    The system resolves UploadDate to a date * format of YYYY-MM-DD, based on the date the file is uploaded in UTC.

    *
*/ inline bool DestinationFileLocationHasBeenSet() const { return m_destinationFileLocationHasBeenSet; } /** *

Specifies the location for the file being decrypted. Use * ${Transfer:UserName} or ${Transfer:UploadDate} in this * field to parametrize the destination prefix by username or uploaded date.

*
  • Set the value of DestinationFileLocation to * ${Transfer:UserName} to decrypt uploaded files to an Amazon S3 * bucket that is prefixed with the name of the Transfer Family user that uploaded * the file.

  • Set the value of * DestinationFileLocation to ${Transfer:UploadDate} to * decrypt uploaded files to an Amazon S3 bucket that is prefixed with the date of * the upload.

    The system resolves UploadDate to a date * format of YYYY-MM-DD, based on the date the file is uploaded in UTC.

    *
*/ inline void SetDestinationFileLocation(const InputFileLocation& value) { m_destinationFileLocationHasBeenSet = true; m_destinationFileLocation = value; } /** *

Specifies the location for the file being decrypted. Use * ${Transfer:UserName} or ${Transfer:UploadDate} in this * field to parametrize the destination prefix by username or uploaded date.

*
  • Set the value of DestinationFileLocation to * ${Transfer:UserName} to decrypt uploaded files to an Amazon S3 * bucket that is prefixed with the name of the Transfer Family user that uploaded * the file.

  • Set the value of * DestinationFileLocation to ${Transfer:UploadDate} to * decrypt uploaded files to an Amazon S3 bucket that is prefixed with the date of * the upload.

    The system resolves UploadDate to a date * format of YYYY-MM-DD, based on the date the file is uploaded in UTC.

    *
*/ inline void SetDestinationFileLocation(InputFileLocation&& value) { m_destinationFileLocationHasBeenSet = true; m_destinationFileLocation = std::move(value); } /** *

Specifies the location for the file being decrypted. Use * ${Transfer:UserName} or ${Transfer:UploadDate} in this * field to parametrize the destination prefix by username or uploaded date.

*
  • Set the value of DestinationFileLocation to * ${Transfer:UserName} to decrypt uploaded files to an Amazon S3 * bucket that is prefixed with the name of the Transfer Family user that uploaded * the file.

  • Set the value of * DestinationFileLocation to ${Transfer:UploadDate} to * decrypt uploaded files to an Amazon S3 bucket that is prefixed with the date of * the upload.

    The system resolves UploadDate to a date * format of YYYY-MM-DD, based on the date the file is uploaded in UTC.

    *
*/ inline DecryptStepDetails& WithDestinationFileLocation(const InputFileLocation& value) { SetDestinationFileLocation(value); return *this;} /** *

Specifies the location for the file being decrypted. Use * ${Transfer:UserName} or ${Transfer:UploadDate} in this * field to parametrize the destination prefix by username or uploaded date.

*
  • Set the value of DestinationFileLocation to * ${Transfer:UserName} to decrypt uploaded files to an Amazon S3 * bucket that is prefixed with the name of the Transfer Family user that uploaded * the file.

  • Set the value of * DestinationFileLocation to ${Transfer:UploadDate} to * decrypt uploaded files to an Amazon S3 bucket that is prefixed with the date of * the upload.

    The system resolves UploadDate to a date * format of YYYY-MM-DD, based on the date the file is uploaded in UTC.

    *
*/ inline DecryptStepDetails& WithDestinationFileLocation(InputFileLocation&& value) { SetDestinationFileLocation(std::move(value)); return *this;} private: Aws::String m_name; bool m_nameHasBeenSet = false; EncryptionType m_type; bool m_typeHasBeenSet = false; Aws::String m_sourceFileLocation; bool m_sourceFileLocationHasBeenSet = false; OverwriteExisting m_overwriteExisting; bool m_overwriteExistingHasBeenSet = false; InputFileLocation m_destinationFileLocation; bool m_destinationFileLocationHasBeenSet = false; }; } // namespace Model } // namespace Transfer } // namespace Aws