Class AbstractPermission

java.lang.Object
org.springframework.security.acls.domain.AbstractPermission
All Implemented Interfaces:
Serializable, Permission
Direct Known Subclasses:
BasePermission, CumulativePermission

public abstract class AbstractPermission extends Object implements Permission
Provides an abstract superclass for Permission implementations.
Since:
2.0.3
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected final char
     
    protected int
     

    Fields inherited from interface org.springframework.security.acls.model.Permission

    RESERVED_OFF, RESERVED_ON, THIRTY_TWO_RESERVED_OFF
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    Sets the permission mask and uses the '*' character to represent active bits when represented as a bit pattern string.
    protected
    AbstractPermission(int mask, char code)
    Sets the permission mask and uses the specified character for active bits.
  • Method Summary

    Modifier and Type
    Method
    Description
    final boolean
     
    final int
    Returns the bits that represents the permission.
    Returns a 32-character long bit pattern String representing this permission.
    final int
     
    final String
     

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • code

      protected final char code
    • mask

      protected int mask
  • Constructor Details

    • AbstractPermission

      protected AbstractPermission(int mask)
      Sets the permission mask and uses the '*' character to represent active bits when represented as a bit pattern string.
      Parameters:
      mask - the integer bit mask for the permission
    • AbstractPermission

      protected AbstractPermission(int mask, char code)
      Sets the permission mask and uses the specified character for active bits.
      Parameters:
      mask - the integer bit mask for the permission
      code - the character to print for each active bit in the mask (see Permission.getPattern())
  • Method Details

    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public final String toString()
      Overrides:
      toString in class Object
    • getMask

      public final int getMask()
      Description copied from interface: Permission
      Returns the bits that represents the permission.
      Specified by:
      getMask in interface Permission
      Returns:
      the bits that represent the permission
    • getPattern

      public String getPattern()
      Description copied from interface: Permission
      Returns a 32-character long bit pattern String representing this permission.

      Implementations are free to format the pattern as they see fit, although under no circumstances may Permission.RESERVED_OFF or Permission.RESERVED_ON be used within the pattern. An exemption is in the case of Permission.RESERVED_OFF which is used to denote a bit that is off (clear). Implementations may also elect to use Permission.RESERVED_ON internally for computation purposes, although this method may not return any String containing Permission.RESERVED_ON.

      The returned String must be 32 characters in length.

      This method is only used for user interface and logging purposes. It is not used in any permission calculations. Therefore, duplication of characters within the output is permitted.

      Specified by:
      getPattern in interface Permission
      Returns:
      a 32-character bit pattern