From: <fg...@us...> - 2007-01-30 15:44:37
|
Revision: 158 http://svn.sourceforge.net/openutils/?rev=158&view=rev Author: fgiust Date: 2007-01-30 07:35:37 -0800 (Tue, 30 Jan 2007) Log Message: ----------- add the ability to define custom default filters Modified Paths: -------------- trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java Modified: trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java =================================================================== --- trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java 2007-01-30 14:53:48 UTC (rev 157) +++ trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java 2007-01-30 15:35:37 UTC (rev 158) @@ -231,7 +231,7 @@ */ public List<T> findFiltered(final T filter) { - return findFiltered(filter, new HashMap<String, FilterMetadata>(0)); + return findFiltered(filter, getDefaultFilterMetadata()); } /** @@ -239,7 +239,7 @@ */ public List<T> findFiltered(T filter, Order[] orderProperties) { - return findFiltered(filter, orderProperties, new HashMap<String, FilterMetadata>(0), Integer.MAX_VALUE, 0); + return findFiltered(filter, orderProperties, getDefaultFilterMetadata(), Integer.MAX_VALUE, 0); } /** @@ -255,7 +255,7 @@ */ public List<T> findFiltered(final T filter, final int maxResults, final int page) { - return findFiltered(filter, new HashMap<String, FilterMetadata>(0), maxResults, page); + return findFiltered(filter, getDefaultFilterMetadata(), maxResults, page); } /** @@ -412,6 +412,16 @@ } /** + * Returns the default set of FilterMetadata that will be applied to any query. The default implementation doesn't + * set any default filter, subclasses may override this. + * @return map of property name - filter metadata + */ + protected Map<String, FilterMetadata> getDefaultFilterMetadata() + { + return new HashMap<String, FilterMetadata>(0); + } + + /** * Returns the first object in the collection or null if the collection is null or empty. * @param list collection * @return first element in the list This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <fc...@us...> - 2007-02-02 09:13:59
|
Revision: 190 http://svn.sourceforge.net/openutils/?rev=190&view=rev Author: fcarone Date: 2007-02-02 01:14:00 -0800 (Fri, 02 Feb 2007) Log Message: ----------- Removed unused variable Modified Paths: -------------- trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java Modified: trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java =================================================================== --- trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java 2007-02-02 08:58:20 UTC (rev 189) +++ trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java 2007-02-02 09:14:00 UTC (rev 190) @@ -18,8 +18,6 @@ import org.hibernate.criterion.CriteriaSpecification; import org.hibernate.criterion.Order; import org.hibernate.type.Type; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import org.springframework.orm.hibernate3.HibernateCallback; import org.springframework.orm.hibernate3.HibernateObjectRetrievalFailureException; import org.springframework.orm.hibernate3.support.HibernateDaoSupport; @@ -38,11 +36,6 @@ { /** - * Logger. - */ - private static Logger log = LoggerFactory.getLogger(HibernateDAOImpl.class); - - /** * {@inheritDoc} */ @SuppressWarnings("unchecked") This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <fc...@us...> - 2007-08-31 09:44:32
|
Revision: 416 http://openutils.svn.sourceforge.net/openutils/?rev=416&view=rev Author: fcarone Date: 2007-08-31 02:44:29 -0700 (Fri, 31 Aug 2007) Log Message: ----------- missing methods added Modified Paths: -------------- trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java Modified: trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java =================================================================== --- trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java 2007-08-31 09:18:39 UTC (rev 415) +++ trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java 2007-08-31 09:44:29 UTC (rev 416) @@ -168,6 +168,37 @@ /** * {@inheritDoc} */ + @SuppressWarnings("unchecked") + public List<T> findAll(final Order[] orderProperties, final List<Criterion> criteria) + { + return (List<T>) getHibernateTemplate().execute(new HibernateCallback() + { + + public Object doInHibernate(Session ses) throws HibernateException + { + Criteria crit = ses.createCriteria(getReferenceClass()); + if (null != orderProperties) + { + for (int j = 0; j < orderProperties.length; j++) + { + crit.addOrder(orderProperties[j]); + } + + } + if (criteria != null) + { + for (Criterion criterion : criteria) + { + crit.add(criterion); + } + } + return crit.list(); + } + }); + } + /** + * {@inheritDoc} + */ public List<T> find(String query, Object obj, Type type) { return find(query, new Object[]{obj }, new Type[]{type }); @@ -309,6 +340,14 @@ /** * {@inheritDoc} */ + public T findFilteredFirst(final T filter, List<Criterion> criteria) + { + return getFirstInCollection(findFiltered(filter, null, getDefaultFilterMetadata(), 1, 0, criteria)); + } + + /** + * {@inheritDoc} + */ public List<T> findFiltered(final T filter) { return findFiltered(filter, getDefaultFilterMetadata()); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <fc...@us...> - 2007-08-31 12:25:25
|
Revision: 417 http://openutils.svn.sourceforge.net/openutils/?rev=417&view=rev Author: fcarone Date: 2007-08-31 05:25:26 -0700 (Fri, 31 Aug 2007) Log Message: ----------- minor fix Modified Paths: -------------- trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java Modified: trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java =================================================================== --- trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java 2007-08-31 09:44:29 UTC (rev 416) +++ trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java 2007-08-31 12:25:26 UTC (rev 417) @@ -435,7 +435,6 @@ { return (List< ? >) getHibernateTemplate().execute(new HibernateCallback() { - public Object doInHibernate(Session ses) throws HibernateException { Query q = ses.getNamedQuery(name); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <fc...@us...> - 2007-09-03 09:11:25
|
Revision: 427 http://openutils.svn.sourceforge.net/openutils/?rev=427&view=rev Author: fcarone Date: 2007-09-03 01:05:11 -0700 (Mon, 03 Sep 2007) Log Message: ----------- getThis method added to catch the proxy again. This change is needed for security reason, since after the first proxy method is called, the target is directly invoked (and we lose control). Modified Paths: -------------- trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java Modified: trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java =================================================================== --- trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java 2007-08-31 17:03:23 UTC (rev 426) +++ trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java 2007-09-03 08:05:11 UTC (rev 427) @@ -9,6 +9,7 @@ import java.util.List; import java.util.Map; +import org.aopalliance.aop.AspectException; import org.hibernate.Criteria; import org.hibernate.Hibernate; import org.hibernate.HibernateException; @@ -19,6 +20,7 @@ import org.hibernate.criterion.Criterion; import org.hibernate.criterion.Order; import org.hibernate.type.Type; +import org.springframework.aop.framework.AopContext; import org.springframework.orm.hibernate3.HibernateCallback; import org.springframework.orm.hibernate3.HibernateObjectRetrievalFailureException; import org.springframework.orm.hibernate3.support.HibernateDaoSupport; @@ -145,24 +147,7 @@ @SuppressWarnings("unchecked") public List<T> findAll(final Order[] orderProperties) { - - return (List<T>) getHibernateTemplate().execute(new HibernateCallback() - { - - public Object doInHibernate(Session ses) throws HibernateException - { - Criteria crit = ses.createCriteria(getReferenceClass()); - if (null != orderProperties) - { - for (int j = 0; j < orderProperties.length; j++) - { - crit.addOrder(orderProperties[j]); - } - - } - return crit.list(); - } - }); + return getThis().findAll(orderProperties, null); } /** @@ -196,6 +181,7 @@ } }); } + /** * {@inheritDoc} */ @@ -342,7 +328,7 @@ */ public T findFilteredFirst(final T filter, List<Criterion> criteria) { - return getFirstInCollection(findFiltered(filter, null, getDefaultFilterMetadata(), 1, 0, criteria)); + return getFirstInCollection(findFiltered(filter, null, getDefaultFilterMetadata(), 1, 0, criteria)); } /** @@ -354,6 +340,24 @@ } /** + * @return + * This is needed as for http://opensource.atlassian.com/projects/spring/browse/SPR-2226 + */ + @SuppressWarnings("unchecked") + private HibernateDAO<T, K> getThis() + { + try + { + return (HibernateDAO<T, K>) AopContext.currentProxy(); + } + catch (AspectException exc) + { + logger.debug("Not running inside an AOP proxy, so no proxy can be returned: " + exc.getMessage()); + return this; + } + } + + /** * {@inheritDoc} */ public List<T> findFiltered(T filter, Order[] orderProperties) @@ -393,7 +397,7 @@ public List<T> findFiltered(final T filter, final Order[] customOrder, final Map<String, FilterMetadata> metadata, final int maxResults, final int page) { - return findFiltered(filter, customOrder, metadata, maxResults, page, null); + return getThis().findFiltered(filter, customOrder, metadata, maxResults, page, null); } /** @@ -435,6 +439,7 @@ { return (List< ? >) getHibernateTemplate().execute(new HibernateCallback() { + public Object doInHibernate(Session ses) throws HibernateException { Query q = ses.getNamedQuery(name); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <fc...@us...> - 2007-09-03 15:44:36
|
Revision: 428 http://openutils.svn.sourceforge.net/openutils/?rev=428&view=rev Author: fcarone Date: 2007-09-03 01:24:39 -0700 (Mon, 03 Sep 2007) Log Message: ----------- give a non-null criteria list in inter dao calls Modified Paths: -------------- trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java Modified: trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java =================================================================== --- trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java 2007-09-03 08:05:11 UTC (rev 427) +++ trunk/openutils-bshd5/src/main/java/it/openutils/dao/hibernate/HibernateDAOImpl.java 2007-09-03 08:24:39 UTC (rev 428) @@ -4,6 +4,7 @@ import it.openutils.hibernate.example.FilterMetadata; import java.io.Serializable; +import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; import java.util.List; @@ -147,7 +148,7 @@ @SuppressWarnings("unchecked") public List<T> findAll(final Order[] orderProperties) { - return getThis().findAll(orderProperties, null); + return getThis().findAll(orderProperties, new ArrayList<Criterion>()); } /** @@ -397,7 +398,7 @@ public List<T> findFiltered(final T filter, final Order[] customOrder, final Map<String, FilterMetadata> metadata, final int maxResults, final int page) { - return getThis().findFiltered(filter, customOrder, metadata, maxResults, page, null); + return getThis().findFiltered(filter, customOrder, metadata, maxResults, page, new ArrayList<Criterion>()); } /** This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |