|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectedu.internet2.middleware.grouper.privs.NamingResolverDecorator
public abstract class NamingResolverDecorator
Decorator for NamingResolver.
| Constructor Summary | |
|---|---|
NamingResolverDecorator(NamingResolver resolver)
|
|
| Method Summary | |
|---|---|
void |
flushCache()
flush cache if caching resolver |
NamingResolver |
getDecoratedResolver()
|
GrouperSession |
getGrouperSession()
get a reference to the session |
java.util.Set<NamingPrivilege> |
getPrivileges(Stem stem,
edu.internet2.middleware.subject.Subject subject)
Get all privileges subject has on group. |
java.util.Set<Stem> |
getStemsWhereSubjectDoesntHavePrivilege(java.lang.String stemId,
Stem.Scope scope,
edu.internet2.middleware.subject.Subject subject,
Privilege privilege,
boolean considerAllSubject,
java.lang.String sqlLikeString)
find the stems which do not have a certain privilege |
java.util.Set<Stem> |
getStemsWhereSubjectHasPrivilege(edu.internet2.middleware.subject.Subject subject,
Privilege privilege)
Get all groups where subject has privilege. |
java.util.Set<edu.internet2.middleware.subject.Subject> |
getSubjectsWithPrivilege(Stem stem,
Privilege privilege)
Get all subjects with privilege on group. |
void |
grantPrivilege(Stem stem,
edu.internet2.middleware.subject.Subject subject,
Privilege privilege,
java.lang.String uuid)
Grant privilege to subject on group. |
boolean |
hasPrivilege(Stem stem,
edu.internet2.middleware.subject.Subject subject,
Privilege privilege)
Check whether subject has privilege on group. |
boolean |
hqlFilterStemsNotWithPrivWhereClause(edu.internet2.middleware.subject.Subject subject,
HqlQuery hqlQuery,
java.lang.StringBuilder hql,
java.lang.String stemColumn,
Privilege privilege,
boolean considerAllSubject)
for a stem query, check to make sure the subject cant see the records |
boolean |
hqlFilterStemsWhereClause(edu.internet2.middleware.subject.Subject subject,
HqlQuery hqlQuery,
java.lang.StringBuilder hql,
java.lang.String stemColumn,
java.util.Set<Privilege> privInSet)
for a stem 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<Stem> |
postHqlFilterStems(java.util.Set<Stem> stems,
edu.internet2.middleware.subject.Subject subject,
java.util.Set<Privilege> privInSet)
after HQL is run, filter stems. |
void |
privilegeCopy(Stem stem1,
Stem stem2,
Privilege priv)
Copies privileges for subjects that have the specified privilege on stem1 to stem2. |
void |
privilegeCopy(edu.internet2.middleware.subject.Subject subj1,
edu.internet2.middleware.subject.Subject subj2,
Privilege priv)
Copies privileges of type priv on any subject for the given Subject subj1 to the given Subject subj2. |
void |
revokeAllPrivilegesForSubject(edu.internet2.middleware.subject.Subject subject)
Revoke all naming privileges that this subject has. |
void |
revokePrivilege(Stem stem,
Privilege privilege)
Revoke privilege from all subjects on group. |
void |
revokePrivilege(Stem stem,
edu.internet2.middleware.subject.Subject subject,
Privilege privilege)
Revoke privilege from subject on group. |
void |
stop()
clean up resources, session is stopped |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public NamingResolverDecorator(NamingResolver resolver)
throws java.lang.IllegalArgumentException
resolver - NamingResolver to decorate.
java.lang.IllegalArgumentException - if resolver is null.| Method Detail |
|---|
public void flushCache()
NamingResolver
flushCache in interface NamingResolverNamingResolver.flushCache()
public NamingResolver getDecoratedResolver()
throws java.lang.IllegalStateException
java.lang.IllegalStateException - if no decorated NamingResolver.public GrouperSession getGrouperSession()
NamingResolver
getGrouperSession in interface NamingResolverNamingResolver.getGrouperSession()
public java.util.Set<NamingPrivilege> getPrivileges(Stem stem,
edu.internet2.middleware.subject.Subject subject)
throws java.lang.IllegalArgumentException
NamingResolver
getPrivileges in interface NamingResolverjava.lang.IllegalArgumentException - if any parameter is null.NamingResolver.getPrivileges(edu.internet2.middleware.grouper.Stem, edu.internet2.middleware.subject.Subject)
public java.util.Set<Stem> getStemsWhereSubjectHasPrivilege(edu.internet2.middleware.subject.Subject subject,
Privilege privilege)
throws java.lang.IllegalArgumentException
NamingResolver
getStemsWhereSubjectHasPrivilege in interface NamingResolverjava.lang.IllegalArgumentException - if any parameter is null.NamingResolver.getStemsWhereSubjectHasPrivilege(edu.internet2.middleware.subject.Subject, edu.internet2.middleware.grouper.privs.Privilege)
public java.util.Set<edu.internet2.middleware.subject.Subject> getSubjectsWithPrivilege(Stem stem,
Privilege privilege)
throws java.lang.IllegalArgumentException
NamingResolver
getSubjectsWithPrivilege in interface NamingResolverjava.lang.IllegalArgumentException - if any parameter is null.NamingResolver.getSubjectsWithPrivilege(edu.internet2.middleware.grouper.Stem, edu.internet2.middleware.grouper.privs.Privilege)
public void grantPrivilege(Stem stem,
edu.internet2.middleware.subject.Subject subject,
Privilege privilege,
java.lang.String uuid)
throws java.lang.IllegalArgumentException,
UnableToPerformException
NamingResolver
grantPrivilege in interface NamingResolveruuid - if known or null
java.lang.IllegalArgumentException - if any parameter is null.
UnableToPerformException - if the privilege could not be granted.NamingResolver.grantPrivilege(edu.internet2.middleware.grouper.Stem, edu.internet2.middleware.subject.Subject, edu.internet2.middleware.grouper.privs.Privilege, String)
public boolean hasPrivilege(Stem stem,
edu.internet2.middleware.subject.Subject subject,
Privilege privilege)
throws java.lang.IllegalArgumentException
NamingResolver
hasPrivilege in interface NamingResolverjava.lang.IllegalArgumentException - if any parameter is null.NamingResolver.hasPrivilege(edu.internet2.middleware.grouper.Stem, edu.internet2.middleware.subject.Subject, edu.internet2.middleware.grouper.privs.Privilege)
public boolean hqlFilterStemsWhereClause(edu.internet2.middleware.subject.Subject subject,
HqlQuery hqlQuery,
java.lang.StringBuilder hql,
java.lang.String stemColumn,
java.util.Set<Privilege> privInSet)
NamingResolver
hqlFilterStemsWhereClause in interface NamingResolversubject - which needs view access to the groupshql - is the select and part part (hql prefix)stemColumn - is the name of the stem column to join toprivInSet - find a privilege which is in this set
(e.g. for view, send all access privs). There are pre-canned sets in AccessAdapter
NamingResolver.hqlFilterStemsWhereClause(edu.internet2.middleware.subject.Subject, edu.internet2.middleware.grouper.hibernate.HqlQuery, java.lang.StringBuilder, java.lang.String, java.util.Set)
public java.util.Set<Stem> postHqlFilterStems(java.util.Set<Stem> stems,
edu.internet2.middleware.subject.Subject subject,
java.util.Set<Privilege> privInSet)
NamingResolver
postHqlFilterStems in interface NamingResolversubject - 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 NamingPrivilege
NamingResolver.postHqlFilterStems(java.util.Set, edu.internet2.middleware.subject.Subject, java.util.Set)
public void privilegeCopy(Stem stem1,
Stem stem2,
Privilege priv)
throws java.lang.IllegalArgumentException,
UnableToPerformException
NamingResolver
privilegeCopy in interface NamingResolverjava.lang.IllegalArgumentException
UnableToPerformExceptionNamingResolver.privilegeCopy(edu.internet2.middleware.grouper.Stem, edu.internet2.middleware.grouper.Stem, edu.internet2.middleware.grouper.privs.Privilege)
public void privilegeCopy(edu.internet2.middleware.subject.Subject subj1,
edu.internet2.middleware.subject.Subject subj2,
Privilege priv)
throws java.lang.IllegalArgumentException,
UnableToPerformException
NamingResolver
privilegeCopy in interface NamingResolverjava.lang.IllegalArgumentException
UnableToPerformExceptionNamingResolver.privilegeCopy(edu.internet2.middleware.subject.Subject, edu.internet2.middleware.subject.Subject, edu.internet2.middleware.grouper.privs.Privilege)public void revokeAllPrivilegesForSubject(edu.internet2.middleware.subject.Subject subject)
NamingResolver
revokeAllPrivilegesForSubject in interface NamingResolverNamingResolver.revokeAllPrivilegesForSubject(edu.internet2.middleware.subject.Subject)
public void revokePrivilege(Stem stem,
Privilege privilege)
throws java.lang.IllegalArgumentException,
UnableToPerformException
NamingResolver
revokePrivilege in interface NamingResolverjava.lang.IllegalArgumentException - if any parameter is null.
UnableToPerformException - if the privilege could not be revoked.NamingResolver.revokePrivilege(edu.internet2.middleware.grouper.Stem, edu.internet2.middleware.grouper.privs.Privilege)
public void revokePrivilege(Stem stem,
edu.internet2.middleware.subject.Subject subject,
Privilege privilege)
throws java.lang.IllegalArgumentException,
UnableToPerformException
NamingResolver
revokePrivilege in interface NamingResolverjava.lang.IllegalArgumentException - if any parameter is null.
UnableToPerformException - if the privilege could not be revoked.NamingResolver.revokePrivilege(edu.internet2.middleware.grouper.Stem, edu.internet2.middleware.subject.Subject, edu.internet2.middleware.grouper.privs.Privilege)public void stop()
NamingResolver
stop in interface NamingResolverNamingResolver.stop()
public java.util.Set<Stem> getStemsWhereSubjectDoesntHavePrivilege(java.lang.String stemId,
Stem.Scope scope,
edu.internet2.middleware.subject.Subject subject,
Privilege privilege,
boolean considerAllSubject,
java.lang.String sqlLikeString)
NamingResolver
getStemsWhereSubjectDoesntHavePrivilege in interface NamingResolverNamingResolver#getStemsWhereSubjectDoesntHavePrivilege(String, Scope, Subject, Privilege, boolean, String)
public boolean hqlFilterStemsNotWithPrivWhereClause(edu.internet2.middleware.subject.Subject subject,
HqlQuery hqlQuery,
java.lang.StringBuilder hql,
java.lang.String stemColumn,
Privilege privilege,
boolean considerAllSubject)
NamingResolver
hqlFilterStemsNotWithPrivWhereClause in interface NamingResolversubject - which needs view access to the groupshql - the select and current from partstemColumn - is the name of the group column to join toprivilege - find a privilege which is in this set (e.g. stem or create)considerAllSubject - if true, then consider GrouperAll when seeign if subject has priv, else do not
edu.internet2.middleware.grouper.privs.NamingResolver#hqlFilterStemsWhereClause(edu.internet2.middleware.subject.Subject, edu.internet2.middleware.grouper.hibernate.HqlQuery, java.lang.StringBuilder, java.lang.String, Privilege)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||