org.apache.wicket.authorization.strategies.role.metadata
Class InstantiationPermissions

java.lang.Object
  extended by org.apache.wicket.authorization.strategies.role.metadata.InstantiationPermissions
All Implemented Interfaces:
Serializable, IClusterable

public class InstantiationPermissions
extends Object
implements IClusterable

An internal data structure that maps a given component class to a set of role strings. Permissions can be granted to instantiate a given component class via authorize(Class, Roles roles) and denied via unauthorize(Class, Roles roles). All authorization can be removed for a given class with authorizeAll(Class).

Author:
Eelco Hillenius, Jonathan Locke
See Also:
Serialized Form

Constructor Summary
InstantiationPermissions()
           
 
Method Summary
<T extends Component>
void
authorize(Class<T> componentClass, Roles rolesToAdd)
          Gives the given role permission to instantiate the given class.
<T extends Component>
void
authorizeAll(Class<T> componentClass)
          Gives all roles permission to instantiate the given class.
<T extends Component>
Roles
authorizedRoles(Class<T> componentClass)
          Gets the roles that have a binding with the given component class.
protected  Map<Class<? extends Component>,Roles> getRolesForComponentClass()
           
<T extends Component>
void
unauthorize(Class<T> componentClass, Roles rolesToRemove)
          Removes permission for the given role to instantiate the given class.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

InstantiationPermissions

public InstantiationPermissions()
Method Detail

authorize

public final <T extends Component> void authorize(Class<T> componentClass,
                                                  Roles rolesToAdd)
Gives the given role permission to instantiate the given class.

Type Parameters:
T -
Parameters:
componentClass - The component class
rolesToAdd - The roles to add

authorizeAll

public final <T extends Component> void authorizeAll(Class<T> componentClass)
Gives all roles permission to instantiate the given class. Note that this is only relevant if a role was previously authorized for that class. If no roles where previously authorized the effect of the unauthorize call is that no roles at all will be authorized for that class.

Type Parameters:
T -
Parameters:
componentClass - The component class

authorizedRoles

public <T extends Component> Roles authorizedRoles(Class<T> componentClass)
Gets the roles that have a binding with the given component class.

Type Parameters:
T -
Parameters:
componentClass - the component class
Returns:
the roles that have a binding with the given component class, or null if no entries are found

unauthorize

public final <T extends Component> void unauthorize(Class<T> componentClass,
                                                    Roles rolesToRemove)
Removes permission for the given role to instantiate the given class.

Type Parameters:
T -
Parameters:
componentClass - The class
rolesToRemove - The role to deny

getRolesForComponentClass

protected final Map<Class<? extends Component>,Roles> getRolesForComponentClass()
Returns:
gets map with roles objects for a component classes


Copyright © 2004-2011 Apache Software Foundation. All Rights Reserved.