Interface ResourcePolicyDAO

  • All Superinterfaces:
    GenericDAO<ResourcePolicy>
    All Known Implementing Classes:
    ResourcePolicyDAOImpl

    public interface ResourcePolicyDAO
    extends GenericDAO<ResourcePolicy>
    Database Access Object interface class for the ResourcePolicy object. The implementation of this class is responsible for all database calls for the ResourcePolicy object and is autowired by spring This class should only be accessed from a single service and should never be exposed outside of the API
    Author:
    kevinvandevelde at atmire.com
    • Method Detail

      • findByTypeGroupActionExceptId

        List<ResourcePolicy> findByTypeGroupActionExceptId​(Context context,
                                                           DSpaceObject dso,
                                                           Group group,
                                                           int action,
                                                           int notPolicyID)
                                                    throws SQLException
        Look for ResourcePolicies by DSpaceObject, Group, and action, ignoring IDs with a specific PolicyID. This method can be used to detect duplicate ResourcePolicies.
        Parameters:
        notPolicyID - ResourcePolicies with this ID will be ignored while looking out for equal ResourcePolicies.
        Returns:
        List of resource policies for the same DSpaceObject, group and action but other policyID.
        Throws:
        SQLException
      • deleteByEPerson

        void deleteByEPerson​(Context context,
                             EPerson ePerson)
                      throws SQLException
        Deletes all policies that belong to an EPerson
        Parameters:
        context - DSpace context object
        ePerson - ePerson whose policies to delete
        Throws:
        SQLException - if database error
      • findByDSoAndActionExceptRpType

        List<ResourcePolicy> findByDSoAndActionExceptRpType​(Context c,
                                                            DSpaceObject o,
                                                            int actionID,
                                                            String rpType)
                                                     throws SQLException
        Return a list of policies for an object that match the action except the record labeled with the rpType
        Parameters:
        c - context
        o - DSpaceObject policies relate to
        actionID - action (defined in class Constants)
        rpType - the resource policy type
        Returns:
        list of resource policies
        Throws:
        SQLException - if there's a database problem
      • findByEPerson

        List<ResourcePolicy> findByEPerson​(Context context,
                                           EPerson ePerson,
                                           int offset,
                                           int limit)
                                    throws SQLException
        Return a paginated list of policies that belong to an EPerson
        Parameters:
        context - DSpace context object
        ePerson - ePerson whose policies want to find
        offset - the position of the first result to return
        limit - paging limit
        Throws:
        SQLException - if database error
      • countByEPerson

        int countByEPerson​(Context context,
                           EPerson ePerson)
                    throws SQLException
        Count all the resource policies of the ePerson
        Parameters:
        context - DSpace context object
        ePerson - ePerson whose policies want to count
        Returns:
        total resource policies of the ePerson
        Throws:
        SQLException - if database error
      • findByEPersonAndResourceUuid

        List<ResourcePolicy> findByEPersonAndResourceUuid​(Context context,
                                                          EPerson ePerson,
                                                          UUID resourceUuid,
                                                          int offset,
                                                          int limit)
                                                   throws SQLException
        Return a paginated list of policies related to a resourceUuid belong to an ePerson
        Parameters:
        context - DSpace context object
        ePerson - ePerson whose policies want to find
        resourceUuid - the uuid of an DSpace resource
        offset - the position of the first result to return
        limit - paging limit
        Returns:
        list of resource policies
        Throws:
        SQLException - if database error
      • countByEPersonAndResourceUuid

        int countByEPersonAndResourceUuid​(Context context,
                                          EPerson ePerson,
                                          UUID resourceUuid)
                                   throws SQLException
        Count all the policies related to a resourceUuid belong to an ePerson
        Parameters:
        context - DSpace context object
        resourceUuid - the uuid of an DSpace resource
        ePerson - ePerson whose policies want to find
        Returns:
        total policies
        Throws:
        SQLException - if database error
      • findByResouceUuidAndActionId

        List<ResourcePolicy> findByResouceUuidAndActionId​(Context context,
                                                          UUID resourceUuid,
                                                          int actionId,
                                                          int offset,
                                                          int limit)
                                                   throws SQLException
        Return a paginated list of policies related to a DSpace resource filter by actionId
        Parameters:
        context - DSpace context object
        resourceUuid - the uuid of an DSpace resource
        actionId - id relative to action as READ, WRITE, DELITE etc.
        offset - the position of the first result to return
        limit - paging limit
        Returns:
        list of resource policies
        Throws:
        SQLException - if database error
      • countByResouceUuidAndActionId

        int countByResouceUuidAndActionId​(Context context,
                                          UUID resourceUuid,
                                          int actionId)
                                   throws SQLException
        Count all the policies related to a resourceUuid and actionId
        Parameters:
        context - DSpace context object
        resourceUuid - the uuid of an DSpace resource
        actionId - id relative to action as READ, WRITE, DELITE etc.
        Returns:
        total policies
        Throws:
        SQLException - if database error
      • findByResouceUuid

        List<ResourcePolicy> findByResouceUuid​(Context context,
                                               UUID resourceUuid,
                                               int offset,
                                               int limit)
                                        throws SQLException
        Return a paginated list of policies related to a DSpace resource
        Parameters:
        context - DSpace context object
        resourceUuid - the uuid of an DSpace resource
        offset - the position of the first result to return
        limit - paging limit
        Returns:
        list of resource policies
        Throws:
        SQLException - if database error
      • countByResourceUuid

        int countByResourceUuid​(Context context,
                                UUID resourceUuid)
                         throws SQLException
        Count all the policies by resourceUuid
        Parameters:
        context - DSpace context object
        resourceUuid - the uuid of an DSpace resource
        Returns:
        total policies
        Throws:
        SQLException - if database error
      • findByGroup

        List<ResourcePolicy> findByGroup​(Context context,
                                         Group group,
                                         int offset,
                                         int limit)
                                  throws SQLException
        Return a paginated list of policies related to a group
        Parameters:
        context - DSpace context object
        group - DSpace group
        offset - the position of the first result to return
        limit - paging limit
        Returns:
        list of resource policies
        Throws:
        SQLException - if database error
      • countResourcePolicyByGroup

        int countResourcePolicyByGroup​(Context context,
                                       Group group)
                                throws SQLException
        Count all the resource policies of the group
        Parameters:
        context - DSpace context object
        group - DSpace group
        Returns:
        total policies
        Throws:
        SQLException - if database error
      • findByGroupAndResourceUuid

        List<ResourcePolicy> findByGroupAndResourceUuid​(Context context,
                                                        Group group,
                                                        UUID resourceUuid,
                                                        int offset,
                                                        int limit)
                                                 throws SQLException
        Return a paginated list of policies related to a group and related to a resourceUuid
        Parameters:
        context - DSpace context object
        group - DSpace group
        resourceUuid - the uuid of an DSpace resource
        offset - the position of the first result to return
        limit - paging limit
        Returns:
        list of resource policies
        Throws:
        SQLException - if database error
      • countByGroupAndResourceUuid

        int countByGroupAndResourceUuid​(Context context,
                                        Group group,
                                        UUID resourceUuid)
                                 throws SQLException
        Count all the resource policies of the group and of the resourceUuid
        Parameters:
        context - DSpace context object
        group - DSpace group
        resourceUuid - the uuid of an DSpace resource
        Returns:
        total policies
        Throws:
        SQLException - if database error