org.objectweb.jonas.security.auth
Class JGroup

java.lang.Object
  extended by org.objectweb.jonas.security.auth.JGroup
All Implemented Interfaces:
java.io.Serializable, java.security.acl.Group, java.security.Principal
Direct Known Subclasses:
JSigned

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

Constructor Summary
JGroup(java.lang.String name)
          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 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
 

Constructor Detail

JGroup

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

Parameters:
name - 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 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.