Record Class SwimGossipProtocol.MemberInfo

java.lang.Object
java.lang.Record
com.loomcache.server.cluster.SwimGossipProtocol.MemberInfo
Record Components:
nodeId - unique identifier for the member
address - network address (IP or hostname)
port - network port for SWIM protocol
state - current membership state
incarnation - incarnation number for refuting false suspicions
lastUpdateTime - timestamp (milliseconds) of the last state change
Enclosing class:
SwimGossipProtocol

public static record SwimGossipProtocol.MemberInfo(String nodeId, String address, int port, SwimGossipProtocol.MemberState state, long incarnation, long lastUpdateTime) extends Record
Information about a cluster member.
  • Constructor Details

    • MemberInfo

      public MemberInfo(String nodeId, String address, int port, SwimGossipProtocol.MemberState state, long incarnation, long lastUpdateTime)
      Creates an instance of a MemberInfo record class.
      Parameters:
      nodeId - the value for the nodeId record component
      address - the value for the address record component
      port - the value for the port record component
      state - the value for the state record component
      incarnation - the value for the incarnation record component
      lastUpdateTime - the value for the lastUpdateTime record component
  • Method Details

    • isAlive

      public boolean isAlive()
      Check if this member is alive.
      Returns:
      true if state is Alive
    • isSuspect

      public boolean isSuspect()
      Check if this member is suspected.
      Returns:
      true if state is Suspect
    • isDead

      public boolean isDead()
      Check if this member is dead.
      Returns:
      true if state is Dead
    • toString

      public final String toString()
      Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
      Specified by:
      toString in class Record
      Returns:
      a string representation of this object
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared with Objects::equals(Object,Object); primitive components are compared with the compare method from their corresponding wrapper classes.
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • nodeId

      public String nodeId()
      Returns the value of the nodeId record component.
      Returns:
      the value of the nodeId record component
    • address

      public String address()
      Returns the value of the address record component.
      Returns:
      the value of the address record component
    • port

      public int port()
      Returns the value of the port record component.
      Returns:
      the value of the port record component
    • state

      Returns the value of the state record component.
      Returns:
      the value of the state record component
    • incarnation

      public long incarnation()
      Returns the value of the incarnation record component.
      Returns:
      the value of the incarnation record component
    • lastUpdateTime

      public long lastUpdateTime()
      Returns the value of the lastUpdateTime record component.
      Returns:
      the value of the lastUpdateTime record component