Interface UsageDAO

  • All Known Implementing Classes:
    AbstractUsageDAOImpl, UsageDAOImpl

    public interface UsageDAO
    This provides basic services such as caching, but defers to the underlying implementation for CRUD operations. alf_usage_delta
    Since:
    3.4
    Author:
    janv
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Interface Description
      static interface  UsageDAO.MapHandler
      A callback handler for iterating over the Map results
      static interface  UsageDAO.StringHandler
      A callback handler for iterating over the String results
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      int deleteDeltas​(long nodeId)
      Delete usage deltas for given node entity id
      int deleteDeltas​(org.alfresco.service.cmr.repository.NodeRef nodeRef)
      Delete usage deltas for given nodeRef
      java.lang.Long getContentSizeForStoreForUser​(org.alfresco.service.cmr.repository.StoreRef storeRef, java.lang.String userName)
      Get user with a calculated usage
      long getTotalDeltaSize​(org.alfresco.service.cmr.repository.NodeRef nodeRef, boolean removeDeltas)
      Get the total delta size for a node.
      java.util.Set<org.alfresco.service.cmr.repository.NodeRef> getUsageDeltaNodes()  
      void getUserContentSizesForStore​(org.alfresco.service.cmr.repository.StoreRef storeRef, UsageDAO.MapHandler resultsCallback)
      New style content urls - Iterate and sum all content node sizes for user (owner/creator)
      void getUsersWithoutUsage​(org.alfresco.service.cmr.repository.StoreRef storeRef, UsageDAO.MapHandler resultsCallback)
      Iterate over all person nodes to get users without a calculated usage
      void getUsersWithUsage​(org.alfresco.service.cmr.repository.StoreRef storeRef, UsageDAO.MapHandler resultsCallback)
      Iterate over all person nodes to get users with a calculated usage
      void insertDelta​(org.alfresco.service.cmr.repository.NodeRef usageNodeRef, long deltaSize)
      Create a usage delta entry.
    • Method Detail

      • insertDelta

        void insertDelta​(org.alfresco.service.cmr.repository.NodeRef usageNodeRef,
                         long deltaSize)
        Create a usage delta entry.
        Parameters:
        deltaSize - the size change
      • getTotalDeltaSize

        long getTotalDeltaSize​(org.alfresco.service.cmr.repository.NodeRef nodeRef,
                               boolean removeDeltas)
        Get the total delta size for a node.
        Parameters:
        nodeRef - the node reference
        removeDeltas - true to remove the deltas before returning the result.
        Returns:
        sum of delta sizes (in bytes) - can be +ve or -ve
      • getUsageDeltaNodes

        java.util.Set<org.alfresco.service.cmr.repository.NodeRef> getUsageDeltaNodes()
      • deleteDeltas

        int deleteDeltas​(org.alfresco.service.cmr.repository.NodeRef nodeRef)
        Delete usage deltas for given nodeRef
        Parameters:
        nodeRef - NodeRef
        Returns:
        int
      • deleteDeltas

        int deleteDeltas​(long nodeId)
        Delete usage deltas for given node entity id
        Parameters:
        nodeId - long
        Returns:
        int
      • getUserContentSizesForStore

        void getUserContentSizesForStore​(org.alfresco.service.cmr.repository.StoreRef storeRef,
                                         UsageDAO.MapHandler resultsCallback)
        New style content urls - Iterate and sum all content node sizes for user (owner/creator)
        Parameters:
        storeRef - the store to search in
        resultsCallback - the callback to use while iterating over the content sizes (one row per user)
      • getUsersWithoutUsage

        void getUsersWithoutUsage​(org.alfresco.service.cmr.repository.StoreRef storeRef,
                                  UsageDAO.MapHandler resultsCallback)
        Iterate over all person nodes to get users without a calculated usage
        Parameters:
        storeRef - the store to search in
        resultsCallback - the callback to use while iterating over the people
      • getUsersWithUsage

        void getUsersWithUsage​(org.alfresco.service.cmr.repository.StoreRef storeRef,
                               UsageDAO.MapHandler resultsCallback)
        Iterate over all person nodes to get users with a calculated usage
        Parameters:
        storeRef - the store to search in
        resultsCallback - the callback to use while iterating over the people
      • getContentSizeForStoreForUser

        java.lang.Long getContentSizeForStoreForUser​(org.alfresco.service.cmr.repository.StoreRef storeRef,
                                                     java.lang.String userName)
        Get user with a calculated usage
        Parameters:
        storeRef - the store to search in
        userName - the username
        Returns:
        Returns ussage