Package org.apache.wiki.auth.permissions
Class WikiPermission
- java.lang.Object
-
- java.security.Permission
-
- org.apache.wiki.auth.permissions.WikiPermission
-
- All Implemented Interfaces:
java.io.Serializable
,java.security.Guard
public final class WikiPermission extends java.security.Permission implements java.io.Serializable
Permission to perform an global wiki operation, such as self-registering or creating new pages. Permission actions include:
createGroups
,createPages
,editPreferences
,editProfile
andlogin
.The target is a given wiki. The syntax for the target is the wiki name. "All wikis" can be specified using a wildcard (*). Page collections may also be specified using a wildcard. For pages, the wildcard may be a prefix, suffix, or all by itself.
Certain permissions imply others. Currently,
createGroups
impliescreatePages
.- Since:
- 2.3
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static WikiPermission
CREATE_GROUPS
A static instance of the createGroups permission.static java.lang.String
CREATE_GROUPS_ACTION
Name of the action for createGroups permission.static WikiPermission
CREATE_PAGES
A static instance of the createPages permission.static java.lang.String
CREATE_PAGES_ACTION
Name of the action for createPages permission.static WikiPermission
EDIT_PREFERENCES
A static instance of the editPreferences permission.static java.lang.String
EDIT_PREFERENCES_ACTION
Name of the action for editPreferences permission.static WikiPermission
EDIT_PROFILE
A static instance of the editProfile permission.static java.lang.String
EDIT_PROFILE_ACTION
Name of the action for editProfile permission.static WikiPermission
LOGIN
A static instance of the login permission.static java.lang.String
LOGIN_ACTION
Name of the action for login permission.static java.lang.String
WILDCARD
Value for a generic wildcard.
-
Constructor Summary
Constructors Constructor Description WikiPermission(java.lang.String wiki, java.lang.String actions)
Creates a new WikiPermission for a specified set of actions.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(java.lang.Object obj)
Two WikiPermission objects are considered equal if their wikis and actions (after normalization) are equal.java.lang.String
getActions()
Returns the actions for this permission: "createGroups", "createPages", "editPreferences", "editProfile", or "login".java.lang.String
getWiki()
Returns the name of the wiki containing the page represented by this permission; may return the wildcard string.int
hashCode()
Returns the hash code for this WikiPermission.boolean
implies(java.security.Permission permission)
WikiPermission can only imply other WikiPermissions; no other permission types are implied.java.security.PermissionCollection
newPermissionCollection()
Returns a newAllPermissionCollection
.java.lang.String
toString()
Prints a human-readable representation of this permission.
-
-
-
Field Detail
-
CREATE_GROUPS_ACTION
public static final java.lang.String CREATE_GROUPS_ACTION
Name of the action for createGroups permission.- See Also:
- Constant Field Values
-
CREATE_PAGES_ACTION
public static final java.lang.String CREATE_PAGES_ACTION
Name of the action for createPages permission.- See Also:
- Constant Field Values
-
LOGIN_ACTION
public static final java.lang.String LOGIN_ACTION
Name of the action for login permission.- See Also:
- Constant Field Values
-
EDIT_PREFERENCES_ACTION
public static final java.lang.String EDIT_PREFERENCES_ACTION
Name of the action for editPreferences permission.- See Also:
- Constant Field Values
-
EDIT_PROFILE_ACTION
public static final java.lang.String EDIT_PROFILE_ACTION
Name of the action for editProfile permission.- See Also:
- Constant Field Values
-
WILDCARD
public static final java.lang.String WILDCARD
Value for a generic wildcard.- See Also:
- Constant Field Values
-
CREATE_GROUPS
public static final WikiPermission CREATE_GROUPS
A static instance of the createGroups permission.
-
CREATE_PAGES
public static final WikiPermission CREATE_PAGES
A static instance of the createPages permission.
-
LOGIN
public static final WikiPermission LOGIN
A static instance of the login permission.
-
EDIT_PREFERENCES
public static final WikiPermission EDIT_PREFERENCES
A static instance of the editPreferences permission.
-
EDIT_PROFILE
public static final WikiPermission EDIT_PROFILE
A static instance of the editProfile permission.
-
-
Constructor Detail
-
WikiPermission
public WikiPermission(java.lang.String wiki, java.lang.String actions)
Creates a new WikiPermission for a specified set of actions.- Parameters:
actions
- the actions for this permissionwiki
- The name of the wiki the permission belongs to.
-
-
Method Detail
-
equals
public boolean equals(java.lang.Object obj)
Two WikiPermission objects are considered equal if their wikis and actions (after normalization) are equal.- Specified by:
equals
in classjava.security.Permission
- Parameters:
obj
- the object to test- Returns:
- the result
- See Also:
Object.equals(java.lang.Object)
-
getActions
public java.lang.String getActions()
Returns the actions for this permission: "createGroups", "createPages", "editPreferences", "editProfile", or "login". The actions will always be sorted in alphabetic order, and will always appear in lower case.- Specified by:
getActions
in classjava.security.Permission
- Returns:
- the actions
- See Also:
Permission.getActions()
-
getWiki
public java.lang.String getWiki()
Returns the name of the wiki containing the page represented by this permission; may return the wildcard string.- Returns:
- the wiki
-
hashCode
public int hashCode()
Returns the hash code for this WikiPermission.- Specified by:
hashCode
in classjava.security.Permission
- Returns:
-
implies
public boolean implies(java.security.Permission permission)
WikiPermission can only imply other WikiPermissions; no other permission types are implied. One WikiPermission implies another if all of the other WikiPermission's actions are equal to, or a subset of, those for this permission.- Specified by:
implies
in classjava.security.Permission
- Parameters:
permission
- the permission which may (or may not) be implied by this instance- Returns:
true
if the permission is implied,false
otherwise- See Also:
Permission.implies(java.security.Permission)
-
newPermissionCollection
public java.security.PermissionCollection newPermissionCollection()
Returns a newAllPermissionCollection
.- Overrides:
newPermissionCollection
in classjava.security.Permission
- Returns:
-
toString
public java.lang.String toString()
Prints a human-readable representation of this permission.- Overrides:
toString
in classjava.security.Permission
- Returns:
-
-