edu.internet2.middleware.grouper.internal.dao
Interface StemDAO

All Superinterfaces:
GrouperDAO
All Known Implementing Classes:
Hib3StemDAO

public interface StemDAO
extends GrouperDAO

Basic Stem DAO interface.

Since:
1.2.0
Version:
$Id: StemDAO.java,v 1.24 2009-11-17 02:52:29 mchyzer Exp $
Author:
blair christensen.

Method Summary
 void createChildAttributeDef(Stem _parent, AttributeDef _child)
           
 void createChildAttributeDefName(Stem _parent, AttributeDefName _child)
           
 void createChildGroup(Stem _parent, Group _child, Member _m)
           
 void createChildStem(Stem _child)
           
 void createRootStem(Stem _root)
           
 void delete(Stem _ns)
           
 boolean exists(String uuid)
           
 Set<Stem> findAllByApproximateDisplayExtension(String val)
           
 Set<Stem> findAllByApproximateDisplayExtension(String val, String scope)
           
 Set<Stem> findAllByApproximateDisplayName(String val)
           
 Set<Stem> findAllByApproximateDisplayName(String val, String scope)
           
 Set<Stem> findAllByApproximateExtension(String val)
           
 Set<Stem> findAllByApproximateExtension(String val, String scope)
           
 Set<Stem> findAllByApproximateName(String val)
           
 Set<Stem> findAllByApproximateName(String val, String scope)
           
 Set<Stem> findAllByApproximateNameAny(String name)
           
 Set<Stem> findAllByApproximateNameAny(String name, String scope)
           
 Set<Stem> findAllByApproximateNameAny(String name, String scope, QueryOptions queryOptions)
           
 Set<Stem> findAllByCreatedAfter(Date d)
           
 Set<Stem> findAllByCreatedAfter(Date d, String scope)
           
 Set<Stem> findAllByCreatedBefore(Date d)
           
 Set<Stem> findAllByCreatedBefore(Date d, String scope)
           
 Set<Group> findAllChildGroups(Stem ns, Stem.Scope scope)
          Find all child groups within specified scope.
 Set<Group> findAllChildGroupsSecure(Stem ns, Stem.Scope scope, GrouperSession grouperSession, edu.internet2.middleware.subject.Subject subject, Set<Privilege> inPrivSet, QueryOptions queryOptions)
          Find all child groups within specified scope, and make sure the grouper session can see them
 Set<Group> findAllChildGroupsSecure(Stem ns, Stem.Scope scope, GrouperSession grouperSession, edu.internet2.middleware.subject.Subject subject, Set<Privilege> inPrivSet, QueryOptions queryOptions, Set<TypeOfGroup> typeOfGroups)
          Find all child groups within specified scope, and make sure the grouper session can see them
 Set<Group> findAllChildMembershipGroupsSecure(Stem ns, Stem.Scope scope, GrouperSession grouperSession, edu.internet2.middleware.subject.Subject subject, Set<Privilege> inPrivSet, QueryOptions queryOptions)
          Find all child groups within specified scope, and make sure the grouper session can see them
 Set<Stem> findAllChildStems(Stem ns, Stem.Scope scope)
          Find all child stems within specified scope.
 Set<Stem> findAllChildStems(Stem ns, Stem.Scope scope, boolean orderByName)
          Find all child stems within specified scope.
 Set<Stem> findAllChildStems(Stem ns, Stem.Scope scope, QueryOptions queryOptions)
          Find all child stems within specified scope.
 Set<Stem> findAllChildStems(Stem ns, Stem.Scope scope, QueryOptions queryOptions, boolean checkSecurity)
          Find all child stems within specified scope.
 Set<Stem> findAllChildStemsSecure(Stem ns, Stem.Scope scope, GrouperSession grouperSession, edu.internet2.middleware.subject.Subject subject, Set<Privilege> inPrivSet, QueryOptions queryOptions)
          Find all child stems within specified scope, and make sure the grouper session can see them
 Stem findByAlternateName(String name, boolean exceptionIfNotFound, QueryOptions queryOptions)
          Find a stem by its alternate name only.
 Set<Stem> findByCreatorOrModifier(Member member)
          find stems by creator or modifier
 Stem findByCurrentName(String name, boolean exceptionIfNotFound, QueryOptions queryOptions)
          Find a stem by its current name only.
 Stem findByIdIndex(Long idIndex, boolean exceptionIfNotFound, QueryOptions queryOptions)
          find by id index
 Stem findByName(String name)
          Deprecated.  
 Stem findByName(String name, boolean exceptionIfNull)
           
 Stem findByName(String name, boolean exceptionIfNull, QueryOptions queryOptions)
           
 Set<Stem> findByNames(Collection<String> names, boolean exceptionOnNotFound)
          find all stems by name
 Stem findByUuid(String uuid)
          Deprecated.  
 Stem findByUuid(String uuid, boolean exceptionIfNull)
           
 Stem findByUuid(String uuid, boolean exceptionIfNull, QueryOptions queryOptions)
           
 Stem findByUuidOrName(String uuid, String name, boolean exceptionIfNull)
           
 Stem findByUuidOrName(String uuid, String name, boolean exceptionIfNull, QueryOptions queryOptions)
           
 Set<Stem> findByUuids(Collection<String> uuids, QueryOptions queryOptions)
          note, dont pass more than 100 ids
 Set<Stem> findParentsByGroups(Collection<Group> groups)
          find all parent stems of groups (and grandparents, etc)
 Set<Stem> findStemsInStemWithoutPrivilege(GrouperSession grouperSession, String stemId, Stem.Scope scope, edu.internet2.middleware.subject.Subject subject, Privilege privilege, QueryOptions queryOptions, boolean considerAllSubject, String sqlLikeString)
          see which stems do not have this privilege
 Set<Stem> getAllStems()
           
 Set<Stem> getAllStemsSecure(GrouperSession grouperSession, edu.internet2.middleware.subject.Subject subject, Set<Privilege> inPrivSet, QueryOptions queryOptions)
           
 Set<Stem> getAllStemsSecure(String scope, GrouperSession grouperSession, edu.internet2.middleware.subject.Subject subject, Set<Privilege> inPrivSet, QueryOptions queryOptions)
           
 Set<Stem> getAllStemsSecure(String scope, GrouperSession grouperSession, edu.internet2.middleware.subject.Subject subject, Set<Privilege> inPrivSet, QueryOptions queryOptions, boolean splitScope, String parentStemId, Stem.Scope stemScope, boolean findByUuidOrName, Collection<Field> userHasInGroupFields, Collection<Field> userHasInAttributeFields, Collection<String> stemIds)
           
 Set<Stem> getAllStemsSecure(String scope, GrouperSession grouperSession, edu.internet2.middleware.subject.Subject subject, Set<Privilege> inPrivSet, QueryOptions queryOptions, boolean splitScope, String parentStemId, Stem.Scope stemScope, boolean findByUuidOrName, Collection<Field> userHasInGroupFields, Collection<Field> userHasInAttributeFields, Collection<String> stemIds, String idOfAttributeDefName, Object attributeValue, Boolean attributeCheckReadOnAttributeDef)
           
 Set<Stem> getAllStemsSplitScopeSecure(String scope, GrouperSession grouperSession, edu.internet2.middleware.subject.Subject subject, Set<Privilege> privileges, QueryOptions queryOptions)
          get all stems secure, split the scope by whitespace
 Set<Stem> getAllStemsWithGroupsSecure(GrouperSession grouperSession, edu.internet2.middleware.subject.Subject subject, Set<Privilege> inPrivSet, QueryOptions queryOptions)
          get stems with groups that have privileges
 Set<Stem> getImmediateChildrenSecure(GrouperSession grouperSession, Stem stem, edu.internet2.middleware.subject.Subject subject, Set<Privilege> inPrivSet, QueryOptions queryOptions)
          get immediate children (stems) secure
 void moveStemSets(List<StemSet> ifHasStemSetsOfParentStem, List<StemSet> oldStemSets, String currentStemId, int depthOfFirstParent)
           
 void renameStemAndChildren(Set<?> children)
           
 void saveUpdateProperties(Stem stem)
          save the udpate properties which are auto saved when business method is called
 void update(Stem _ns)
           
 void updateLastMembershipChange(String stemId)
           
 void updateLastMembershipChangeIncludeAncestorGroups(String groupId)
          This will update last_membership_change for stem owners where group member in groupSet is the given groupId.
 

Method Detail

findByNames

Set<Stem> findByNames(Collection<String> names,
                      boolean exceptionOnNotFound)
                      throws StemNotFoundException
find all stems by name

Parameters:
names -
exceptionOnNotFound -
Returns:
the stems
Throws:
StemNotFoundException

findParentsByGroups

Set<Stem> findParentsByGroups(Collection<Group> groups)
find all parent stems of groups (and grandparents, etc)

Parameters:
groups -
Returns:
the stems

createChildAttributeDef

void createChildAttributeDef(Stem _parent,
                             AttributeDef _child)
                             throws GrouperDAOException
Throws:
GrouperDAOException

createChildAttributeDefName

void createChildAttributeDefName(Stem _parent,
                                 AttributeDefName _child)
                                 throws GrouperDAOException
Throws:
GrouperDAOException

createChildGroup

void createChildGroup(Stem _parent,
                      Group _child,
                      Member _m)
                      throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.2.0

createChildStem

void createChildStem(Stem _child)
                     throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.2.0

createRootStem

void createRootStem(Stem _root)
                    throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.2.0

delete

void delete(Stem _ns)
            throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.2.0

exists

boolean exists(String uuid)
               throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.2.0

findAllByApproximateDisplayExtension

Set<Stem> findAllByApproximateDisplayExtension(String val)
                                               throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.2.0

findAllByApproximateDisplayExtension

Set<Stem> findAllByApproximateDisplayExtension(String val,
                                               String scope)
                                               throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.4.0

findAllByApproximateDisplayName

Set<Stem> findAllByApproximateDisplayName(String val)
                                          throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.2.0

findAllByApproximateDisplayName

Set<Stem> findAllByApproximateDisplayName(String val,
                                          String scope)
                                          throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.4.0

findAllByApproximateExtension

Set<Stem> findAllByApproximateExtension(String val)
                                        throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.2.0

findAllByApproximateExtension

Set<Stem> findAllByApproximateExtension(String val,
                                        String scope)
                                        throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.4.0

findAllByApproximateName

Set<Stem> findAllByApproximateName(String val)
                                   throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.2.0

findAllByApproximateName

Set<Stem> findAllByApproximateName(String val,
                                   String scope)
                                   throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.4.0

findAllByApproximateNameAny

Set<Stem> findAllByApproximateNameAny(String name)
                                      throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.2.0

findAllByApproximateNameAny

Set<Stem> findAllByApproximateNameAny(String name,
                                      String scope)
                                      throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.4.0

findAllByApproximateNameAny

Set<Stem> findAllByApproximateNameAny(String name,
                                      String scope,
                                      QueryOptions queryOptions)
Parameters:
name -
scope -
queryOptions -
Returns:
set stems
Throws:
GrouperDAOException
Since:
2.1.0

findAllByCreatedAfter

Set<Stem> findAllByCreatedAfter(Date d)
                                throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.2.0

findAllByCreatedAfter

Set<Stem> findAllByCreatedAfter(Date d,
                                String scope)
                                throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.4.0

findAllByCreatedBefore

Set<Stem> findAllByCreatedBefore(Date d)
                                 throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.2.0

findAllByCreatedBefore

Set<Stem> findAllByCreatedBefore(Date d,
                                 String scope)
                                 throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.4.0

findAllChildGroups

Set<Group> findAllChildGroups(Stem ns,
                              Stem.Scope scope)
                              throws GrouperDAOException
Find all child groups within specified scope.

Throws:
GrouperDAOException
Since:
1.2.1

findAllChildGroupsSecure

Set<Group> findAllChildGroupsSecure(Stem ns,
                                    Stem.Scope scope,
                                    GrouperSession grouperSession,
                                    edu.internet2.middleware.subject.Subject subject,
                                    Set<Privilege> inPrivSet,
                                    QueryOptions queryOptions)
                                    throws GrouperDAOException
Find all child groups within specified scope, and make sure the grouper session can see them

Parameters:
ns -
scope -
grouperSession -
subject -
queryOptions -
inPrivSet - is a set of privs that the subject must have one of to display a row. AccessPrivilege has some pre-baked set constants available
Returns:
the groups
Throws:
GrouperDAOException
Since:
1.2.1

findAllChildGroupsSecure

Set<Group> findAllChildGroupsSecure(Stem ns,
                                    Stem.Scope scope,
                                    GrouperSession grouperSession,
                                    edu.internet2.middleware.subject.Subject subject,
                                    Set<Privilege> inPrivSet,
                                    QueryOptions queryOptions,
                                    Set<TypeOfGroup> typeOfGroups)
                                    throws GrouperDAOException
Find all child groups within specified scope, and make sure the grouper session can see them

Parameters:
ns -
scope -
grouperSession -
subject -
queryOptions -
inPrivSet - is a set of privs that the subject must have one of to display a row. AccessPrivilege has some pre-baked set constants available
typeOfGroups - type of groups to return or null for all
Returns:
the groups
Throws:
GrouperDAOException
Since:
1.2.1

findAllChildMembershipGroupsSecure

Set<Group> findAllChildMembershipGroupsSecure(Stem ns,
                                              Stem.Scope scope,
                                              GrouperSession grouperSession,
                                              edu.internet2.middleware.subject.Subject subject,
                                              Set<Privilege> inPrivSet,
                                              QueryOptions queryOptions)
                                              throws GrouperDAOException
Find all child groups within specified scope, and make sure the grouper session can see them

Parameters:
ns -
scope -
grouperSession -
subject -
queryOptions -
inPrivSet - is a set of privs that the subject must have one of to display a row. AccessPrivilege has some pre-baked set constants available
Returns:
the groups
Throws:
GrouperDAOException
Since:
1.2.1

findAllChildStemsSecure

Set<Stem> findAllChildStemsSecure(Stem ns,
                                  Stem.Scope scope,
                                  GrouperSession grouperSession,
                                  edu.internet2.middleware.subject.Subject subject,
                                  Set<Privilege> inPrivSet,
                                  QueryOptions queryOptions)
                                  throws GrouperDAOException
Find all child stems within specified scope, and make sure the grouper session can see them

Parameters:
ns -
scope -
grouperSession -
subject -
queryOptions -
inPrivSet - is a set of privs that the subject must have one of to display a row. NamingPrivilege has some pre-baked set constants available
Returns:
the groups
Throws:
GrouperDAOException
Since:
1.2.1

findByIdIndex

Stem findByIdIndex(Long idIndex,
                   boolean exceptionIfNotFound,
                   QueryOptions queryOptions)
                   throws StemNotFoundException
find by id index

Parameters:
idIndex -
exceptionIfNotFound -
queryOptions -
Throws:
StemNotFoundException
Since:
2.2

findAllChildStems

Set<Stem> findAllChildStems(Stem ns,
                            Stem.Scope scope)
                            throws GrouperDAOException
Find all child stems within specified scope.

Throws:
GrouperDAOException
Since:
1.2.1

findAllChildStems

Set<Stem> findAllChildStems(Stem ns,
                            Stem.Scope scope,
                            QueryOptions queryOptions,
                            boolean checkSecurity)
                            throws GrouperDAOException
Find all child stems within specified scope.

Parameters:
ns -
scope -
queryOptions -
checkSecurity - if true, then possibly check security based on security.show.folders.where.user.can.see.subobjects and security.show.all.folders.if.in.group configuration
Returns:
stems
Throws:
GrouperDAOException
Since:
2.1

findAllChildStems

Set<Stem> findAllChildStems(Stem ns,
                            Stem.Scope scope,
                            QueryOptions queryOptions)
                            throws GrouperDAOException
Find all child stems within specified scope.

Throws:
GrouperDAOException
Since:
2.1

findAllChildStems

Set<Stem> findAllChildStems(Stem ns,
                            Stem.Scope scope,
                            boolean orderByName)
                            throws GrouperDAOException
Find all child stems within specified scope.

Parameters:
ns -
scope -
orderByName -
Returns:
set of stems
Throws:
GrouperDAOException

findByName

@Deprecated
Stem findByName(String name)
                throws GrouperDAOException,
                       StemNotFoundException
Deprecated. 

Throws:
GrouperDAOException
StemNotFoundException
Since:
1.2.0

findByUuid

@Deprecated
Stem findByUuid(String uuid)
                throws GrouperDAOException,
                       StemNotFoundException
Deprecated. 

Throws:
GrouperDAOException
StemNotFoundException
Since:
1.2.0

findByName

Stem findByName(String name,
                boolean exceptionIfNull,
                QueryOptions queryOptions)
                throws GrouperDAOException,
                       StemNotFoundException
Throws:
GrouperDAOException
StemNotFoundException
Since:
1.2.0

findByUuid

Stem findByUuid(String uuid,
                boolean exceptionIfNull,
                QueryOptions queryOptions)
                throws GrouperDAOException,
                       StemNotFoundException
Throws:
GrouperDAOException
StemNotFoundException
Since:
1.2.0

findByUuids

Set<Stem> findByUuids(Collection<String> uuids,
                      QueryOptions queryOptions)
note, dont pass more than 100 ids

Since:
2.1

findByName

Stem findByName(String name,
                boolean exceptionIfNull)
                throws GrouperDAOException,
                       StemNotFoundException
Throws:
GrouperDAOException
StemNotFoundException
Since:
1.2.0

findByAlternateName

Stem findByAlternateName(String name,
                         boolean exceptionIfNotFound,
                         QueryOptions queryOptions)
                         throws GrouperDAOException,
                                StemNotFoundException
Find a stem by its alternate name only.

Parameters:
name -
exceptionIfNotFound -
queryOptions -
Returns:
stem
Throws:
GrouperDAOException
StemNotFoundException

findByCurrentName

Stem findByCurrentName(String name,
                       boolean exceptionIfNotFound,
                       QueryOptions queryOptions)
                       throws GrouperDAOException,
                              StemNotFoundException
Find a stem by its current name only.

Parameters:
name -
exceptionIfNotFound -
queryOptions -
Returns:
stem
Throws:
GrouperDAOException
StemNotFoundException

findByUuidOrName

Stem findByUuidOrName(String uuid,
                      String name,
                      boolean exceptionIfNull)
                      throws GrouperDAOException,
                             StemNotFoundException
Parameters:
uuid -
name -
exceptionIfNull -
Returns:
the stem or null
Throws:
GrouperDAOException
StemNotFoundException
Since:
1.6.0

findByUuidOrName

Stem findByUuidOrName(String uuid,
                      String name,
                      boolean exceptionIfNull,
                      QueryOptions queryOptions)
                      throws GrouperDAOException,
                             StemNotFoundException
Parameters:
uuid -
name -
exceptionIfNull -
queryOptions -
Returns:
the stem or null
Throws:
GrouperDAOException
StemNotFoundException
Since:
1.6.0

findByUuid

Stem findByUuid(String uuid,
                boolean exceptionIfNull)
                throws GrouperDAOException,
                       StemNotFoundException
Throws:
GrouperDAOException
StemNotFoundException
Since:
1.2.0

getAllStems

Set<Stem> getAllStems()
                      throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.3.1

renameStemAndChildren

void renameStemAndChildren(Set<?> children)
                           throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.2.0

update

void update(Stem _ns)
            throws GrouperDAOException
Throws:
GrouperDAOException
Since:
1.2.0

findByCreatorOrModifier

Set<Stem> findByCreatorOrModifier(Member member)
find stems by creator or modifier

Parameters:
member -
Returns:
the groups

getImmediateChildrenSecure

Set<Stem> getImmediateChildrenSecure(GrouperSession grouperSession,
                                     Stem stem,
                                     edu.internet2.middleware.subject.Subject subject,
                                     Set<Privilege> inPrivSet,
                                     QueryOptions queryOptions)
                                     throws GrouperDAOException
get immediate children (stems) secure

Parameters:
grouperSession -
stem -
subject -
queryOptions -
inPrivSet - means that each row must have a matching priv in this set to user or GrouperAll. There are some constants in AccessPrivilege of pre-canned sets
Returns:
the set of groups
Throws:
GrouperDAOException

getAllStemsSecure

Set<Stem> getAllStemsSecure(GrouperSession grouperSession,
                            edu.internet2.middleware.subject.Subject subject,
                            Set<Privilege> inPrivSet,
                            QueryOptions queryOptions)
                            throws GrouperDAOException
Parameters:
grouperSession -
subject -
queryOptions -
inPrivSet - means that each row must have a matching priv in this set to user or GrouperAll. There are some constants in NamingPrivilege of pre-canned sets
Returns:
stems
Throws:
GrouperDAOException

getAllStemsSecure

Set<Stem> getAllStemsSecure(String scope,
                            GrouperSession grouperSession,
                            edu.internet2.middleware.subject.Subject subject,
                            Set<Privilege> inPrivSet,
                            QueryOptions queryOptions)
                            throws GrouperDAOException
Parameters:
scope - is blank for no scope
grouperSession -
subject -
queryOptions -
inPrivSet - means that each row must have a matching priv in this set to user or GrouperAll. There are some constants in NamingPrivilege of pre-canned sets
Returns:
the stems
Throws:
GrouperDAOException

getAllStemsSecure

Set<Stem> getAllStemsSecure(String scope,
                            GrouperSession grouperSession,
                            edu.internet2.middleware.subject.Subject subject,
                            Set<Privilege> inPrivSet,
                            QueryOptions queryOptions,
                            boolean splitScope,
                            String parentStemId,
                            Stem.Scope stemScope,
                            boolean findByUuidOrName,
                            Collection<Field> userHasInGroupFields,
                            Collection<Field> userHasInAttributeFields,
                            Collection<String> stemIds)
                            throws GrouperDAOException
Parameters:
scope - is blank for no scope
grouperSession -
subject -
queryOptions -
inPrivSet - means that each row must have a matching priv in this set to user or GrouperAll. There are some constants in NamingPrivilege of pre-canned sets
splitScope - true to split scopes by whitespace
parentStemId - true if filtering by parent of ancestor
stemScope - ONE or SUB
findByUuidOrName - if we are looking up a stem, only look by uuid or name
userHasInGroupFields - find stems where the user has these fields in a group
userHasInAttributeFields - find stems where the user has these fields in an attribute
stemIds -
Returns:
the stems
Throws:
GrouperDAOException
Since:
v2.2

getAllStemsSecure

Set<Stem> getAllStemsSecure(String scope,
                            GrouperSession grouperSession,
                            edu.internet2.middleware.subject.Subject subject,
                            Set<Privilege> inPrivSet,
                            QueryOptions queryOptions,
                            boolean splitScope,
                            String parentStemId,
                            Stem.Scope stemScope,
                            boolean findByUuidOrName,
                            Collection<Field> userHasInGroupFields,
                            Collection<Field> userHasInAttributeFields,
                            Collection<String> stemIds,
                            String idOfAttributeDefName,
                            Object attributeValue,
                            Boolean attributeCheckReadOnAttributeDef)
                            throws GrouperDAOException
Parameters:
scope - is blank for no scope
grouperSession -
subject -
queryOptions -
inPrivSet - means that each row must have a matching priv in this set to user or GrouperAll. There are some constants in NamingPrivilege of pre-canned sets
splitScope - true to split scopes by whitespace
parentStemId - true if filtering by parent of ancestor
stemScope - ONE or SUB
findByUuidOrName - if we are looking up a stem, only look by uuid or name
userHasInGroupFields - find stems where the user has these fields in a group
userHasInAttributeFields - find stems where the user has these fields in an attribute
stemIds -
idOfAttributeDefName - if looking for groups that have this attribute def name
attributeValue - if looking for groups that have this attribute value on the attribute def name
attributeCheckReadOnAttributeDef - if check read on attribute for attribute on stem
Returns:
the stems
Throws:
GrouperDAOException
Since:
v2.2.1

getAllStemsSplitScopeSecure

Set<Stem> getAllStemsSplitScopeSecure(String scope,
                                      GrouperSession grouperSession,
                                      edu.internet2.middleware.subject.Subject subject,
                                      Set<Privilege> privileges,
                                      QueryOptions queryOptions)
get all stems secure, split the scope by whitespace

Parameters:
scope -
grouperSession -
subject -
privileges -
queryOptions -
Returns:
set of attribute defs

updateLastMembershipChange

void updateLastMembershipChange(String stemId)
Parameters:
stemId -

updateLastMembershipChangeIncludeAncestorGroups

void updateLastMembershipChangeIncludeAncestorGroups(String groupId)
This will update last_membership_change for stem owners where group member in groupSet is the given groupId.

Parameters:
groupId -

saveUpdateProperties

void saveUpdateProperties(Stem stem)
save the udpate properties which are auto saved when business method is called

Parameters:
stem -

getAllStemsWithGroupsSecure

Set<Stem> getAllStemsWithGroupsSecure(GrouperSession grouperSession,
                                      edu.internet2.middleware.subject.Subject subject,
                                      Set<Privilege> inPrivSet,
                                      QueryOptions queryOptions)
                                      throws GrouperDAOException
get stems with groups that have privileges

Parameters:
grouperSession -
subject -
queryOptions -
inPrivSet - means that each row must have a matching priv in this set to user or GrouperAll. There are some constants in AccessPrivilege of pre-canned sets
Returns:
stems
Throws:
GrouperDAOException

findStemsInStemWithoutPrivilege

Set<Stem> findStemsInStemWithoutPrivilege(GrouperSession grouperSession,
                                          String stemId,
                                          Stem.Scope scope,
                                          edu.internet2.middleware.subject.Subject subject,
                                          Privilege privilege,
                                          QueryOptions queryOptions,
                                          boolean considerAllSubject,
                                          String sqlLikeString)
see which stems do not have this privilege

Parameters:
grouperSession -
stemId -
scope -
subject -
privilege -
queryOptions -
considerAllSubject -
sqlLikeString -
Returns:
the stems

moveStemSets

void moveStemSets(List<StemSet> ifHasStemSetsOfParentStem,
                  List<StemSet> oldStemSets,
                  String currentStemId,
                  int depthOfFirstParent)
Parameters:
ifHasStemSetsOfParentStem -
oldStemSets -
currentStemId -
depthOfFirstParent -