|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectedu.internet2.middleware.grouper.privs.AccessResolverDecorator
edu.internet2.middleware.grouper.privs.WheelAccessResolver
public class WheelAccessResolver
Decorator that provides Wheel privilege resolution for AccessResolver
.
Constructor Summary | |
---|---|
WheelAccessResolver(AccessResolver resolver)
|
Method Summary | |
---|---|
void |
flushCache()
flush cache if caching resolver |
java.util.Set<AccessPrivilege> |
getPrivileges(Group group,
edu.internet2.middleware.subject.Subject subject)
Get all privileges subject has on group. |
boolean |
hasPrivilege(Group group,
edu.internet2.middleware.subject.Subject subject,
Privilege privilege)
Check whether subject has privilege on group. |
boolean |
hqlFilterGroupsNotWithPrivWhereClause(edu.internet2.middleware.subject.Subject subject,
HqlQuery hqlQuery,
java.lang.StringBuilder hql,
java.lang.String groupColumn,
Privilege privilege,
boolean considerAllSubject)
for a group query, check to make sure the subject cant see the records |
boolean |
hqlFilterGroupsWhereClause(edu.internet2.middleware.subject.Subject subject,
HqlQuery hqlQuery,
java.lang.StringBuilder hql,
java.lang.String groupColumn,
java.util.Set<Privilege> privInSet)
for a group query, check to make sure the subject can see the records (if filtering HQL, you can do the postHqlFilterGroups instead if you like) |
java.util.Set<Group> |
postHqlFilterGroups(java.util.Set<Group> groups,
edu.internet2.middleware.subject.Subject subject,
java.util.Set<Privilege> privInSet)
after HQL is run, filter groups. |
java.util.Set<Membership> |
postHqlFilterMemberships(edu.internet2.middleware.subject.Subject subject,
java.util.Set<Membership> memberships)
filter memberships for things the subject can see |
java.util.Set<Stem> |
postHqlFilterStemsWithGroups(java.util.Set<Stem> stems,
edu.internet2.middleware.subject.Subject subject,
java.util.Set<Privilege> inPrivSet)
after HQL is run, filter stems that have groups with privs. |
void |
stop()
clean up resources, session is stopped |
Methods inherited from class edu.internet2.middleware.grouper.privs.AccessResolverDecorator |
---|
getDecoratedResolver, getGrouperSession, getGroupsWhereSubjectDoesntHavePrivilege, getGroupsWhereSubjectHasPrivilege, getStemsWhereGroupThatSubjectHasPrivilege, getSubjectsWithPrivilege, grantPrivilege, privilegeCopy, privilegeCopy, retrievePrivileges, revokeAllPrivilegesForSubject, revokePrivilege, revokePrivilege |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public WheelAccessResolver(AccessResolver resolver)
resolver
- resolverMethod Detail |
---|
public void stop()
AccessResolver
stop
in interface AccessResolver
stop
in class AccessResolverDecorator
AccessResolver.stop()
public java.util.Set<AccessPrivilege> getPrivileges(Group group, edu.internet2.middleware.subject.Subject subject) throws java.lang.IllegalArgumentException
AccessResolver
getPrivileges
in interface AccessResolver
getPrivileges
in class AccessResolverDecorator
java.lang.IllegalArgumentException
- if any parameter is null.AccessResolver.getPrivileges(Group, Subject)
public boolean hasPrivilege(Group group, edu.internet2.middleware.subject.Subject subject, Privilege privilege) throws java.lang.IllegalArgumentException
AccessResolver
hasPrivilege
in interface AccessResolver
hasPrivilege
in class AccessResolverDecorator
java.lang.IllegalArgumentException
- if any parameter is null.AccessResolver.hasPrivilege(Group, Subject, Privilege)
public void flushCache()
AccessResolver
flushCache
in interface AccessResolver
flushCache
in class AccessResolverDecorator
AccessResolver.flushCache()
public java.util.Set<Group> postHqlFilterGroups(java.util.Set<Group> groups, edu.internet2.middleware.subject.Subject subject, java.util.Set<Privilege> privInSet)
AccessResolver
postHqlFilterGroups
in interface AccessResolver
postHqlFilterGroups
in class AccessResolverDecorator
subject
- which needs view access to the groupsprivInSet
- find a privilege which is in this set
(e.g. for view, send all access privs). There are pre-canned sets in AccessAdapter
AccessResolver.postHqlFilterGroups(java.util.Set, edu.internet2.middleware.subject.Subject, java.util.Set)
public java.util.Set<Stem> postHqlFilterStemsWithGroups(java.util.Set<Stem> stems, edu.internet2.middleware.subject.Subject subject, java.util.Set<Privilege> inPrivSet)
AccessResolver
postHqlFilterStemsWithGroups
in interface AccessResolver
postHqlFilterStemsWithGroups
in class AccessResolverDecorator
AccessResolver.postHqlFilterStemsWithGroups(java.util.Set, edu.internet2.middleware.subject.Subject, java.util.Set)
public boolean hqlFilterGroupsWhereClause(edu.internet2.middleware.subject.Subject subject, HqlQuery hqlQuery, java.lang.StringBuilder hql, java.lang.String groupColumn, java.util.Set<Privilege> privInSet)
AccessResolver
hqlFilterGroupsWhereClause
in interface AccessResolver
hqlFilterGroupsWhereClause
in class AccessResolverDecorator
subject
- which needs view access to the groupshql
- the select and current from partgroupColumn
- is the name of the group column to join toprivInSet
- find a privilege which is in this set (e.g. for view, send all access privs)
AccessResolver.hqlFilterGroupsWhereClause(edu.internet2.middleware.subject.Subject, edu.internet2.middleware.grouper.hibernate.HqlQuery, java.lang.StringBuilder, java.lang.String, java.util.Set)
public boolean hqlFilterGroupsNotWithPrivWhereClause(edu.internet2.middleware.subject.Subject subject, HqlQuery hqlQuery, java.lang.StringBuilder hql, java.lang.String groupColumn, Privilege privilege, boolean considerAllSubject)
AccessResolver
hqlFilterGroupsNotWithPrivWhereClause
in interface AccessResolver
hqlFilterGroupsNotWithPrivWhereClause
in class AccessResolverDecorator
subject
- which needs view access to the groupshql
- the select and current from partgroupColumn
- is the name of the group column to join toprivilege
- find a privilege which is in this set (e.g. for view, send all access privs)considerAllSubject
- if true, then consider GrouperAll when seeign if subject has priv, else do not
AccessResolver.hqlFilterGroupsNotWithPrivWhereClause(edu.internet2.middleware.subject.Subject, edu.internet2.middleware.grouper.hibernate.HqlQuery, java.lang.StringBuilder, java.lang.String, Privilege, boolean)
public java.util.Set<Membership> postHqlFilterMemberships(edu.internet2.middleware.subject.Subject subject, java.util.Set<Membership> memberships)
AccessResolver
postHqlFilterMemberships
in interface AccessResolver
postHqlFilterMemberships
in class AccessResolverDecorator
AccessResolver.postHqlFilterMemberships(edu.internet2.middleware.subject.Subject, java.util.Set)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |