bees.core.security
Class EnumerationPermission
java.lang.Object
|
+--bees.core.security.Permission
|
+--bees.core.security.EnumerationPermission
- All Implemented Interfaces:
- java.lang.Cloneable, edu.utah.janosvm.sys.CrossTeamCloneable, PermissionTypes
- public class EnumerationPermission
- extends Permission
An EnumerationPermission holds a string value, representing a symbol, that
can later be mapped to an integer.
Fields inherited from interface bees.core.security.PermissionTypes |
PERMISSION_BASIC, PERMISSION_CLASSES, PERMISSION_COUNT, PERMISSION_ENUMERATION, PERMISSION_FILE, PERMISSION_FLOAT, PERMISSION_INTEGER, PERMISSION_IP_ADDRESS, PERMISSION_MAX, PERMISSION_MAX_FLOAT, PERMISSION_MAX_INTEGER, PERMISSION_MIN, PERMISSION_MIN_FLOAT, PERMISSION_MIN_INTEGER, PERMISSION_NULL, PERMISSION_RANGE |
Constructor Summary |
EnumerationPermission()
Construct an empty EnumerationPermission. |
EnumerationPermission(java.lang.String name,
java.lang.String value)
Construct an EnumerationPermission with the given arguments. |
EnumerationPermission(java.lang.String name,
java.lang.String actions,
java.lang.String value)
Construct an EnumerationPermission with the given arguments. |
Methods inherited from class bees.core.security.Permission |
bound, clone, getAction, getActionMask, getName, grant, instantiate, instantiate, nameImplies, orActionMask, revoke, toBytes, updateHash |
Methods inherited from class java.lang.Object |
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
EnumerationPermission
public EnumerationPermission(java.lang.String name,
java.lang.String actions,
java.lang.String value)
- Construct an EnumerationPermission with the given arguments.
- Parameters:
name
- The name of the permission.actions
- The actions granted by this permission.value
- The symbol name.
EnumerationPermission
public EnumerationPermission(java.lang.String name,
java.lang.String value)
- Construct an EnumerationPermission with the given arguments.
- Parameters:
name
- The name of the permission.value
- The symbol name.
EnumerationPermission
public EnumerationPermission()
- Construct an empty EnumerationPermission.
getTypeID
public int getTypeID()
- Overrides:
getTypeID
in class Permission
- See Also:
Permission.getTypeID()
getValue
public java.lang.String getValue()
- Returns:
- The symbol name.
mapValue
public int mapValue(EnumerationPair[] ep)
throws EnumerationException
- Map the symbol name in this permission to an integer using the given
enumeration. Note: Names are considered case insensitive.
- Parameters:
ep
- The enumeration as an array of EnumerationPair objects.- Returns:
- The integer stored in the matching EnumerationPair object.
- Throws:
EnumerationException
- if the symbol couldn't be matched.
implies
public boolean implies(Permission what)
- Description copied from class:
Permission
- Test whether this permission implies the given permission. For
example, read/write implies the read permission. Names are
case-insensitive.
- Overrides:
implies
in class Permission
- See Also:
Permission.implies(Permission)
marshalledLength
public int marshalledLength()
- Overrides:
marshalledLength
in class Permission
- See Also:
Permission.marshalledLength()
marshal
public void marshal(XdrByteArray xba)
- Description copied from class:
Permission
- Marshal this object into the given byte array.
- Overrides:
marshal
in class Permission
- See Also:
Permission.marshal(XdrByteArray)
unmarshal
public void unmarshal(XdrByteArray xba)
- Description copied from class:
Permission
- Unmarshal this object from the given byte array.
- Overrides:
unmarshal
in class Permission
- See Also:
Permission.unmarshal(XdrByteArray)
equals
public boolean equals(java.lang.Object obj)
- Description copied from class:
Permission
- Tests for exact equality: the name and actions must precisely
match. Names are case-insensitive.
- Overrides:
equals
in class Permission
- See Also:
Object.equals(Object)
toString
public java.lang.String toString()
- Overrides:
toString
in class Permission
- See Also:
Object.toString()
This documentation is Copyright (C) 2002 The University of Utah. All Rights Reserved. See the individual source files for distribution terms.
Documentation, software, and mailing lists for Bees v0.5.0 can be found at the Janos Project: http://www.cs.utah.edu/flux/janos/