Record Class UserSession.Device

java.lang.Object
java.lang.Record
com.axelor.auth.UserSession.Device
Record Components:
remoteIp - IP address of the client
browser - browser family name (e.g. "Chrome"), or null if unknown
os - operating system family name (e.g. "Linux"), or null if unknown
device - device family name (e.g. "Desktop"), or null if unknown
Enclosing class:
UserSession

public static record UserSession.Device(String remoteIp, String browser, String os, String device) extends Record
Device and network information
  • Constructor Details

    • Device

      public Device(String remoteIp, String browser, String os, String device)
      Creates an instance of a Device record class.
      Parameters:
      remoteIp - the value for the remoteIp record component
      browser - the value for the browser record component
      os - the value for the os record component
      device - the value for the device record component
  • Method Details

    • of

      public static UserSession.Device of(String remoteIp, UserAgentParser.UserAgentInfo ua)
      Creates a UserSession.Device from a remote IP and a parsed User-Agent.
      Parameters:
      remoteIp - client IP address
      ua - parsed User-Agent info
      Returns:
      a fully populated UserSession.Device
    • ofIpOnly

      public static UserSession.Device ofIpOnly(String remoteIp)
      Creates a UserSession.Device with only the IP address, when User-Agent parsing is unavailable.
      Parameters:
      remoteIp - client IP address
      Returns:
      a UserSession.Device with null browser, os, and device fields
    • 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. All components in this record class are compared with Objects::equals(Object,Object).
      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.
    • remoteIp

      public String remoteIp()
      Returns the value of the remoteIp record component.
      Returns:
      the value of the remoteIp record component
    • browser

      public String browser()
      Returns the value of the browser record component.
      Returns:
      the value of the browser record component
    • os

      public String os()
      Returns the value of the os record component.
      Returns:
      the value of the os record component
    • device

      public String device()
      Returns the value of the device record component.
      Returns:
      the value of the device record component