javax.security.jacc
Class WebRoleRefPermission

java.lang.Object
  extended by java.security.Permission
      extended by javax.security.jacc.WebRoleRefPermission
All Implemented Interfaces:
Serializable, Guard

public final class WebRoleRefPermission
extends Permission
implements Serializable

Class for Servlet isUserInRole (String reference) permissions. A WebRoleRefPermission is a named permission and has actions.

The name of an WebRoleRefPermission (also referred to as the target name) identifies a Web resource by the servlet name (in the deployment descriptor corresponding to the component from which the call to isUserInRole (String reference) is being made.

The actions of an WebRoleRefPermission identifies the role reference to which the permission applies. A WebRoleRefPermission is checked to determine if the subject is a member of the role identified by the reference.

Implementations of this class MAY implement newPermissionCollection or inherit its implementation from the super class.

Author:
Ron Monzillo, Gary Ellison
See Also:
Permission, Serialized Form

Constructor Summary
WebRoleRefPermission(String name, String actions)
          Creates a new WebRoleRefPermission with the specified name and actions.
 
Method Summary
 boolean equals(Object o)
          Checks two WebRoleRefPermission objects for equality.
 String getActions()
          Returns a canonical String representation of the actions of this WebRoleRefPermission.
 int hashCode()
          Returns the hash code value for this WebRoleRefPermission.
 boolean implies(Permission permission)
          Determines if the argument Permission is "implied by" this WebRoleRefPermission.
 
Methods inherited from class java.security.Permission
checkGuard, getName, newPermissionCollection, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

WebRoleRefPermission

public WebRoleRefPermission(String name,
                            String actions)
Creates a new WebRoleRefPermission with the specified name and actions.

Parameters:
name - the servlet-name that identifies the application specific web resource in whose context the role references are to be evaluated.

actions - identifies the role reference to which the permission pertains. The role reference is scoped to the Web resource identified in the name parameter. The value of the role reference must not be null or the empty string.
Method Detail

equals

public boolean equals(Object o)
Checks two WebRoleRefPermission objects for equality. WebRoleRefPermission objects are equivalent if they have case equivalent name and actions values.

Two Permission objects, P1 and P2, are equivalent if and only if P1.implies(P2) && P2.implies(P1).

The name and actions comparisons described above are case sensitive.

Specified by:
equals in class Permission
Parameters:
o - the WebRoleRefPermission object being tested for equality with this WebRoleRefPermission.
Returns:
true if the argument WebRoleRefPermission object is equivalent to this WebRoleRefPermission.

getActions

public String getActions()
Returns a canonical String representation of the actions of this WebRoleRefPermission.

Specified by:
getActions in class Permission
Returns:
a String containing the canonicalized actions of this WebRoleRefPermission.

hashCode

public int hashCode()
Returns the hash code value for this WebRoleRefPermission. The properties of the returned hash code must be as follows:

Specified by:
hashCode in class Permission
Returns:
the integer hash code value for this object.

implies

public boolean implies(Permission permission)
Determines if the argument Permission is "implied by" this WebRoleRefPermission. For this to be the case,

The comparisons described above are case sensitive.

Specified by:
implies in class Permission
Parameters:
permission - "this" WebRoleRefPermission is checked to see if it implies the argument permission.

Returns:
true if the specified permission is implied by this object, false if not.


Submit a bug or feature

Copyright 2007 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.