Class ImmutableSetAnswer.Builder

  • Enclosing class:
    ImmutableSetAnswer

    @NotThreadSafe
    public static final class ImmutableSetAnswer.Builder
    extends Object
    Builds instances of type ImmutableSetAnswer. 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 ImmutableSetAnswer.Builder from​(SetAnswer instance)
        Fill a builder with attribute values from the provided SetAnswer 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
      • addTriggers

        @CanIgnoreReturnValue
        public final ImmutableSetAnswer.Builder addTriggers​(Trigger<ItemState> element)
        Adds one element to triggers list.
        Parameters:
        element - A triggers element
        Returns:
        this builder for use in a chained invocation
      • triggers

        @CanIgnoreReturnValue
        public final ImmutableSetAnswer.Builder triggers​(Iterable<? extends Trigger<ItemState>> elements)
        Sets or replaces all elements for triggers list.
        Parameters:
        elements - An iterable of triggers elements
        Returns:
        this builder for use in a chained invocation
      • addAllTriggers

        @CanIgnoreReturnValue
        public final ImmutableSetAnswer.Builder addAllTriggers​(Iterable<? extends Trigger<ItemState>> elements)
        Adds elements to triggers list.
        Parameters:
        elements - An iterable of triggers elements
        Returns:
        this builder for use in a chained invocation
      • targetId

        @CanIgnoreReturnValue
        public final ImmutableSetAnswer.Builder targetId​(ItemId targetId)
        Initializes the value for the targetId attribute.
        Parameters:
        targetId - The value for targetId
        Returns:
        this builder for use in a chained invocation
      • answer

        @CanIgnoreReturnValue
        public final ImmutableSetAnswer.Builder answer​(@Nullable
                                                       Object answer)
        Initializes the value for the answer attribute.
        Parameters:
        answer - The value for answer (can be null)
        Returns:
        this builder for use in a chained invocation