Class CfnAgreementProps.Builder

java.lang.Object
software.amazon.awscdk.services.transfer.CfnAgreementProps.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<CfnAgreementProps>
Enclosing interface:
CfnAgreementProps

@Stability(Stable) public static final class CfnAgreementProps.Builder extends Object implements software.amazon.jsii.Builder<CfnAgreementProps>
A builder for CfnAgreementProps
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • accessRole

      @Stability(Stable) public CfnAgreementProps.Builder accessRole(String accessRole)
      Parameters:
      accessRole - Connectors are used to send files using either the AS2 or SFTP protocol. This parameter is required. For the access role, provide the Amazon Resource Name (ARN) of the AWS Identity and Access Management role to use.

      For AS2 connectors

      With AS2, you can send files by calling StartFileTransfer and specifying the file paths in the request parameter, SendFilePaths . We use the file’s parent directory (for example, for --send-file-paths /bucket/dir/file.txt , parent directory is /bucket/dir/ ) to temporarily store a processed AS2 message file, store the MDN when we receive them from the partner, and write a final JSON file containing relevant metadata of the transmission. So, the AccessRole needs to provide read and write access to the parent directory of the file location used in the StartFileTransfer request. Additionally, you need to provide read and write access to the parent directory of the files that you intend to send with StartFileTransfer .

      If you are using Basic authentication for your AS2 connector, the access role requires the secretsmanager:GetSecretValue permission for the secret. If the secret is encrypted using a customer-managed key instead of the AWS managed key in Secrets Manager, then the role also needs the kms:Decrypt permission for that key.

      For SFTP connectors

      Make sure that the access role provides read and write access to the parent directory of the file location that's used in the StartFileTransfer request. Additionally, make sure that the role provides secretsmanager:GetSecretValue permission to AWS Secrets Manager .

      Returns:
      this
    • localProfileId

      @Stability(Stable) public CfnAgreementProps.Builder localProfileId(String localProfileId)
      Parameters:
      localProfileId - A unique identifier for the AS2 local profile. This parameter is required.
      Returns:
      this
    • partnerProfileId

      @Stability(Stable) public CfnAgreementProps.Builder partnerProfileId(String partnerProfileId)
      Parameters:
      partnerProfileId - A unique identifier for the partner profile used in the agreement. This parameter is required.
      Returns:
      this
    • serverId

      @Stability(Stable) public CfnAgreementProps.Builder serverId(String serverId)
      Parameters:
      serverId - A system-assigned unique identifier for a server instance. This parameter is required. This identifier indicates the specific server that the agreement uses.
      Returns:
      this
    • baseDirectory

      @Stability(Stable) public CfnAgreementProps.Builder baseDirectory(String baseDirectory)
      Parameters:
      baseDirectory - The landing directory (folder) for files that are transferred by using the AS2 protocol.
      Returns:
      this
    • customDirectories

      @Stability(Stable) public CfnAgreementProps.Builder customDirectories(IResolvable customDirectories)
      Parameters:
      customDirectories - A CustomDirectoriesType structure. This structure specifies custom directories for storing various AS2 message files. You can specify directories for the following types of files.

      • Failed files
      • MDN files
      • Payload files
      • Status files
      • Temporary files
      Returns:
      this
    • customDirectories

      @Stability(Stable) public CfnAgreementProps.Builder customDirectories(CfnAgreement.CustomDirectoriesProperty customDirectories)
      Parameters:
      customDirectories - A CustomDirectoriesType structure. This structure specifies custom directories for storing various AS2 message files. You can specify directories for the following types of files.

      • Failed files
      • MDN files
      • Payload files
      • Status files
      • Temporary files
      Returns:
      this
    • description

      @Stability(Stable) public CfnAgreementProps.Builder description(String description)
      Parameters:
      description - The name or short description that's used to identify the agreement.
      Returns:
      this
    • enforceMessageSigning

      @Stability(Stable) public CfnAgreementProps.Builder enforceMessageSigning(String enforceMessageSigning)
      Parameters:
      enforceMessageSigning - Determines whether or not unsigned messages from your trading partners will be accepted.
      • ENABLED : Transfer Family rejects unsigned messages from your trading partner.
      • DISABLED (default value): Transfer Family accepts unsigned messages from your trading partner.
      Returns:
      this
    • preserveFilename

      @Stability(Stable) public CfnAgreementProps.Builder preserveFilename(String preserveFilename)
      Parameters:
      preserveFilename - Determines whether or not Transfer Family appends a unique string of characters to the end of the AS2 message payload filename when saving it.
      • ENABLED : the filename provided by your trading parter is preserved when the file is saved.
      • DISABLED (default value): when Transfer Family saves the file, the filename is adjusted, as described in File names and locations .
      Returns:
      this
    • status

      @Stability(Stable) public CfnAgreementProps.Builder status(String status)
      Parameters:
      status - The current status of the agreement, either ACTIVE or INACTIVE .
      Returns:
      this
    • tags

      @Stability(Stable) public CfnAgreementProps.Builder tags(List<? extends CfnTag> tags)
      Sets the value of CfnAgreementProps.getTags()
      Parameters:
      tags - Key-value pairs that can be used to group and search for agreements.
      Returns:
      this
    • build

      @Stability(Stable) public CfnAgreementProps build()
      Builds the configured instance.
      Specified by:
      build in interface software.amazon.jsii.Builder<CfnAgreementProps>
      Returns:
      a new instance of CfnAgreementProps
      Throws:
      NullPointerException - if any required attribute was not provided