edu.internet2.middleware.grouper.internal.dao.hib3
Class Hib3PermissionEntryDAO

java.lang.Object
  extended by edu.internet2.middleware.grouper.internal.dao.hib3.Hib3DAO
      extended by edu.internet2.middleware.grouper.internal.dao.hib3.Hib3PermissionEntryDAO
All Implemented Interfaces:
GrouperDAO, PermissionEntryDAO

public class Hib3PermissionEntryDAO
extends Hib3DAO
implements PermissionEntryDAO

Basic Hibernate PermissionEntry DAO interface.

Version:
$Id: Hib3PermissionEntryDAO.java,v 1.4 2009-10-26 04:52:17 mchyzer Exp $
Author:
Chris Hyzer

Field Summary
 
Fields inherited from class edu.internet2.middleware.grouper.internal.dao.hib3.Hib3DAO
hibernateInitted
 
Constructor Summary
Hib3PermissionEntryDAO()
           
 
Method Summary
 Set<PermissionEntry> findAllPermissionsNotInGroupAndType(String attributeDefId, String groupId, boolean immediateRoleMembershipsOrRoleSubject, QueryOptions queryOptions, Boolean enabled, boolean hasNoEndDate)
          find subjects who are not in a group but who have permissions
 Set<PermissionEntry> findAllPermissionsNotInStem(String attributeDefId, Stem ownerNotInStem, Stem.Scope stemScope, boolean immediateRoleMembershipsOrRoleSubject, QueryOptions queryOptions, Boolean enabled, boolean hasNoEndDate)
          find subjects who are not in a group but who have permissions
 Set<PermissionEntry> findByMemberId(String memberId)
          find all permissions that a subject has
 Set<PermissionEntry> findByMemberIdAndAttributeDefNameId(String memberId, String attributeDefNameId)
          get attribute assigns by member and attribute def name id
 Set<PermissionEntry> findPermissions(Collection<String> attributeDefIds, Collection<String> attributeDefNameIds, Collection<String> roleIds, Collection<String> actions, Boolean enabled, Collection<String> memberIds)
          securely search for assignments.
 Set<PermissionEntry> findPermissions(Collection<String> attributeDefIds, Collection<String> attributeDefNameIds, Collection<String> roleIds, Collection<String> actions, Boolean enabled, Collection<String> memberIds, boolean noEndDate)
          securely search for assignments.
 Set<PermissionEntry> findPermissionsByAttributeDefDisabledRange(String attributeDefId, Timestamp disabledDateFrom, Timestamp disabledDateTo)
          Find all permissions based on attributeDefinition, and a range of disabled dates
 boolean hasPermissionBySubjectIdSourceIdActionAttributeDefName(String subjectId, String sourceId, String action, String attributeDefNameName)
          see if the permission exists and is enabled
 
Methods inherited from class edu.internet2.middleware.grouper.internal.dao.hib3.Hib3DAO
evict, evictEntity, evictQueries, getConfiguration, initHibernateIfNotInitted, resourceNameFromClassName, session
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Hib3PermissionEntryDAO

public Hib3PermissionEntryDAO()
Method Detail

findByMemberId

public Set<PermissionEntry> findByMemberId(String memberId)
Description copied from interface: PermissionEntryDAO
find all permissions that a subject has

Specified by:
findByMemberId in interface PermissionEntryDAO
Returns:
the permissions
See Also:
PermissionEntryDAO.findByMemberId(java.lang.String)

hasPermissionBySubjectIdSourceIdActionAttributeDefName

public boolean hasPermissionBySubjectIdSourceIdActionAttributeDefName(String subjectId,
                                                                      String sourceId,
                                                                      String action,
                                                                      String attributeDefNameName)
Description copied from interface: PermissionEntryDAO
see if the permission exists and is enabled

Specified by:
hasPermissionBySubjectIdSourceIdActionAttributeDefName in interface PermissionEntryDAO
Returns:
true if has permissions and is enabled
See Also:
PermissionEntryDAO.hasPermissionBySubjectIdSourceIdActionAttributeDefName(java.lang.String, java.lang.String, java.lang.String, java.lang.String)

findByMemberIdAndAttributeDefNameId

public Set<PermissionEntry> findByMemberIdAndAttributeDefNameId(String memberId,
                                                                String attributeDefNameId)
Description copied from interface: PermissionEntryDAO
get attribute assigns by member and attribute def name id

Specified by:
findByMemberIdAndAttributeDefNameId in interface PermissionEntryDAO
Returns:
set of assigns or empty if none there
See Also:
PermissionEntryDAO.findByMemberIdAndAttributeDefNameId(java.lang.String, java.lang.String)

findPermissions

public Set<PermissionEntry> findPermissions(Collection<String> attributeDefIds,
                                            Collection<String> attributeDefNameIds,
                                            Collection<String> roleIds,
                                            Collection<String> actions,
                                            Boolean enabled,
                                            Collection<String> memberIds)
Description copied from interface: PermissionEntryDAO
securely search for assignments. need to pass in either the assign ids, def ids, def name ids, or group ids cannot have more than 100 bind variables

Specified by:
findPermissions in interface PermissionEntryDAO
Parameters:
attributeDefIds - optional
attributeDefNameIds - mutually exclusive with attributeDefIds
roleIds - optional
actions - (null means all actions)
enabled - (null means all, true means enabled, false means disabled)
Returns:
the permissions
See Also:
PermissionEntryDAO.findPermissions(java.util.Collection, java.util.Collection, java.util.Collection, java.util.Collection, java.lang.Boolean, java.util.Collection)

findPermissions

public Set<PermissionEntry> findPermissions(Collection<String> attributeDefIds,
                                            Collection<String> attributeDefNameIds,
                                            Collection<String> roleIds,
                                            Collection<String> actions,
                                            Boolean enabled,
                                            Collection<String> memberIds,
                                            boolean noEndDate)
Description copied from interface: PermissionEntryDAO
securely search for assignments. need to pass in either the assign ids, def ids, def name ids, or group ids cannot have more than 100 bind variables

Specified by:
findPermissions in interface PermissionEntryDAO
Parameters:
attributeDefIds - optional
attributeDefNameIds - mutually exclusive with attributeDefIds
roleIds - optional
actions - (null means all actions)
enabled - (null means all, true means enabled, false means disabled)
noEndDate - true if no end date on memberships
Returns:
the permissions
See Also:
PermissionEntryDAO.findPermissions(java.util.Collection, java.util.Collection, java.util.Collection, java.util.Collection, java.lang.Boolean, java.util.Collection, boolean)

findPermissionsByAttributeDefDisabledRange

public Set<PermissionEntry> findPermissionsByAttributeDefDisabledRange(String attributeDefId,
                                                                       Timestamp disabledDateFrom,
                                                                       Timestamp disabledDateTo)
Description copied from interface: PermissionEntryDAO
Find all permissions based on attributeDefinition, and a range of disabled dates

Specified by:
findPermissionsByAttributeDefDisabledRange in interface PermissionEntryDAO
disabledDateFrom - null if dont consider
disabledDateTo - null if dont consider
Returns:
the permission records
See Also:
find permissions by attribute definition which are about to expire

findAllPermissionsNotInGroupAndType

public Set<PermissionEntry> findAllPermissionsNotInGroupAndType(String attributeDefId,
                                                                String groupId,
                                                                boolean immediateRoleMembershipsOrRoleSubject,
                                                                QueryOptions queryOptions,
                                                                Boolean enabled,
                                                                boolean hasNoEndDate)
Description copied from interface: PermissionEntryDAO
find subjects who are not in a group but who have permissions

Specified by:
findAllPermissionsNotInGroupAndType in interface PermissionEntryDAO
Returns:
the set of members
See Also:
PermissionEntryDAO.findAllPermissionsNotInGroupAndType(String, String, boolean, QueryOptions, Boolean, boolean)

findAllPermissionsNotInStem

public Set<PermissionEntry> findAllPermissionsNotInStem(String attributeDefId,
                                                        Stem ownerNotInStem,
                                                        Stem.Scope stemScope,
                                                        boolean immediateRoleMembershipsOrRoleSubject,
                                                        QueryOptions queryOptions,
                                                        Boolean enabled,
                                                        boolean hasNoEndDate)
Description copied from interface: PermissionEntryDAO
find subjects who are not in a group but who have permissions

Specified by:
findAllPermissionsNotInStem in interface PermissionEntryDAO
Returns:
the set of members
See Also:
PermissionEntryDAO.findAllPermissionsNotInStem(String, Stem, Stem.Scope, boolean, QueryOptions, Boolean, boolean)