public final class ClusterPermission extends Permission implements Serializable
Target name is a string containing a list of one or more comma-separated target attributes. The valid target attributes are:
CacheService
(e.g. InvocationService
). A target name string consisting of a single "*" indicates all clustered resources.
The actions to be granted are passed to the constructor in a string containing a list of one or more comma-separated keywords. The possible keywords are: "create", "destroy", "join", "all". An action string "all" indicates a combination of all valid actions.
Note: the actions string is converted to lowercase before processing.
Modifier and Type | Field and Description |
---|---|
static int |
ALL
All actions.
|
static int |
CREATE
Create action.
|
static int |
DESTROY
Create action.
|
static int |
JOIN
Join action.
|
static int |
NONE
No actions.
|
Constructor and Description |
---|
ClusterPermission(String sTarget, String sAction)
Construct a ClusterPermission object.
|
ClusterPermission(String sClusterName, String sTarget, String sAction)
Construct a ClusterPermission object.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj)
Checks two Permission objects for equality.
|
static String |
formatAction(int nAction)
Format the action string.
|
String |
getActions()
Return the actions as a String in a canonical form.
|
String |
getCacheName()
Return the cache name for this permission object or null if the permission applies to any cache.
|
String |
getClusterName()
Return the cluster name.
|
String |
getServiceName()
Return the service name for this permission object or null if the permission applies to any service.
|
int |
hashCode()
Return the hash code value for this ClusterPermission object.
|
boolean |
implies(Permission permission)
Check if the specified permission's actions are "implied by" this object's actions.
|
static void |
main(String[] asArg)
Unit test allows to compare the specified permissions.
|
protected void |
parseAction(String sAction)
Parse the action string and set the action flag.
|
protected void |
parseTarget(String sTarget)
Parse the target string.
|
checkGuard, getName, newPermissionCollection, toString
public static final int CREATE
public static final int DESTROY
public static final int JOIN
public static final int ALL
public static final int NONE
public ClusterPermission(String sTarget, String sAction)
sTarget
- the clustered resource name; must be specifiedsAction
- the action(s) name; must be specifiedpublic boolean implies(Permission permission)
There is a slight difference in semantics of the wild card ("*") in "this" and passed-in Permission's target. The specified permission for cache-less services will not contain any "cache=" attribute in the target string, while cache services will always specify a "cache=" attribute.
implies
in class Permission
permission
- the permission to check againstpublic boolean equals(Object obj)
equals
in class Permission
obj
- the object we are testing for equality with this objectpublic int hashCode()
hashCode
in class Permission
public String getActions()
getActions
in class Permission
public String getClusterName()
public String getServiceName()
public String getCacheName()
protected void parseTarget(String sTarget)
sTarget
- the target stringprotected void parseAction(String sAction)
sAction
- the action stringpublic static String formatAction(int nAction)
nAction
- the action maskpublic static void main(String[] asArg)
java com.tangosol.net.ClusterPermission <target1> <action1> <target2> <action2>