X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=source%2Fmir%2Fcore%2Fservice%2Fstorage%2FStorageService.java;h=03b9ad4015db44025f234bd0530e26373b18d655;hb=571162abea3c3e10eb98e09223d6de1b495c7f95;hp=32043b59d502f725897248dc6cdcd5ca7f4da454;hpb=2ea0a55aacf85d6df9154c3af2e8ee321df0e873;p=mir.git diff --git a/source/mir/core/service/storage/StorageService.java b/source/mir/core/service/storage/StorageService.java index 32043b59..03b9ad40 100755 --- a/source/mir/core/service/storage/StorageService.java +++ b/source/mir/core/service/storage/StorageService.java @@ -48,7 +48,7 @@ import net.sf.hibernate.expression.Order; * * StorageService * @author idefix - * @version $Id: StorageService.java,v 1.6 2003/09/18 21:39:42 idfx Exp $ + * @version $Id: StorageService.java,v 1.7 2003/09/30 19:27:10 idfx Exp $ */ public abstract class StorageService { private final int defaultLimit; @@ -138,6 +138,37 @@ public abstract class StorageService { throw new StorageServiceFailure(e); } } + + /** + * Load a list of Objects from the database + * @return a list of Objects + */ + public List list() { + try { + Session session = null; + Transaction transaction = null; + try { + session = sessionHolder.currentSession(); + transaction = session.beginTransaction(); + Criteria criteria = session.createCriteria(objectClass); + List returnList = criteria.list(); + transaction.commit(); + return returnList; + } catch (HibernateException e) { + if(transaction != null){ + transaction.rollback(); + } + throw new StorageServiceFailure(e); + } finally { + if (session != null) { + sessionHolder.closeSession(); + } + } + } catch (Exception e){ + throw new StorageServiceFailure(e); + } + } + /** * Load a Object with the given unique identifier