Class HibernateReportDAO

  • All Implemented Interfaces:
    com.logicaldoc.core.PersistentObjectDAO<Report>, ReportDAO

    public class HibernateReportDAO
    extends com.logicaldoc.core.HibernatePersistentObjectDAO<Report>
    implements ReportDAO
    Hibernate implementation of ReportDAO
    Since:
    7.3.1
    Author:
    Marco Meschieri - LogicalDOC
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void cleanZombies​(long tenantId)
      Cleans the status of zombie reports
      boolean delete​(long reportId, int code)  
      Report findByName​(String name, long tenantId)
      Finds the report with the given name
      List<Report> findZombies​(long tenantId)
      Retrieves all the reports that are running for more than one hour
      static File getDesignsDirectory()
      Computes the directory in which all design files must be maintained, that is the plugin dir
      static File resolveDesignFile​(long reportId)  
      static File resolveLogFile​(long reportId)  
      boolean store​(Report report, File design)
      Stores the report and it's design file
      • Methods inherited from class com.logicaldoc.core.HibernatePersistentObjectDAO

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

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

      • resolveDesignFile

        public static File resolveDesignFile​(long reportId)
      • resolveLogFile

        public static File resolveLogFile​(long reportId)
      • getDesignsDirectory

        public static File getDesignsDirectory()
        Computes the directory in which all design files must be maintained, that is the plugin dir
        Returns:
        folder containing the designs
      • delete

        public boolean delete​(long reportId,
                              int code)
        Specified by:
        delete in interface com.logicaldoc.core.PersistentObjectDAO<Report>
        Overrides:
        delete in class com.logicaldoc.core.HibernatePersistentObjectDAO<Report>
      • findByName

        public Report findByName​(String name,
                                 long tenantId)
        Description copied from interface: ReportDAO
        Finds the report with the given name
        Specified by:
        findByName in interface ReportDAO
        Parameters:
        name - unique name of the report
        tenantId - identifier of the tenant
        Returns:
        the found report
      • store

        public boolean store​(Report report,
                             File design)
                      throws com.logicaldoc.core.PersistenceException
        Description copied from interface: ReportDAO
        Stores the report and it's design file
        Specified by:
        store in interface ReportDAO
        Parameters:
        report - the report to store
        design - the file containing the report's design
        Returns:
        if the report has been correctly stored
        Throws:
        com.logicaldoc.core.PersistenceException - error in the database
      • findZombies

        public List<Report> findZombies​(long tenantId)
        Description copied from interface: ReportDAO
        Retrieves all the reports that are running for more than one hour
        Specified by:
        findZombies in interface ReportDAO
        Parameters:
        tenantId - identifier of the tenant
        Returns:
        list of reports
      • cleanZombies

        public void cleanZombies​(long tenantId)
        Description copied from interface: ReportDAO
        Cleans the status of zombie reports
        Specified by:
        cleanZombies in interface ReportDAO
        Parameters:
        tenantId - identifier of the tenant