edu.internet2.middleware.grouper.privs
Class GrouperAllAttrDefResolver

java.lang.Object
  extended by edu.internet2.middleware.grouper.privs.AttributeDefResolverDecorator
      extended by edu.internet2.middleware.grouper.privs.GrouperAllAttrDefResolver
All Implemented Interfaces:
AttributeDefResolver

public class GrouperAllAttrDefResolver
extends AttributeDefResolverDecorator

Decorator that provides GrouperAll privilege resolution for AttributeDefResolver.

Version:
$Id: GrouperAllAttrDefResolver.java,v 1.2 2009-09-28 05:06:46 mchyzer Exp $
Author:
mchyzer

Constructor Summary
GrouperAllAttrDefResolver(AttributeDefResolver resolver)
           
 
Method Summary
 void flushCache()
          flush cache if caching resolver
 Set<AttributeDef> getAttributeDefsWhereSubjectDoesntHavePrivilege(String stemId, Stem.Scope scope, edu.internet2.middleware.subject.Subject subject, Privilege privilege, boolean considerAllSubject, String sqlLikeString)
          find the attributeDefs which do not have a certain privilege
 Set<AttributeDef> getAttributeDefsWhereSubjectHasPrivilege(edu.internet2.middleware.subject.Subject subject, Privilege privilege)
          Get all attributedefs where subject has privilege.
 Set<AttributeDefPrivilege> getPrivileges(AttributeDef attributeDef, edu.internet2.middleware.subject.Subject subject)
          Get all privileges subject has on attributeDef.
 Set<edu.internet2.middleware.subject.Subject> getSubjectsWithPrivilege(AttributeDef attributeDef, Privilege privilege)
          Get all subjects with privilege on attributeDef.
 boolean hasPrivilege(AttributeDef attributeDef, edu.internet2.middleware.subject.Subject subject, Privilege privilege)
          Check whether subject has privilege on attributeDef.
 
Methods inherited from class edu.internet2.middleware.grouper.privs.AttributeDefResolverDecorator
getDecoratedResolver, getGrouperSession, grantPrivilege, hqlFilterAttrDefsWhereClause, hqlFilterAttributeDefsNotWithPrivWhereClause, postHqlFilterAttrDefs, postHqlFilterAttributeAssigns, postHqlFilterPermissions, postHqlFilterPITAttributeAssigns, privilegeCopy, privilegeCopy, retrievePrivileges, revokeAllPrivilegesForSubject, revokePrivilege, revokePrivilege, stop
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GrouperAllAttrDefResolver

public GrouperAllAttrDefResolver(AttributeDefResolver resolver)
Parameters:
resolver -
Since:
1.2.1
Method Detail

flushCache

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

Specified by:
flushCache in interface AttributeDefResolver
Overrides:
flushCache in class AttributeDefResolverDecorator
See Also:
AttributeDefResolver.flushCache()

getAttributeDefsWhereSubjectHasPrivilege

public Set<AttributeDef> getAttributeDefsWhereSubjectHasPrivilege(edu.internet2.middleware.subject.Subject subject,
                                                                  Privilege privilege)
                                                           throws IllegalArgumentException
Description copied from interface: AttributeDefResolver
Get all attributedefs where subject has privilege.

Specified by:
getAttributeDefsWhereSubjectHasPrivilege in interface AttributeDefResolver
Overrides:
getAttributeDefsWhereSubjectHasPrivilege in class AttributeDefResolverDecorator
Returns:
the set
Throws:
IllegalArgumentException - if any parameter is null.
See Also:
AttributeDefResolver.getAttributeDefsWhereSubjectHasPrivilege(edu.internet2.middleware.subject.Subject, edu.internet2.middleware.grouper.privs.Privilege)

getPrivileges

public Set<AttributeDefPrivilege> getPrivileges(AttributeDef attributeDef,
                                                edu.internet2.middleware.subject.Subject subject)
                                         throws IllegalArgumentException
Description copied from interface: AttributeDefResolver
Get all privileges subject has on attributeDef.

Specified by:
getPrivileges in interface AttributeDefResolver
Overrides:
getPrivileges in class AttributeDefResolverDecorator
Returns:
the set
Throws:
IllegalArgumentException - if any parameter is null.
See Also:
AttributeDefResolver.getPrivileges(edu.internet2.middleware.grouper.attr.AttributeDef, edu.internet2.middleware.subject.Subject)

getSubjectsWithPrivilege

public Set<edu.internet2.middleware.subject.Subject> getSubjectsWithPrivilege(AttributeDef attributeDef,
                                                                              Privilege privilege)
                                                                       throws IllegalArgumentException
Description copied from interface: AttributeDefResolver
Get all subjects with privilege on attributeDef.

Specified by:
getSubjectsWithPrivilege in interface AttributeDefResolver
Overrides:
getSubjectsWithPrivilege in class AttributeDefResolverDecorator
Returns:
the set
Throws:
IllegalArgumentException - if any parameter is null.
See Also:
AttributeDefResolver.getSubjectsWithPrivilege(edu.internet2.middleware.grouper.attr.AttributeDef, edu.internet2.middleware.grouper.privs.Privilege)

hasPrivilege

public boolean hasPrivilege(AttributeDef attributeDef,
                            edu.internet2.middleware.subject.Subject subject,
                            Privilege privilege)
                     throws IllegalArgumentException
Description copied from interface: AttributeDefResolver
Check whether subject has privilege on attributeDef.

Specified by:
hasPrivilege in interface AttributeDefResolver
Overrides:
hasPrivilege in class AttributeDefResolverDecorator
Returns:
boolean
Throws:
IllegalArgumentException - if any parameter is null.
See Also:
AttributeDefResolver.hasPrivilege(edu.internet2.middleware.grouper.attr.AttributeDef, edu.internet2.middleware.subject.Subject, edu.internet2.middleware.grouper.privs.Privilege)

getAttributeDefsWhereSubjectDoesntHavePrivilege

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

Specified by:
getAttributeDefsWhereSubjectDoesntHavePrivilege in interface AttributeDefResolver
Overrides:
getAttributeDefsWhereSubjectDoesntHavePrivilege in class AttributeDefResolverDecorator
Returns:
the attributeDefs
See Also:
AttributeDefResolver#getAttributeDefsWhereSubjectDoesntHavePrivilege(String, Scope, Subject, Privilege, boolean, String)