|
From: <fg...@us...> - 2006-10-18 12:27:10
|
Revision: 91
http://svn.sourceforge.net/openutils/?rev=91&view=rev
Author: fgiust
Date: 2006-10-18 05:27:00 -0700 (Wed, 18 Oct 2006)
Log Message:
-----------
fix handling of nested properties
Modified Paths:
--------------
trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java
Modified: trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java
===================================================================
--- trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java 2006-10-15 15:03:14 UTC (rev 90)
+++ trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java 2006-10-18 12:27:00 UTC (rev 91)
@@ -83,7 +83,9 @@
fmd = FilterMetadata.EQUAL;
}
- String simplePropertyName = StringUtils.substringAfterLast(propertyName, ".");
+ String simplePropertyName = StringUtils.contains(propertyName, ".") ? StringUtils.substringAfterLast(
+ propertyName,
+ ".") : propertyName;
fmd.createFilter(crit, simplePropertyName, value);
@@ -115,7 +117,6 @@
{
if (containsSomething(value))
{
- log.debug("crit.createCriteria({})", propertyName);
// @todo handle multiple associations in lists?
// see http://opensource2.atlassian.com/projects/hibernate/browse/HHH-879
@@ -125,13 +126,19 @@
for (Object element : ((Collection) value))
{
- Criteria childrenCriteria = crit.createCriteria(propertyName);
+ String simplePropertyName = StringUtils.contains(propertyName, ".") ? StringUtils
+ .substringAfterLast(propertyName, ".") : propertyName;
+ log.debug("crit.createCriteria({})", simplePropertyName);
+ Criteria childrenCriteria = crit.createCriteria(simplePropertyName);
fillCriteria(propertyName, childrenCriteria, element);
}
}
else
{
- Criteria childrenCriteria = crit.createCriteria(propertyName);
+ String simplePropertyName = StringUtils.contains(propertyName, ".") ? StringUtils
+ .substringAfterLast(propertyName, ".") : propertyName;
+ log.debug("crit.createCriteria({})", simplePropertyName);
+ Criteria childrenCriteria = crit.createCriteria(simplePropertyName);
fillCriteria(propertyName, childrenCriteria, value);
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fg...@us...> - 2006-12-05 15:33:51
|
Revision: 134
http://svn.sourceforge.net/openutils/?rev=134&view=rev
Author: fgiust
Date: 2006-12-05 07:33:48 -0800 (Tue, 05 Dec 2006)
Log Message:
-----------
fix calendar paramters
Modified Paths:
--------------
trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java
Modified: trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java
===================================================================
--- trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java 2006-11-20 19:54:23 UTC (rev 133)
+++ trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java 2006-12-05 15:33:48 UTC (rev 134)
@@ -313,7 +313,7 @@
|| objClass.equals(BigDecimal.class)
|| objClass.equals(Timestamp.class)
|| objClass.equals(Character.class)
- || objClass.equals(Calendar.class);
+ || Calendar.class.isAssignableFrom(objClass);
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fg...@us...> - 2007-01-30 17:11:52
|
Revision: 159
http://svn.sourceforge.net/openutils/?rev=159&view=rev
Author: fgiust
Date: 2007-01-30 09:09:39 -0800 (Tue, 30 Jan 2007)
Log Message:
-----------
handle Maps using filter metadata
Modified Paths:
--------------
trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java
Modified: trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java
===================================================================
--- trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java 2007-01-30 15:35:37 UTC (rev 158)
+++ trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java 2007-01-30 17:09:39 UTC (rev 159)
@@ -67,6 +67,11 @@
private void addCondition(Criteria crit, String propertyName, Object value, Object parentObject)
throws HibernateException
{
+
+ String simplePropertyName = StringUtils.contains(propertyName, ".") ? StringUtils.substringAfterLast(
+ propertyName,
+ ".") : propertyName;
+
if (isSimpleType(value))
{
@@ -83,10 +88,6 @@
fmd = FilterMetadata.EQUAL;
}
- String simplePropertyName = StringUtils.contains(propertyName, ".") ? StringUtils.substringAfterLast(
- propertyName,
- ".") : propertyName;
-
fmd.createFilter(crit, simplePropertyName, value);
}
@@ -97,7 +98,7 @@
Date to = ((MutableDateRange) value).getTo();
if (from != null && to != null)
{
- log.debug("crit.add(Restrictions.between({},{}, {})", new Object[]{propertyName, from, to});
+ log.debug("crit.add(Restrictions.between({},{}, {})", new Object[]{propertyName, from, to });
crit.add(Restrictions.between(propertyName, from, to));
}
else if (from != null)
@@ -117,26 +118,38 @@
{
if (containsSomething(value))
{
-
// @todo handle multiple associations in lists?
// see http://opensource2.atlassian.com/projects/hibernate/browse/HHH-879
if ((value instanceof Set || value instanceof List) && !((Collection) value).isEmpty())
{
// collection: the new criteria has already been created, now we only nee to analize content
- for (Object element : ((Collection) value))
+ for (Object element : ((Collection< ? extends Object>) value))
{
- String simplePropertyName = StringUtils.contains(propertyName, ".") ? StringUtils
- .substringAfterLast(propertyName, ".") : propertyName;
+
log.debug("crit.createCriteria({})", simplePropertyName);
Criteria childrenCriteria = crit.createCriteria(simplePropertyName);
fillCriteria(propertyName, childrenCriteria, element);
}
}
+ else if ((value instanceof Map) && !((Map) value).isEmpty())
+ {
+ FilterMetadata fmd = metadata.get(propertyName);
+
+ if (fmd != null)
+ {
+ fmd.createFilter(crit, simplePropertyName, value);
+ }
+ else
+ {
+ log.warn(
+ "Maps are not handled without a FilterMetadata. Property is {} and value is {}.",
+ propertyName,
+ value);
+ }
+ }
else
{
- String simplePropertyName = StringUtils.contains(propertyName, ".") ? StringUtils
- .substringAfterLast(propertyName, ".") : propertyName;
log.debug("crit.createCriteria({})", simplePropertyName);
Criteria childrenCriteria = crit.createCriteria(simplePropertyName);
fillCriteria(propertyName, childrenCriteria, value);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <fg...@us...> - 2007-02-18 14:24:06
|
Revision: 271
http://svn.sourceforge.net/openutils/?rev=271&view=rev
Author: fgiust
Date: 2007-02-18 06:24:05 -0800 (Sun, 18 Feb 2007)
Log Message:
-----------
handle enums
Modified Paths:
--------------
trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java
Modified: trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java
===================================================================
--- trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java 2007-02-17 15:08:52 UTC (rev 270)
+++ trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java 2007-02-18 14:24:05 UTC (rev 271)
@@ -72,7 +72,7 @@
propertyName,
".") : propertyName;
- if (isSimpleType(value))
+ if (isSimpleType(value) || value.getClass().isEnum())
{
// don't filter on empty strings!
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mol...@us...> - 2008-02-01 10:34:48
|
Revision: 590
http://openutils.svn.sourceforge.net/openutils/?rev=590&view=rev
Author: molaschi
Date: 2008-02-01 02:34:37 -0800 (Fri, 01 Feb 2008)
Log Message:
-----------
bug fix for Enum in EnhancedExample
Modified Paths:
--------------
trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java
Modified: trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java
===================================================================
--- trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java 2008-01-31 22:35:00 UTC (rev 589)
+++ trunk/openutils-bshd5/src/main/java/it/openutils/hibernate/example/EnhancedExample.java 2008-02-01 10:34:37 UTC (rev 590)
@@ -17,6 +17,7 @@
import org.apache.commons.lang.StringUtils;
import org.hibernate.Criteria;
import org.hibernate.HibernateException;
+import org.hibernate.mapping.Value;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.dao.DataRetrievalFailureException;
@@ -146,7 +147,7 @@
{
return false;
}
- if (isSimpleType(bean))
+ if (isSimpleType(bean) || bean.getClass().isEnum())
{
return true;
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|