Class SlackCall

java.lang.Object
com.hubspot.slack.client.models.calls.SlackCall
All Implemented Interfaces:
SlackCallIF

@Generated(from="SlackCallIF", generator="Immutables") @ParametersAreNonnullByDefault @Generated("org.immutables.processor.ProxyProcessor") @Immutable public final class SlackCall extends Object implements SlackCallIF
Immutable implementation of SlackCallIF.

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

  • Method Details

    • getExternalUniqueId

      public String getExternalUniqueId()
      Specified by:
      getExternalUniqueId in interface SlackCallIF
      Returns:
      The value of the externalUniqueId attribute
    • getId

      public String getId()
      Specified by:
      getId in interface SlackCallIF
      Returns:
      The value of the id attribute
    • getStartDateEpochSeconds

      public Optional<Integer> getStartDateEpochSeconds()
      Specified by:
      getStartDateEpochSeconds in interface SlackCallIF
      Returns:
      The value of the startDateEpochSeconds attribute
    • getStartDate

      public Optional<Instant> getStartDate()
      Specified by:
      getStartDate in interface SlackCallIF
      Returns:
      The computed-at-construction value of the startDate attribute
    • getDesktopAppJoinUrl

      public Optional<String> getDesktopAppJoinUrl()
      Specified by:
      getDesktopAppJoinUrl in interface SlackCallIF
      Returns:
      The value of the desktopAppJoinUrl attribute
    • getExternalDisplayId

      public Optional<String> getExternalDisplayId()
      Specified by:
      getExternalDisplayId in interface SlackCallIF
      Returns:
      The value of the externalDisplayId attribute
    • getTitle

      public Optional<String> getTitle()
      Specified by:
      getTitle in interface SlackCallIF
      Returns:
      The value of the title attribute
    • getUsers

      public List<SlackInternalOrExternalUser> getUsers()
      Specified by:
      getUsers in interface SlackCallIF
      Returns:
      The value of the users attribute
    • withExternalUniqueId

      public final SlackCall withExternalUniqueId(String value)
      Copy the current immutable object by setting a value for the externalUniqueId attribute. An equals check used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for externalUniqueId
      Returns:
      A modified copy or the this object
    • withId

      public final SlackCall withId(String value)
      Copy the current immutable object by setting a value for the id attribute. An equals check used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for id
      Returns:
      A modified copy or the this object
    • withStartDateEpochSeconds

      public final SlackCall withStartDateEpochSeconds(@Nullable Integer value)
      Copy the current immutable object by setting a present value for the optional startDateEpochSeconds attribute.
      Parameters:
      value - The value for startDateEpochSeconds, null is accepted as java.util.Optional.empty()
      Returns:
      A modified copy or this if not changed
    • withStartDateEpochSeconds

      public final SlackCall withStartDateEpochSeconds(Optional<Integer> optional)
      Copy the current immutable object by setting an optional value for the startDateEpochSeconds attribute. An equality check is used on inner value to prevent copying of the same value by returning this.
      Parameters:
      optional - An optional value for startDateEpochSeconds
      Returns:
      A modified copy or this if not changed
    • withDesktopAppJoinUrl

      public final SlackCall withDesktopAppJoinUrl(@Nullable String value)
      Copy the current immutable object by setting a present value for the optional desktopAppJoinUrl attribute.
      Parameters:
      value - The value for desktopAppJoinUrl, null is accepted as java.util.Optional.empty()
      Returns:
      A modified copy or this if not changed
    • withDesktopAppJoinUrl

      public final SlackCall withDesktopAppJoinUrl(Optional<String> optional)
      Copy the current immutable object by setting an optional value for the desktopAppJoinUrl attribute. An equality check is used on inner value to prevent copying of the same value by returning this.
      Parameters:
      optional - An optional value for desktopAppJoinUrl
      Returns:
      A modified copy or this if not changed
    • withExternalDisplayId

      public final SlackCall withExternalDisplayId(@Nullable String value)
      Copy the current immutable object by setting a present value for the optional externalDisplayId attribute.
      Parameters:
      value - The value for externalDisplayId, null is accepted as java.util.Optional.empty()
      Returns:
      A modified copy or this if not changed
    • withExternalDisplayId

      public final SlackCall withExternalDisplayId(Optional<String> optional)
      Copy the current immutable object by setting an optional value for the externalDisplayId attribute. An equality check is used on inner value to prevent copying of the same value by returning this.
      Parameters:
      optional - An optional value for externalDisplayId
      Returns:
      A modified copy or this if not changed
    • withTitle

      public final SlackCall withTitle(@Nullable String value)
      Copy the current immutable object by setting a present value for the optional title attribute.
      Parameters:
      value - The value for title, null is accepted as java.util.Optional.empty()
      Returns:
      A modified copy or this if not changed
    • withTitle

      public final SlackCall withTitle(Optional<String> optional)
      Copy the current immutable object by setting an optional value for the title attribute. An equality check is used on inner value to prevent copying of the same value by returning this.
      Parameters:
      optional - An optional value for title
      Returns:
      A modified copy or this if not changed
    • withUsers

      public final SlackCall withUsers(SlackInternalOrExternalUser... elements)
      Copy the current immutable object with elements that replace the content of users.
      Parameters:
      elements - The elements to set
      Returns:
      A modified copy of this object
    • withUsers

      public final SlackCall withUsers(Iterable<? extends SlackInternalOrExternalUser> elements)
      Copy the current immutable object with elements that replace the content of users. A shallow reference equality check is used to prevent copying of the same value by returning this.
      Parameters:
      elements - An iterable of users elements to set
      Returns:
      A modified copy or this if not changed
    • equals

      public boolean equals(@Nullable Object another)
      This instance is equal to all instances of SlackCall 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: externalUniqueId, id, startDateEpochSeconds, startDate, desktopAppJoinUrl, externalDisplayId, title, users.
      Overrides:
      hashCode in class Object
      Returns:
      hashCode value
    • toString

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

      public static SlackCall copyOf(SlackCallIF instance)
      Creates an immutable copy of a SlackCallIF 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 SlackCall instance
    • builder

      public static SlackCall.Builder builder()
      Creates a builder for SlackCall.
       SlackCall.builder()
          .setExternalUniqueId(String) // required externalUniqueId
          .setId(String) // required id
          .setStartDateEpochSeconds(Optional<Integer>) // optional startDateEpochSeconds
          .setDesktopAppJoinUrl(Optional<String>) // optional desktopAppJoinUrl
          .setExternalDisplayId(Optional<String>) // optional externalDisplayId
          .setTitle(Optional<String>) // optional title
          .addUsers|addAllUsers(com.hubspot.slack.client.models.calls.SlackInternalOrExternalUser) // users elements
          .build();
       
      Returns:
      A new SlackCall builder