Class AlertPermission

java.lang.Object
java.security.Permission
org.osgi.service.dmt.security.AlertPermission
All Implemented Interfaces:
Serializable, Guard

public class AlertPermission extends Permission
Indicates the callers authority to send alerts to management servers, identified by their principal names.

AlertPermission has a target string which controls the principal names where alerts can be sent. A wildcard is allowed at the end of the target string, to allow sending alerts to any principal with a name matching the given prefix. The "*" target means that alerts can be sent to any destination.

See Also:
  • Constructor Details

    • AlertPermission

      public AlertPermission(String target)
      Creates a new AlertPermission object with its name set to the target string. Name must be non-null and non-empty.
      Parameters:
      target - the name of a principal, can end with * to match any principal identifier with the given prefix
      Throws:
      NullPointerException - if name is null
      IllegalArgumentException - if name is empty
    • AlertPermission

      public AlertPermission(String target, String actions)
      Creates a new AlertPermission object using the 'canonical' two argument constructor. In this version this class does not define any actions, the second argument of this constructor must be "*" so that this class can later be extended in a backward compatible way.
      Parameters:
      target - the name of the server, can end with * to match any server identifier with the given prefix
      actions - no actions defined, must be "*" for forward compatibility
      Throws:
      NullPointerException - if name or actions is null
      IllegalArgumentException - if name is empty or actions is not "*"
  • Method Details

    • equals

      public boolean equals(Object obj)
      Checks whether the given object is equal to this AlertPermission instance. Two AlertPermission instances are equal if they have the same target string.
      Specified by:
      equals in class Permission
      Parameters:
      obj - the object to compare to this AlertPermission instance
      Returns:
      true if the parameter represents the same permissions as this instance
    • getActions

      public String getActions()
      Returns the action list (always * in the current version).
      Specified by:
      getActions in class Permission
      Returns:
      the action string "*"
    • hashCode

      public int hashCode()
      Returns the hash code for this permission object. If two AlertPermission objects are equal according to the equals(Object) method, then calling this method on each of the two AlertPermission objects must produce the same integer result.
      Specified by:
      hashCode in class Permission
      Returns:
      hash code for this permission object
    • implies

      public boolean implies(Permission p)
      Checks if this AlertPermission object implies the specified permission. Another AlertPermission instance is implied by this permission either if the target strings are identical, or if this target can be made identical to the other target by replacing a trailing "*" with any string.
      Specified by:
      implies in class Permission
      Parameters:
      p - the permission to check for implication
      Returns:
      true if this AlertPermission instance implies the specified permission
    • newPermissionCollection

      public PermissionCollection newPermissionCollection()
      Returns a new PermissionCollection object for storing AlertPermission objects.
      Overrides:
      newPermissionCollection in class Permission
      Returns:
      the new PermissionCollection