Class PVolumeL.Builder<S>

java.lang.Object
com.io7m.jregions.core.parameterized.volumes.PVolumeL.Builder<S>
Enclosing class:
PVolumeL<S>

public static final class PVolumeL.Builder<S> extends Object
Builds instances of type PVolumeL. Initialize attributes and then invoke the build() method to create an immutable instance.

Builder is not thread-safe and generally should not be stored in a field or collection, but instead used immediately to create instances.

  • Method Details

    • from

      public final PVolumeL.Builder<S> from(VolumeValuesLType instance)
      Fill a builder with attribute values from the provided com.io7m.jregions.core.unparameterized.volumes.VolumeValuesLType instance.
      Parameters:
      instance - The instance from which to copy values
      Returns:
      this builder for use in a chained invocation
    • from

      public final PVolumeL.Builder<S> from(PVolumeLType<S> instance)
      Fill a builder with attribute values from the provided com.io7m.jregions.core.parameterized.volumes.PVolumeLType instance.
      Parameters:
      instance - The instance from which to copy values
      Returns:
      this builder for use in a chained invocation
    • setMinimumX

      public final PVolumeL.Builder<S> setMinimumX(long minimumX)
      Initializes the value for the minimumX attribute.
      Parameters:
      minimumX - The value for minimumX
      Returns:
      this builder for use in a chained invocation
    • setMaximumX

      public final PVolumeL.Builder<S> setMaximumX(long maximumX)
      Initializes the value for the maximumX attribute.
      Parameters:
      maximumX - The value for maximumX
      Returns:
      this builder for use in a chained invocation
    • setMinimumY

      public final PVolumeL.Builder<S> setMinimumY(long minimumY)
      Initializes the value for the minimumY attribute.
      Parameters:
      minimumY - The value for minimumY
      Returns:
      this builder for use in a chained invocation
    • setMaximumY

      public final PVolumeL.Builder<S> setMaximumY(long maximumY)
      Initializes the value for the maximumY attribute.
      Parameters:
      maximumY - The value for maximumY
      Returns:
      this builder for use in a chained invocation
    • setMinimumZ

      public final PVolumeL.Builder<S> setMinimumZ(long minimumZ)
      Initializes the value for the minimumZ attribute.
      Parameters:
      minimumZ - The value for minimumZ
      Returns:
      this builder for use in a chained invocation
    • setMaximumZ

      public final PVolumeL.Builder<S> setMaximumZ(long maximumZ)
      Initializes the value for the maximumZ attribute.
      Parameters:
      maximumZ - The value for maximumZ
      Returns:
      this builder for use in a chained invocation
    • build

      public PVolumeL<S> build()
      Builds a new PVolumeL.
      Returns:
      An immutable instance of PVolumeL
      Throws:
      IllegalStateException - if any required attributes are missing