Class ImmutableTemplate.Builder

  • Enclosing class:
    ImmutableTemplate

    @NotThreadSafe
    public static final class ImmutableTemplate.Builder
    extends java.lang.Object
    Builds instances of type ImmutableTemplate. 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 Detail

      • from

        @CanIgnoreReturnValue
        public final ImmutableTemplate.Builder from​(Template instance)
        Fill a builder with attribute values from the provided Template instance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values.
        Parameters:
        instance - The instance from which to copy values
        Returns:
        this builder for use in a chained invocation
      • type

        @CanIgnoreReturnValue
        public final ImmutableTemplate.Builder type​(java.lang.String type)
        Initializes the value for the type attribute.
        Parameters:
        type - The value for type
        Returns:
        this builder for use in a chained invocation
      • regExp

        @CanIgnoreReturnValue
        public final ImmutableTemplate.Builder regExp​(java.lang.String regExp)
        Initializes the optional value regExp to regExp.
        Parameters:
        regExp - The value for regExp
        Returns:
        this builder for chained invocation
      • regExp

        @CanIgnoreReturnValue
        public final ImmutableTemplate.Builder regExp​(java.util.Optional<java.lang.String> regExp)
        Initializes the optional value regExp to regExp.
        Parameters:
        regExp - The value for regExp
        Returns:
        this builder for use in a chained invocation
      • build

        public ImmutableTemplate build()
        Builds a new ImmutableTemplate.
        Returns:
        An immutable instance of Template
        Throws:
        java.lang.IllegalStateException - if any required attributes are missing