java.lang.Object
org.apache.wicket.authroles.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:
  • Constructor Details

  • Method Details

    • 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 IRequestableComponent> 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