Class ImmutableDssrJson.Builder

java.lang.Object
pl.poznan.put.external.dssr.ImmutableDssrJson.Builder
Enclosing class:
ImmutableDssrJson

@NotThreadSafe public static final class ImmutableDssrJson.Builder extends Object
Builds instances of type ImmutableDssrJson. 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 ImmutableDssrJson.Builder from(DssrJson instance)
      Fill a builder with attribute values from the provided DssrJson instance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values. Collection elements and entries will be added, not replaced.
      Parameters:
      instance - The instance from which to copy values
      Returns:
      this builder for use in a chained invocation
    • addPairs

      public final ImmutableDssrJson.Builder addPairs(Pair element)
      Adds one element to pairs list.
      Parameters:
      element - A pairs element
      Returns:
      this builder for use in a chained invocation
    • addPairs

      public final ImmutableDssrJson.Builder addPairs(Pair... elements)
      Adds elements to pairs list.
      Parameters:
      elements - An array of pairs elements
      Returns:
      this builder for use in a chained invocation
    • pairs

      public final ImmutableDssrJson.Builder pairs(Iterable<? extends Pair> elements)
      Sets or replaces all elements for pairs list.
      Parameters:
      elements - An iterable of pairs elements
      Returns:
      this builder for use in a chained invocation
    • addAllPairs

      public final ImmutableDssrJson.Builder addAllPairs(Iterable<? extends Pair> elements)
      Adds elements to pairs list.
      Parameters:
      elements - An iterable of pairs elements
      Returns:
      this builder for use in a chained invocation
    • addNucleotides

      public final ImmutableDssrJson.Builder addNucleotides(Nucleotide element)
      Adds one element to nucleotides list.
      Parameters:
      element - A nucleotides element
      Returns:
      this builder for use in a chained invocation
    • addNucleotides

      public final ImmutableDssrJson.Builder addNucleotides(Nucleotide... elements)
      Adds elements to nucleotides list.
      Parameters:
      elements - An array of nucleotides elements
      Returns:
      this builder for use in a chained invocation
    • nucleotides

      public final ImmutableDssrJson.Builder nucleotides(Iterable<? extends Nucleotide> elements)
      Sets or replaces all elements for nucleotides list.
      Parameters:
      elements - An iterable of nucleotides elements
      Returns:
      this builder for use in a chained invocation
    • addAllNucleotides

      public final ImmutableDssrJson.Builder addAllNucleotides(Iterable<? extends Nucleotide> elements)
      Adds elements to nucleotides list.
      Parameters:
      elements - An iterable of nucleotides elements
      Returns:
      this builder for use in a chained invocation
    • build

      public ImmutableDssrJson build()
      Builds a new ImmutableDssrJson.
      Returns:
      An immutable instance of DssrJson
      Throws:
      IllegalStateException - if any required attributes are missing