Record Class SecurityOperationContext

java.lang.Object
java.lang.Record
com.loomcache.server.security.SecurityOperationContext

public record SecurityOperationContext(String connectionId, String username, Role role, MessageType messageType, AuthConfig.PermissionRequest permissionRequest, @Nullable String resourceName, byte[] key, int valueLength) extends Record
Immutable operation metadata exposed to SecurityInterceptor instances.
  • Constructor Details

    • SecurityOperationContext

      public SecurityOperationContext(String connectionId, String username, Role role, MessageType messageType, AuthConfig.PermissionRequest permissionRequest, @Nullable String resourceName, byte[] key, int valueLength)
      Creates an instance of a SecurityOperationContext record class.
      Parameters:
      connectionId - the value for the connectionId record component
      username - the value for the username record component
      role - the value for the role record component
      messageType - the value for the messageType record component
      permissionRequest - the value for the permissionRequest record component
      resourceName - the value for the resourceName record component
      key - the value for the key record component
      valueLength - the value for the valueLength record component
  • Method Details

    • key

      public byte[] key()
      Returns the value of the key record component.
      Returns:
      the value of the key record component
    • 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.
    • connectionId

      public String connectionId()
      Returns the value of the connectionId record component.
      Returns:
      the value of the connectionId record component
    • username

      public String username()
      Returns the value of the username record component.
      Returns:
      the value of the username record component
    • role

      public Role role()
      Returns the value of the role record component.
      Returns:
      the value of the role record component
    • messageType

      public MessageType messageType()
      Returns the value of the messageType record component.
      Returns:
      the value of the messageType record component
    • permissionRequest

      public AuthConfig.PermissionRequest permissionRequest()
      Returns the value of the permissionRequest record component.
      Returns:
      the value of the permissionRequest record component
    • resourceName

      public @Nullable String resourceName()
      Returns the value of the resourceName record component.
      Returns:
      the value of the resourceName record component
    • valueLength

      public int valueLength()
      Returns the value of the valueLength record component.
      Returns:
      the value of the valueLength record component