org.objectweb.easybeans.security.struct
Class JGroup

java.lang.Object
  extended by org.objectweb.easybeans.security.struct.JGroup
All Implemented Interfaces:
java.io.Serializable, java.security.acl.Group, java.security.Principal

public class JGroup
extends java.lang.Object
implements java.security.acl.Group, java.io.Serializable

This class represents all the roles of a principal (group of principals). These roles are added to the Subject

Author:
Florent Benoit
See Also:
Serialized Form

Field Summary
private  java.lang.String groupName
          Name of this group.
private  java.util.Vector<java.security.Principal> members
          Members of this group.
private static long serialVersionUID
          UID for serialization.
 
Constructor Summary
JGroup(java.lang.String groupName)
          Build a new group with the following name.
 
Method Summary
 boolean addMember(java.security.Principal user)
          Adds the specified member to the group.
 boolean equals(java.lang.Object another)
          Compares this principal to the specified object.
 java.lang.String getName()
          Returns the name of this principal.
 int hashCode()
          Returns a hashcode for this principal.
 boolean isMember(java.security.Principal member)
          Returns true if the passed principal is a member of the group.
 java.util.Enumeration<? extends java.security.Principal> members()
          Returns an enumeration of the members in the group.
 boolean removeMember(java.security.Principal user)
          Removes the specified member from the group.
 java.lang.String toString()
          Returns a string representation of this principal.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

serialVersionUID

private static final long serialVersionUID
UID for serialization.

See Also:
Constant Field Values

groupName

private java.lang.String groupName
Name of this group.


members

private java.util.Vector<java.security.Principal> members
Members of this group.

Constructor Detail

JGroup

public JGroup(java.lang.String groupName)
Build a new group with the following name.

Parameters:
groupName - name of the group
Method Detail

equals

public boolean equals(java.lang.Object another)
Compares this principal to the specified object. Returns true if the object passed in matches the principal represented by the implementation of this interface.

Specified by:
equals in interface java.security.Principal
Overrides:
equals in class java.lang.Object
Parameters:
another - principal to compare with.
Returns:
true if the principal passed in is the same as that encapsulated by this principal, and false otherwise.

toString

public java.lang.String toString()
Returns a string representation of this principal.

Specified by:
toString in interface java.security.Principal
Overrides:
toString in class java.lang.Object
Returns:
a string representation of this principal.

hashCode

public int hashCode()
Returns a hashcode for this principal.

Specified by:
hashCode in interface java.security.Principal
Overrides:
hashCode in class java.lang.Object
Returns:
a hashcode for this principal.

getName

public java.lang.String getName()
Returns the name of this principal.

Specified by:
getName in interface java.security.Principal
Returns:
the name of this principal.

addMember

public boolean addMember(java.security.Principal user)
Adds the specified member to the group.

Specified by:
addMember in interface java.security.acl.Group
Parameters:
user - the principal to add to this group.
Returns:
true if the member was successfully added, false if the principal was already a member.

removeMember

public boolean removeMember(java.security.Principal user)
Removes the specified member from the group.

Specified by:
removeMember in interface java.security.acl.Group
Parameters:
user - the principal to remove from this group.
Returns:
true if the principal was removed, or false if the principal was not a member.

isMember

public boolean isMember(java.security.Principal member)
Returns true if the passed principal is a member of the group. This method does a recursive search, so if a principal belongs to a group which is a member of this group, true is returned.

Specified by:
isMember in interface java.security.acl.Group
Parameters:
member - the principal whose membership is to be checked.
Returns:
true if the principal is a member of this group, false otherwise.

members

public java.util.Enumeration<? extends java.security.Principal> members()
Returns an enumeration of the members in the group. The returned objects can be instances of either Principal or Group (which is a subclass of Principal).

Specified by:
members in interface java.security.acl.Group
Returns:
an enumeration of the group members.