Author: bleny Date: 2014-05-15 18:51:48 +0200 (Thu, 15 May 2014) New Revision: 3109 Url: http://forge.nuiton.org/projects/topia/repository/revisions/3109 Log: fixes #3199 add comparison methods on HqlAndParametersBuilder Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/persistence/HqlAndParametersBuilder.java Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/persistence/HqlAndParametersBuilder.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/persistence/HqlAndParametersBuilder.java 2014-05-15 16:25:44 UTC (rev 3108) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/persistence/HqlAndParametersBuilder.java 2014-05-15 16:51:48 UTC (rev 3109) @@ -35,6 +35,7 @@ import java.util.Arrays; import java.util.Collection; +import java.util.Date; import java.util.Map; import java.util.Set; @@ -201,6 +202,62 @@ whereClauses.add(alias + "." + property + " not like :" + hqlParameterName); } + public void addLowerThan(String property, Date date) { + doAddLowerThan(property, date); + } + + public void addLowerOrEquals(String property, Date date) { + doAddLowerOrEquals(property, date); + } + + public void addGreaterThan(String property, Date date) { + doAddGreaterThan(property, date); + } + + public void addGreaterOrEquals(String property, Date date) { + doAddGreaterOrEquals(property, date); + } + + public void addLowerThan(String property, Number number) { + doAddLowerThan(property, number); + } + + public void addLowerOrEquals(String property, Number number) { + doAddLowerOrEquals(property, number); + } + + public void addGreaterThan(String property, Number number) { + doAddGreaterThan(property, number); + } + + public void addGreaterOrEquals(String property, Number number) { + doAddGreaterOrEquals(property, number); + } + + protected void doAddLowerThan(String property, Object value) { + Preconditions.checkNotNull(value); + String hqlParameterName = putHqlParameterWithAvailableName(property, value); + whereClauses.add(alias + "." + property + " < :" + hqlParameterName); + } + + protected void doAddLowerOrEquals(String property, Object value) { + Preconditions.checkNotNull(value); + String hqlParameterName = putHqlParameterWithAvailableName(property, value); + whereClauses.add(alias + "." + property + " <= :" + hqlParameterName); + } + + protected void doAddGreaterThan(String property, Object value) { + Preconditions.checkNotNull(value); + String hqlParameterName = putHqlParameterWithAvailableName(property, value); + whereClauses.add(alias + "." + property + " > :" + hqlParameterName); + } + + protected void doAddGreaterOrEquals(String property, Object value) { + Preconditions.checkNotNull(value); + String hqlParameterName = putHqlParameterWithAvailableName(property, value); + whereClauses.add(alias + "." + property + " >= :" + hqlParameterName); + } + public void addWhereClause(String whereClause) { Preconditions.checkArgument(StringUtils.isNotBlank(whereClause)); whereClauses.add(whereClause);