edu.internet2.middleware.grouper.privs
Class GrouperAllNamingResolver

java.lang.Object
  extended by edu.internet2.middleware.grouper.privs.NamingResolverDecorator
      extended by edu.internet2.middleware.grouper.privs.GrouperAllNamingResolver
All Implemented Interfaces:
NamingResolver

public class GrouperAllNamingResolver
extends NamingResolverDecorator

Decorator that provides GrouperAll privilege resolution for NamingResolver.

Since:
1.2.1
Version:
$Id: GrouperAllNamingResolver.java,v 1.12 2009-09-21 06:14:26 mchyzer Exp $
Author:
blair christensen.

Constructor Summary
GrouperAllNamingResolver(NamingResolver resolver)
           
 
Method Summary
 void flushCache()
          flush cache if caching resolver
 Set<Stem> getStemsWhereSubjectDoesntHavePrivilege(String stemId, Stem.Scope scope, edu.internet2.middleware.subject.Subject subject, Privilege privilege, boolean considerAllSubject, String sqlLikeString)
          find the stems which do not have a certain privilege
 Set<Stem> getStemsWhereSubjectHasPrivilege(edu.internet2.middleware.subject.Subject subject, Privilege privilege)
          Get all groups where subject has privilege.
 boolean hasPrivilege(Stem stem, edu.internet2.middleware.subject.Subject subject, Privilege privilege)
          Check whether subject has privilege on group.
 
Methods inherited from class edu.internet2.middleware.grouper.privs.NamingResolverDecorator
getDecoratedResolver, getGrouperSession, getPrivileges, getSubjectsWithPrivilege, grantPrivilege, hqlFilterStemsNotWithPrivWhereClause, hqlFilterStemsWhereClause, postHqlFilterStems, privilegeCopy, privilegeCopy, revokeAllPrivilegesForSubject, revokePrivilege, revokePrivilege, stop
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GrouperAllNamingResolver

public GrouperAllNamingResolver(NamingResolver resolver)
Parameters:
resolver -
Since:
1.2.1
Method Detail

getStemsWhereSubjectDoesntHavePrivilege

public Set<Stem> getStemsWhereSubjectDoesntHavePrivilege(String stemId,
                                                         Stem.Scope scope,
                                                         edu.internet2.middleware.subject.Subject subject,
                                                         Privilege privilege,
                                                         boolean considerAllSubject,
                                                         String sqlLikeString)
Description copied from interface: NamingResolver
find the stems which do not have a certain privilege

Specified by:
getStemsWhereSubjectDoesntHavePrivilege in interface NamingResolver
Overrides:
getStemsWhereSubjectDoesntHavePrivilege in class NamingResolverDecorator
Returns:
the stems
See Also:
NamingResolver#getStemsWhereSubjectDoesntHavePrivilege(String, Scope, Subject, Privilege, boolean, String)

flushCache

public void flushCache()
Description copied from interface: NamingResolver
flush cache if caching resolver

Specified by:
flushCache in interface NamingResolver
Overrides:
flushCache in class NamingResolverDecorator
See Also:
NamingResolver.flushCache()

getStemsWhereSubjectHasPrivilege

public Set<Stem> getStemsWhereSubjectHasPrivilege(edu.internet2.middleware.subject.Subject subject,
                                                  Privilege privilege)
                                           throws IllegalArgumentException
Description copied from interface: NamingResolver
Get all groups where subject has privilege.

Specified by:
getStemsWhereSubjectHasPrivilege in interface NamingResolver
Overrides:
getStemsWhereSubjectHasPrivilege in class NamingResolverDecorator
Returns:
set
Throws:
IllegalArgumentException - if any parameter is null.
Since:
1.2.1
See Also:
NamingResolver.getStemsWhereSubjectHasPrivilege(Subject, Privilege)

hasPrivilege

public boolean hasPrivilege(Stem stem,
                            edu.internet2.middleware.subject.Subject subject,
                            Privilege privilege)
                     throws IllegalArgumentException
Description copied from interface: NamingResolver
Check whether subject has privilege on group.

Specified by:
hasPrivilege in interface NamingResolver
Overrides:
hasPrivilege in class NamingResolverDecorator
Returns:
if has privilege
Throws:
IllegalArgumentException - if any parameter is null.
Since:
1.2.1
See Also:
NamingResolver.hasPrivilege(Stem, Subject, Privilege)