Package java.util

## Class PropertyPermission

- java.lang.Object
- - java.security.Permission
  - - java.security.BasicPermission
    - - java.util.PropertyPermission

- All Implemented Interfaces:
    `Serializable`, `Guard`

      public final class PropertyPermission
      extends BasicPermission

  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `PropertyPermission​(String name, String actions)` | Creates a new PropertyPermission object with the specified name.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `equals​(Object obj)` | Checks two PropertyPermission objects for equality.
    `String` | `getActions()` | Returns the "canonical string representation" of the actions.
    `int` | `hashCode()` | Returns the hash code value for this object.
    `boolean` | `implies​(Permission p)` | Checks if this PropertyPermission object "implies" the specified permission.

    - ### Methods inherited from class java.security.Permission

      `getName, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### PropertyPermission

          public PropertyPermission​(String name,
                                    String actions)

      Creates a new PropertyPermission object with the specified name. The name is the name of the system property, and actions contains a comma-separated list of the desired actions granted on the property. Possible actions are "read" and "write".
      Parameters:
        `name` - the name of the PropertyPermission.
        `actions` - the actions string.
      Throws:
        `NullPointerException` - if `name` is `null`.
        `IllegalArgumentException` - if `name` is empty or if `actions` is invalid.

  - ### Method Detail

    - #### equals

          public boolean equals​(@Nullable
                                Object obj)

      Checks two PropertyPermission objects for equality. Checks that obj is a PropertyPermission, and has the same name and actions as this object.

      Overrides:
        `equals` in class `BasicPermission`
      Parameters:
        `obj` - the object we are testing for equality with this object.
      Returns:
        true if obj is a PropertyPermission, and has the same name and actions as this PropertyPermission object.
      See Also:
        `Object.hashCode()`, `HashMap`

    - #### getActions

          public String getActions()

      Returns the "canonical string representation" of the actions. That is, this method always returns present actions in the following order: read, write. For example, if this PropertyPermission object allows both write and read actions, a call to `getActions` will return the string "read,write".
      Overrides:
        `getActions` in class `BasicPermission`
      Returns:
        the canonical string representation of the actions.

    - #### hashCode

          public int hashCode()

      Description copied from class: `BasicPermission`
      Returns the hash code value for this object. The hash code used is the hash code of the name, that is, `getName().hashCode()`, where `getName` is from the Permission superclass.
      Overrides:
        `hashCode` in class `BasicPermission`
      Returns:
        a hash code value for this object.
      See Also:
        `Object.equals(java.lang.Object)`, `System.identityHashCode(java.lang.Object)`

    - #### implies

          public boolean implies​(Permission p)

      Checks if this PropertyPermission object "implies" the specified permission.

      More specifically, this method returns true if:

      - p is an instanceof PropertyPermission,
      - p's actions are a subset of this object's actions, and
      - p's name is implied by this object's name. For example, "java.*" implies "java.home".
      Overrides:
        `implies` in class `BasicPermission`
      Parameters:
        `p` - the permission to check against.
      Returns:
        true if the specified permission is implied by this object, false if not.