Class HibernateArchiveDAO

  • All Implemented Interfaces:
    com.logicaldoc.core.PersistentObjectDAO<Archive>, ArchiveDAO

    public class HibernateArchiveDAO
    extends com.logicaldoc.core.HibernatePersistentObjectDAO<Archive>
    implements ArchiveDAO
    Hibernate implementation of the ArchiveDAO.
    Since:
    4.5
    Author:
    Matteo Caruso - LogicalDOC
    • Field Summary

      • Fields inherited from interface com.logicaldoc.core.PersistentObjectDAO

        ENTITY
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void delete​(long archiveId, int code)  
      List<Long> findArchivedIds​(long archiveId)
      Retrieves the identifiers of all versions archived into an archive
      List<Archive> findByMode​(int mode, Long tenantId)
      Retrieves all the archive with the given mode
      List<Archive> findByModeAndName​(int mode, String name, Long tenantId)
      Retrieves all the archive with the given mode and the given name
      List<Archive> findByModeAndStatus​(int mode, int status, Long tenantId)
      Retrieves all the archive with the given mode and the given status
      List<Archive> findByModeAndStatusAndType​(int mode, int status, int type, Long tenantId)
      Retrieves all the archive with the given mode and the given type
      List<Archive> findByModeAndType​(int mode, int type, Long tenantId)
      Retrieves all the archive with the given mode and the given type
      Archive findByName​(String name, long tenantId)
      Retrieves the archive by the given name
      List<Archive> findByStatus​(int status, Long tenantId)
      Retrieves all the archive with the given status
      ArchiveCacheManager getCacheManager()  
      void initialize​(Archive archive)
      Initializes lazy loaded collections
      boolean removeVersions​(long archiveId, Long[] versionIds)
      Performs a bulk update removing all versions from the given archive.
      void setCacheManager​(ArchiveCacheManager cacheManager)  
      void store​(Archive archive)  
      void store​(Archive archive, boolean updateSize)
      This method persists the entity object and updates the whole size
      • Methods inherited from class com.logicaldoc.core.HibernatePersistentObjectDAO

        bulkUpdate, bulkUpdate, delete, deleteAll, deleteAll, findAll, findAll, findAllIds, findAllIds, findById, findById, findByObjectQuery, findByObjectQuery, findByQuery, findByQuery, findByWhere, findByWhere, findByWhere, findIdsByWhere, findIdsByWhere, getDbms, getSessionFactory, isOracle, jdbcUpdate, jdbcUpdate, query, queryForInt, queryForList, queryForList, queryForLong, queryForLong, queryForObject, queryForRowSet, queryForString, setSessionFactory
      • Methods inherited from interface com.logicaldoc.core.PersistentObjectDAO

        bulkUpdate, bulkUpdate, delete, deleteAll, deleteAll, findAll, findAll, findAllIds, findAllIds, findById, findById, findByObjectQuery, findByObjectQuery, findByQuery, findByQuery, findByWhere, findByWhere, findByWhere, findIdsByWhere, findIdsByWhere, getDbms, isOracle, jdbcUpdate, jdbcUpdate, query, queryForInt, queryForList, queryForList, queryForLong, queryForLong, queryForObject, queryForRowSet, queryForString
    • Method Detail

      • initialize

        public void initialize​(Archive archive)
        Description copied from interface: ArchiveDAO
        Initializes lazy loaded collections
        Specified by:
        initialize in interface ArchiveDAO
        Specified by:
        initialize in interface com.logicaldoc.core.PersistentObjectDAO<Archive>
        Overrides:
        initialize in class com.logicaldoc.core.HibernatePersistentObjectDAO<Archive>
        Parameters:
        archive - The archive to be initialized
      • findByName

        public Archive findByName​(String name,
                                  long tenantId)
        Description copied from interface: ArchiveDAO
        Retrieves the archive by the given name
        Specified by:
        findByName in interface ArchiveDAO
        Parameters:
        name - The archive name
        tenantId - The tenant of the archive
        Returns:
        The archive with the given name
      • delete

        public void delete​(long archiveId,
                           int code)
                    throws com.logicaldoc.core.PersistenceException
        Specified by:
        delete in interface com.logicaldoc.core.PersistentObjectDAO<Archive>
        Overrides:
        delete in class com.logicaldoc.core.HibernatePersistentObjectDAO<Archive>
        Throws:
        com.logicaldoc.core.PersistenceException
      • findByStatus

        public List<Archive> findByStatus​(int status,
                                          Long tenantId)
        Description copied from interface: ArchiveDAO
        Retrieves all the archive with the given status
        Specified by:
        findByStatus in interface ArchiveDAO
        Parameters:
        status - The archive status
        tenantId - The archive tenant
        Returns:
        A list of archives with the given status
      • store

        public void store​(Archive archive)
                   throws com.logicaldoc.core.PersistenceException
        Specified by:
        store in interface com.logicaldoc.core.PersistentObjectDAO<Archive>
        Overrides:
        store in class com.logicaldoc.core.HibernatePersistentObjectDAO<Archive>
        Throws:
        com.logicaldoc.core.PersistenceException
      • store

        public void store​(Archive archive,
                          boolean updateSize)
                   throws com.logicaldoc.core.PersistenceException
        Description copied from interface: ArchiveDAO
        This method persists the entity object and updates the whole size
        Specified by:
        store in interface ArchiveDAO
        Parameters:
        archive - entity to be stored.
        updateSize - true if you want to update archive total size
        Throws:
        com.logicaldoc.core.PersistenceException - error at data layer
      • findArchivedIds

        public List<Long> findArchivedIds​(long archiveId)
        Description copied from interface: ArchiveDAO
        Retrieves the identifiers of all versions archived into an archive
        Specified by:
        findArchivedIds in interface ArchiveDAO
        Parameters:
        archiveId - the archive ID
        Returns:
        list of identifiers
      • findByMode

        public List<Archive> findByMode​(int mode,
                                        Long tenantId)
        Description copied from interface: ArchiveDAO
        Retrieves all the archive with the given mode
        Specified by:
        findByMode in interface ArchiveDAO
        Parameters:
        mode - The archive mode
        tenantId - The archive tenant
        Returns:
        A list of archives with the given mode
      • findByModeAndStatus

        public List<Archive> findByModeAndStatus​(int mode,
                                                 int status,
                                                 Long tenantId)
        Description copied from interface: ArchiveDAO
        Retrieves all the archive with the given mode and the given status
        Specified by:
        findByModeAndStatus in interface ArchiveDAO
        Parameters:
        mode - The archive mode
        status - The archive status
        tenantId - The archive tenant
        Returns:
        A list of archives with the given mode and the given status ordered by creation date descending
      • findByModeAndType

        public List<Archive> findByModeAndType​(int mode,
                                               int type,
                                               Long tenantId)
        Description copied from interface: ArchiveDAO
        Retrieves all the archive with the given mode and the given type
        Specified by:
        findByModeAndType in interface ArchiveDAO
        Parameters:
        mode - The archive mode
        type - The archive type
        tenantId - The archive tenant
        Returns:
        A list of archives with the given mode and the given type ordered by creation date descending
      • findByModeAndName

        public List<Archive> findByModeAndName​(int mode,
                                               String name,
                                               Long tenantId)
        Description copied from interface: ArchiveDAO
        Retrieves all the archive with the given mode and the given name
        Specified by:
        findByModeAndName in interface ArchiveDAO
        Parameters:
        mode - The archive mode
        name - The archive name
        tenantId - The archive tenant
        Returns:
        A list of archives with the given mode and the given name
      • removeVersions

        public boolean removeVersions​(long archiveId,
                                      Long[] versionIds)
        Description copied from interface: ArchiveDAO
        Performs a bulk update removing all versions from the given archive. The export status of the involved documents is set to UNLOCKED.
        Specified by:
        removeVersions in interface ArchiveDAO
        Parameters:
        archiveId - The archive identifier
        versionIds - The array of version ids to be removed
        Returns:
        if the versions were correctly removed
      • findByModeAndStatusAndType

        public List<Archive> findByModeAndStatusAndType​(int mode,
                                                        int status,
                                                        int type,
                                                        Long tenantId)
        Description copied from interface: ArchiveDAO
        Retrieves all the archive with the given mode and the given type
        Specified by:
        findByModeAndStatusAndType in interface ArchiveDAO
        Parameters:
        mode - The archive mode
        status - The archive status
        type - The archive type
        tenantId - The archive tenant
        Returns:
        A list of archives with the given mode, the given status and the given type ordered by creation date descending