Class GrouperNonDbNamingAdapter
java.lang.Object
edu.internet2.middleware.grouper.privs.BaseNamingAdapter
edu.internet2.middleware.grouper.privs.GrouperNonDbNamingAdapter
- All Implemented Interfaces:
NamingAdapter
- Direct Known Subclasses:
GrouperNamingAdapter
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetPrivs(GrouperSession s, Stem ns, Subject subj) Get all privileges held by this subject on this stem.getStemsWhereSubjectDoesHavePrivilege(GrouperSession grouperSession, String stemId, Stem.Scope scope, Subject subject, Privilege privilege, boolean considerAllSubject, String sqlLikeString) Get all stems where this subject does have this privilege.getStemsWhereSubjectDoesntHavePrivilege(GrouperSession grouperSession, String stemId, Stem.Scope scope, Subject subject, Privilege privilege, boolean considerAllSubject, String sqlLikeString) Get all stems where this subject doesnt have this privilege.getStemsWhereSubjectHasPriv(GrouperSession s, Subject subj, Privilege priv) Get all stems where this subject has this privilege.getSubjectsWithPriv(GrouperSession s, Stem ns, Privilege priv) Get all subjects with this privilege on this stem.voidGrant the privilege to the subject on this stem.booleanhasPriv(GrouperSession s, Stem ns, Subject subj, Privilege priv) Check whether the subject has this privilege on this stem.voidprivilegeCopy(GrouperSession s, Stem stem1, Stem stem2, Privilege priv) Copies privileges for subjects that have the specified privilege on stem1 to stem2.voidprivilegeCopy(GrouperSession s, Subject subj1, Subject subj2, Privilege priv) Copies privileges of type priv on any subject for the given Subject subj1 to the given Subject subj2.voidrevokeAllPrivilegesForSubject(GrouperSession grouperSession, Subject subject) Revoke all naming privileges that this subject has.voidrevokePriv(GrouperSession s, Stem ns, Privilege priv) Revoke this privilege from everyone on this stem.voidrevokePriv(GrouperSession s, Stem ns, Subject subj, Privilege priv) Revoke the privilege from the subject on this stem.Methods inherited from class edu.internet2.middleware.grouper.privs.BaseNamingAdapter
hqlFilterStemsNotWithPrivWhereClause, hqlFilterStemsWhereClause, hqlFilterStemsWithPrivWhereClause, postHqlFilterStems
-
Field Details
-
priv2list
-
-
Constructor Details
-
GrouperNonDbNamingAdapter
public GrouperNonDbNamingAdapter()
-
-
Method Details
-
getStemsWhereSubjectDoesntHavePrivilege
public Set<Stem> getStemsWhereSubjectDoesntHavePrivilege(GrouperSession grouperSession, String stemId, Stem.Scope scope, Subject subject, Privilege privilege, boolean considerAllSubject, String sqlLikeString) Get all stems where this subject doesnt have this privilege.- Parameters:
grouperSession-stemId-scope-subject-privilege-considerAllSubject-sqlLikeString-- Returns:
- stems
-
getSubjectsWithPriv
Description copied from interface:NamingAdapterGet all subjects with this privilege on this stem.Set stemmers = np.getSubjectsWithPriv(s, ns, NamingPrivilege.STEM_ADMIN);
- Parameters:
s- Get privileges within this session context.ns- Get privileges on this stem.priv- Get this privilege.- Returns:
- Set of
Subjectobjects. - Throws:
SchemaException- See Also:
-
getStemsWhereSubjectHasPriv
public Set getStemsWhereSubjectHasPriv(GrouperSession s, Subject subj, Privilege priv) throws SchemaException Get all stems where this subject has this privilege.try { Set isStemAdmin = np.getStemsWhereSubjectHasPriv( s, subj, NamingPrivilege.STEM_ADMIN ); } catch (SchemaException e0) { // Invalid priv }- Parameters:
s- Get privileges within this session context.subj- Get privileges for this subject.priv- Get this privilege.- Returns:
- Set of
Stemobjects. - Throws:
SchemaException
-
getPrivs
Get all privileges held by this subject on this stem.Set privs = np.getPrivs(s, ns, subj);
- Parameters:
s- Get privileges within this session context.ns- Get privileges on this stem.subj- Get privileges for this subject.- Returns:
- Set of
NamingPrivilegeobjects.
-
grantPriv
public void grantPriv(GrouperSession s, Stem ns, Subject subj, Privilege priv, String uuid) throws GrantPrivilegeException, InsufficientPrivilegeException, SchemaException Description copied from interface:NamingAdapterGrant the privilege to the subject on this stem.try { np.grantPriv(s, ns, subj, NamingPrivilege.STEM_ADMIN); } catch (GrantPrivilegeException e0) { // Unable to grant the privilege } catch (InsufficientPrivilegeException e1) { // Not privileged to grant the privilege }- Parameters:
s- Grant privilege in this session context.ns- Grant privilege on this stem.subj- Grant privilege to this subject.priv- Grant this privilege.uuid- is uuid if known or null if assign one- Throws:
GrantPrivilegeExceptionInsufficientPrivilegeExceptionSchemaException- See Also:
-
hasPriv
public boolean hasPriv(GrouperSession s, Stem ns, Subject subj, Privilege priv) throws SchemaException Check whether the subject has this privilege on this stem.try { np.hasPriv(s, ns, subj, NamingPrivilege.STEM_ADMIN); } catch (SchemaException e) { // Invalid privilege }- Parameters:
s- Check privilege in this session context.ns- Check privilege on this stem.subj- Check privilege for this subject.priv- Check this privilege.- Returns:
- if has priv
- Throws:
SchemaException
-
privilegeCopy
public void privilegeCopy(GrouperSession s, Stem stem1, Stem stem2, Privilege priv) throws InsufficientPrivilegeException, GrantPrivilegeException, SchemaException Copies privileges for subjects that have the specified privilege on stem1 to stem2.- Parameters:
s-stem1-stem2-priv-- Throws:
InsufficientPrivilegeExceptionGrantPrivilegeExceptionSchemaException
-
privilegeCopy
public void privilegeCopy(GrouperSession s, Subject subj1, Subject subj2, Privilege priv) throws InsufficientPrivilegeException, GrantPrivilegeException, SchemaException Copies privileges of type priv on any subject for the given Subject subj1 to the given Subject subj2. For instance, if subj1 has STEM privilege to Stem x, this method will result with subj2 having STEM privilege to Stem x.- Parameters:
s-subj1-subj2-priv-- Throws:
InsufficientPrivilegeExceptionGrantPrivilegeExceptionSchemaException
-
revokePriv
public void revokePriv(GrouperSession s, Stem ns, Privilege priv) throws InsufficientPrivilegeException, RevokePrivilegeException, SchemaException Revoke this privilege from everyone on this stem.try { np.revokePriv(s, ns, NamingPrivilege.STEM_ADMIN); } catch (InsufficientPrivilegeException eIP) { // Not privileged to revoke the privilege } catch (RevokePrivilegeException eRP) { // Unable to revoke the privilege }- Parameters:
s- Revoke privilege in this session context.ns- Revoke privilege on this stem.priv- Revoke this privilege.- Throws:
InsufficientPrivilegeExceptionRevokePrivilegeExceptionSchemaException
-
revokePriv
public void revokePriv(GrouperSession s, Stem ns, Subject subj, Privilege priv) throws InsufficientPrivilegeException, RevokePrivilegeException, SchemaException Revoke the privilege from the subject on this stem.try { np.revokePriv(s, ns, subj, NamingPrivilege.STEM_ADMIN); } catch (InsufficientPrivilegeException e0) { // Not privileged to grant the privilege } catch (RevokePrivilegeException e2) { // Unable to revoke the privilege }- Parameters:
s- Revoke privilege in this session context.ns- Revoke privilege on this stem.subj- Revoke privilege from this subject.priv- Revoke this privilege.- Throws:
InsufficientPrivilegeExceptionRevokePrivilegeExceptionSchemaException
-
revokeAllPrivilegesForSubject
Description copied from interface:NamingAdapterRevoke all naming privileges that this subject has. -
getStemsWhereSubjectDoesHavePrivilege
public Set<Stem> getStemsWhereSubjectDoesHavePrivilege(GrouperSession grouperSession, String stemId, Stem.Scope scope, Subject subject, Privilege privilege, boolean considerAllSubject, String sqlLikeString) Get all stems where this subject does have this privilege.- Parameters:
grouperSession-stemId-scope-subject-privilege-considerAllSubject-sqlLikeString-- Returns:
- stems
-