gov.nih.nci.cagrid.gridgrouper.client
Class GridGrouper

java.lang.Object
  extended by gov.nih.nci.cagrid.gridgrouper.client.GridGrouperObject
      extended by gov.nih.nci.cagrid.gridgrouper.client.GridGrouper
All Implemented Interfaces:
GrouperI

public class GridGrouper
extends GridGrouperObject
implements GrouperI

Version:
$Id: GridGrouperBaseTreeNode.java,v 1.1 2006/08/04 03:49:26 langella Exp $
Author:
Stephen Langella, Scott Oster, Shannon Hastings, David W. Ervin

Field Summary
static java.lang.String ROOT_STEM
           
 
Constructor Summary
GridGrouper(java.lang.String serviceURI)
          Used to Construct a Grid Grouper object corresponding to a Grid Grouper Service.
GridGrouper(java.lang.String serviceURI, boolean preferAnonymous)
           
GridGrouper(java.lang.String serviceURI, org.globus.gsi.GlobusCredential cred)
          Used to Construct a Grid Grouper object corresponding to a Grid Grouper Service.
 
Method Summary
 GroupI findGroup(java.lang.String name)
          Obtains the Group object for a specified Group.
 MemberI findMember(java.lang.String subject)
           
 MemberI findMember(edu.internet2.middleware.subject.Subject subject)
           
 StemI findStem(java.lang.String name)
          Obtains the Stem object for a specified Stem.
protected  java.util.Set getChildStems(java.lang.String stemName)
           
protected  GridGrouperClient getClient()
           
protected  GroupIdentifier getGroupIdentifier(java.lang.String groupName)
           
 java.util.Set getMembersEffectiveGroups(java.lang.String subject)
           
 java.util.Set getMembersGroups(java.lang.String subject)
           
 java.util.Set getMembersGroups(java.lang.String subject, MembershipType type)
           
 java.util.Set getMembersImmediateGroups(java.lang.String subject)
           
 java.lang.String getName()
          Obtains the name of the Grid Grouper, generally the Grid Grouper service URI.
protected  StemI getParentStem(java.lang.String childStemName)
           
 java.lang.String getProxyIdentity()
           
 StemI getRootStem()
          Returns a Stem object corresponding to the Grid Grouper root stem.
protected  StemIdentifier getStemIdentifier(java.lang.String stemName)
           
 boolean isMember(java.lang.String member, MembershipExpression exp)
           
 boolean isMemberOf(java.lang.String subjectId, java.lang.String groupName)
          Determines whether or not a subject is a member of a group.
 boolean isMemberOf(edu.internet2.middleware.subject.Subject subject, java.lang.String groupName)
          Determines whether or not a subject is a member of a group.
protected  void setClient(GridGrouperClient client)
           
 
Methods inherited from class gov.nih.nci.cagrid.gridgrouper.client.GridGrouperObject
getLog
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ROOT_STEM

public static final java.lang.String ROOT_STEM
See Also:
Constant Field Values
Constructor Detail

GridGrouper

public GridGrouper(java.lang.String serviceURI)
Used to Construct a Grid Grouper object corresponding to a Grid Grouper Service.

Parameters:
serviceURI - The service URI of the Grid Grouper service.

GridGrouper

public GridGrouper(java.lang.String serviceURI,
                   boolean preferAnonymous)

GridGrouper

public GridGrouper(java.lang.String serviceURI,
                   org.globus.gsi.GlobusCredential cred)
Used to Construct a Grid Grouper object corresponding to a Grid Grouper Service.

Parameters:
serviceURI - The service URI of the Grid Grouper service.
cred - The grid credential to use to authenticate to the Grid Grouper Service.
Method Detail

getRootStem

public StemI getRootStem()
                  throws edu.internet2.middleware.grouper.StemNotFoundException
Returns a Stem object corresponding to the Grid Grouper root stem.

Specified by:
getRootStem in interface GrouperI
Returns:
Stem object corresponding to the Grid Grouper root stem.
Throws:
edu.internet2.middleware.grouper.StemNotFoundException - Thrown if the root stem could not be found.

findStem

public StemI findStem(java.lang.String name)
               throws edu.internet2.middleware.grouper.StemNotFoundException
Obtains the Stem object for a specified Stem.

Specified by:
findStem in interface GrouperI
Parameters:
name - The name of the stem
Returns:
The Stem Object or the requested stem.
Throws:
edu.internet2.middleware.grouper.StemNotFoundException - Thrown if the request stem could not be found.

findGroup

public GroupI findGroup(java.lang.String name)
                 throws edu.internet2.middleware.grouper.GroupNotFoundException
Obtains the Group object for a specified Group.

Specified by:
findGroup in interface GrouperI
Parameters:
name - The name of the group.
Returns:
The Group Object or the requested stem.
Throws:
edu.internet2.middleware.grouper.GroupNotFoundException - Thrown if the request group could not be found.

getChildStems

protected java.util.Set getChildStems(java.lang.String stemName)

getParentStem

protected StemI getParentStem(java.lang.String childStemName)
                       throws edu.internet2.middleware.grouper.StemNotFoundException
Throws:
edu.internet2.middleware.grouper.StemNotFoundException

getClient

protected GridGrouperClient getClient()

setClient

protected void setClient(GridGrouperClient client)

getStemIdentifier

protected StemIdentifier getStemIdentifier(java.lang.String stemName)

getGroupIdentifier

protected GroupIdentifier getGroupIdentifier(java.lang.String groupName)

getName

public java.lang.String getName()
Obtains the name of the Grid Grouper, generally the Grid Grouper service URI.

Specified by:
getName in interface GrouperI
Returns:
The name of the Grid Grouper service.

getProxyIdentity

public java.lang.String getProxyIdentity()

isMemberOf

public boolean isMemberOf(java.lang.String subjectId,
                          java.lang.String groupName)
                   throws edu.internet2.middleware.grouper.GroupNotFoundException
Determines whether or not a subject is a member of a group.

Specified by:
isMemberOf in interface GrouperI
Parameters:
subjectId - The id of the subject.
groupName - The name of the group.
Returns:
True if member
Throws:
edu.internet2.middleware.grouper.GroupNotFoundException - Thrown if the request group could not be found.

isMemberOf

public boolean isMemberOf(edu.internet2.middleware.subject.Subject subject,
                          java.lang.String groupName)
                   throws edu.internet2.middleware.grouper.GroupNotFoundException
Determines whether or not a subject is a member of a group.

Specified by:
isMemberOf in interface GrouperI
Parameters:
subject - The subject.
groupName - The name of the group.
Returns:
Returns true if the subject is a member of the group, or false if the user is not a member of the group.
Throws:
edu.internet2.middleware.grouper.GroupNotFoundException - Thrown if the request group could not be found.

isMember

public boolean isMember(java.lang.String member,
                        MembershipExpression exp)

findMember

public MemberI findMember(edu.internet2.middleware.subject.Subject subject)
                   throws edu.internet2.middleware.grouper.GrouperRuntimeException,
                          edu.internet2.middleware.grouper.InsufficientPrivilegeException
Throws:
edu.internet2.middleware.grouper.GrouperRuntimeException
edu.internet2.middleware.grouper.InsufficientPrivilegeException

findMember

public MemberI findMember(java.lang.String subject)
                   throws edu.internet2.middleware.grouper.GrouperRuntimeException,
                          edu.internet2.middleware.grouper.InsufficientPrivilegeException
Throws:
edu.internet2.middleware.grouper.GrouperRuntimeException
edu.internet2.middleware.grouper.InsufficientPrivilegeException

getMembersGroups

public java.util.Set getMembersGroups(java.lang.String subject,
                                      MembershipType type)
                               throws edu.internet2.middleware.grouper.GrouperRuntimeException,
                                      edu.internet2.middleware.grouper.InsufficientPrivilegeException
Throws:
edu.internet2.middleware.grouper.GrouperRuntimeException
edu.internet2.middleware.grouper.InsufficientPrivilegeException

getMembersEffectiveGroups

public java.util.Set getMembersEffectiveGroups(java.lang.String subject)
                                        throws edu.internet2.middleware.grouper.GrouperRuntimeException,
                                               edu.internet2.middleware.grouper.InsufficientPrivilegeException
Throws:
edu.internet2.middleware.grouper.GrouperRuntimeException
edu.internet2.middleware.grouper.InsufficientPrivilegeException

getMembersGroups

public java.util.Set getMembersGroups(java.lang.String subject)
                               throws edu.internet2.middleware.grouper.GrouperRuntimeException,
                                      edu.internet2.middleware.grouper.InsufficientPrivilegeException
Throws:
edu.internet2.middleware.grouper.GrouperRuntimeException
edu.internet2.middleware.grouper.InsufficientPrivilegeException

getMembersImmediateGroups

public java.util.Set getMembersImmediateGroups(java.lang.String subject)
                                        throws edu.internet2.middleware.grouper.GrouperRuntimeException,
                                               edu.internet2.middleware.grouper.InsufficientPrivilegeException
Throws:
edu.internet2.middleware.grouper.GrouperRuntimeException
edu.internet2.middleware.grouper.InsufficientPrivilegeException