Class ImmutableSessionInfo.Builder

java.lang.Object
org.kiwiproject.consul.model.session.ImmutableSessionInfo.Builder
Enclosing class:
ImmutableSessionInfo

public static final class ImmutableSessionInfo.Builder extends Object
Builds instances of type ImmutableSessionInfo. 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

      @CanIgnoreReturnValue public final ImmutableSessionInfo.Builder from(SessionInfo instance)
      Fill a builder with attribute values from the provided SessionInfo 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
    • createIndex

      @CanIgnoreReturnValue public final ImmutableSessionInfo.Builder createIndex(long createIndex)
      Initializes the value for the createIndex attribute.
      Parameters:
      createIndex - The value for createIndex
      Returns:
      this builder for use in a chained invocation
    • lockDelay

      @CanIgnoreReturnValue public final ImmutableSessionInfo.Builder lockDelay(Long lockDelay)
      Initializes the value for the lockDelay attribute.
      Parameters:
      lockDelay - The value for lockDelay
      Returns:
      this builder for use in a chained invocation
    • name

      @CanIgnoreReturnValue public final ImmutableSessionInfo.Builder name(String name)
      Initializes the optional value name to name.
      Parameters:
      name - The value for name
      Returns:
      this builder for chained invocation
    • name

      @CanIgnoreReturnValue public final ImmutableSessionInfo.Builder name(Optional<String> name)
      Initializes the optional value name to name.
      Parameters:
      name - The value for name
      Returns:
      this builder for use in a chained invocation
    • node

      @CanIgnoreReturnValue public final ImmutableSessionInfo.Builder node(String node)
      Initializes the value for the node attribute.
      Parameters:
      node - The value for node
      Returns:
      this builder for use in a chained invocation
    • addChecks

      @CanIgnoreReturnValue public final ImmutableSessionInfo.Builder addChecks(String element)
      Adds one element to checks list.
      Parameters:
      element - A checks element
      Returns:
      this builder for use in a chained invocation
    • addChecks

      @CanIgnoreReturnValue public final ImmutableSessionInfo.Builder addChecks(String... elements)
      Adds elements to checks list.
      Parameters:
      elements - An array of checks elements
      Returns:
      this builder for use in a chained invocation
    • checks

      @CanIgnoreReturnValue public final ImmutableSessionInfo.Builder checks(Iterable<String> elements)
      Sets or replaces all elements for checks list.
      Parameters:
      elements - An iterable of checks elements
      Returns:
      this builder for use in a chained invocation
    • addAllChecks

      @CanIgnoreReturnValue public final ImmutableSessionInfo.Builder addAllChecks(Iterable<String> elements)
      Adds elements to checks list.
      Parameters:
      elements - An iterable of checks elements
      Returns:
      this builder for use in a chained invocation
    • behavior

      @CanIgnoreReturnValue public final ImmutableSessionInfo.Builder behavior(String behavior)
      Initializes the value for the behavior attribute.
      Parameters:
      behavior - The value for behavior
      Returns:
      this builder for use in a chained invocation
    • ttl

      @CanIgnoreReturnValue public final ImmutableSessionInfo.Builder ttl(String ttl)
      Initializes the optional value ttl to ttl.
      Parameters:
      ttl - The value for ttl
      Returns:
      this builder for chained invocation
    • ttl

      @CanIgnoreReturnValue public final ImmutableSessionInfo.Builder ttl(Optional<String> ttl)
      Initializes the optional value ttl to ttl.
      Parameters:
      ttl - The value for ttl
      Returns:
      this builder for use in a chained invocation
    • id

      @CanIgnoreReturnValue public final ImmutableSessionInfo.Builder id(String id)
      Initializes the value for the id attribute.
      Parameters:
      id - The value for id
      Returns:
      this builder for use in a chained invocation
    • build

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