Class ImmutableFormTag

java.lang.Object
io.dialob.api.form.ImmutableFormTag
All Implemented Interfaces:
FormEntity, FormTag, Serializable

@ParametersAreNonnullByDefault @Generated("org.immutables.processor.ProxyProcessor") @Immutable public final class ImmutableFormTag extends Object implements FormTag
Immutable implementation of FormTag.

Use the builder to create immutable instances: ImmutableFormTag.builder().

See Also:
  • Method Details

    • getFormName

      public String getFormName()
      Specified by:
      getFormName in interface FormTag
      Returns:
      The value of the formName attribute
    • getName

      public String getName()
      Specified by:
      getName in interface FormTag
      Returns:
      The value of the name attribute
    • getRefName

      public String getRefName()
      Specified by:
      getRefName in interface FormTag
      Returns:
      The value of the refName attribute
    • getCreated

      public Date getCreated()
      Specified by:
      getCreated in interface FormTag
      Returns:
      The value of the created attribute
    • getFormId

      public String getFormId()
      Specified by:
      getFormId in interface FormTag
      Returns:
      The value of the formId attribute
    • getDescription

      public String getDescription()
      Specified by:
      getDescription in interface FormTag
      Returns:
      The value of the description attribute
    • getType

      public FormTag.Type getType()
      Specified by:
      getType in interface FormTag
      Returns:
      The value of the type attribute
    • withFormName

      public final ImmutableFormTag withFormName(String value)
      Copy the current immutable object by setting a value for the formName attribute. An equals check used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for formName (can be null)
      Returns:
      A modified copy of the this object
    • withName

      public final ImmutableFormTag withName(String value)
      Copy the current immutable object by setting a value for the name attribute. An equals check used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for name (can be null)
      Returns:
      A modified copy of the this object
    • withRefName

      public final ImmutableFormTag withRefName(String value)
      Copy the current immutable object by setting a value for the refName attribute. An equals check used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for refName (can be null)
      Returns:
      A modified copy of the this object
    • withCreated

      public final ImmutableFormTag withCreated(Date value)
      Copy the current immutable object by setting a value for the created attribute. A shallow reference equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for created (can be null)
      Returns:
      A modified copy of the this object
    • withFormId

      public final ImmutableFormTag withFormId(String value)
      Copy the current immutable object by setting a value for the formId attribute. An equals check used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for formId (can be null)
      Returns:
      A modified copy of the this object
    • withDescription

      public final ImmutableFormTag withDescription(String value)
      Copy the current immutable object by setting a value for the description attribute. An equals check used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for description (can be null)
      Returns:
      A modified copy of the this object
    • withType

      public final ImmutableFormTag withType(FormTag.Type value)
      Copy the current immutable object by setting a value for the type attribute. A value equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for type
      Returns:
      A modified copy of the this object
    • equals

      public boolean equals(@Nullable Object another)
      This instance is equal to all instances of ImmutableFormTag that have equal attribute values.
      Overrides:
      equals in class Object
      Returns:
      true if this is equal to another instance
    • hashCode

      public int hashCode()
      Computes a hash code from attributes: formName, name, refName, created, formId, description, type.
      Overrides:
      hashCode in class Object
      Returns:
      hashCode value
    • toString

      public String toString()
      Prints the immutable value FormTag with attribute values.
      Overrides:
      toString in class Object
      Returns:
      A string representation of the value
    • copyOf

      public static ImmutableFormTag copyOf(FormTag instance)
      Creates an immutable copy of a FormTag value. Uses accessors to get values to initialize the new immutable instance. If an instance is already immutable, it is returned as is.
      Parameters:
      instance - The instance to copy
      Returns:
      A copied immutable FormTag instance
    • builder

      public static ImmutableFormTag.Builder builder()
      Creates a builder for ImmutableFormTag.
       ImmutableFormTag.builder()
          .formName(String | null) // nullable formName
          .name(String | null) // nullable name
          .refName(String | null) // nullable refName
          .created(Date | null) // nullable created
          .formId(String | null) // nullable formId
          .description(String | null) // nullable description
          .type(io.dialob.api.form.FormTag.Type) // optional type
          .build();
       
      Returns:
      A new ImmutableFormTag builder