Class EfsVolumeOptions.Builder

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

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

    • Builder

      public Builder()
  • Method Details

    • fileSystem

      @Stability(Stable) public EfsVolumeOptions.Builder fileSystem(IFileSystem fileSystem)
      Parameters:
      fileSystem - The EFS File System that supports this volume. This parameter is required.
      Returns:
      this
    • accessPointId

      @Stability(Stable) public EfsVolumeOptions.Builder accessPointId(String accessPointId)
      Parameters:
      accessPointId - The Amazon EFS access point ID to use. If an access point is specified, rootDirectory must either be omitted or set to / which enforces the path set on the EFS access point. If an access point is used, enableTransitEncryption must be true.
      Returns:
      this
    • enableTransitEncryption

      @Stability(Stable) public EfsVolumeOptions.Builder enableTransitEncryption(Boolean enableTransitEncryption)
      Parameters:
      enableTransitEncryption - Enables encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server.
      Returns:
      this
    • rootDirectory

      @Stability(Stable) public EfsVolumeOptions.Builder rootDirectory(String rootDirectory)
      Parameters:
      rootDirectory - The directory within the Amazon EFS file system to mount as the root directory inside the host. If this parameter is omitted, the root of the Amazon EFS volume is used instead. Specifying / has the same effect as omitting this parameter. The maximum length is 4,096 characters.
      Returns:
      this
    • transitEncryptionPort

      @Stability(Stable) public EfsVolumeOptions.Builder transitEncryptionPort(Number transitEncryptionPort)
      Parameters:
      transitEncryptionPort - The port to use when sending encrypted data between the Amazon ECS host and the Amazon EFS server. The value must be between 0 and 65,535.
      Returns:
      this
    • useJobRole

      @Stability(Stable) public EfsVolumeOptions.Builder useJobRole(Boolean useJobRole)
      Parameters:
      useJobRole - Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If specified, enableTransitEncryption must be true.
      Returns:
      this
    • containerPath

      @Stability(Stable) public EfsVolumeOptions.Builder containerPath(String containerPath)
      Parameters:
      containerPath - the path on the container where this volume is mounted. This parameter is required.
      Returns:
      this
    • name

      @Stability(Stable) public EfsVolumeOptions.Builder name(String name)
      Sets the value of EcsVolumeOptions.getName()
      Parameters:
      name - the name of this volume. This parameter is required.
      Returns:
      this
    • readonly

      @Stability(Stable) public EfsVolumeOptions.Builder readonly(Boolean readonly)
      Parameters:
      readonly - if set, the container will have readonly access to the volume.
      Returns:
      this
    • build

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