r2664 - in branches/topia-2.6.x: . topia-persistence/src/main/java/org/nuiton/topia/framework topia-persistence/src/main/java/org/nuiton/topia/persistence topia-persistence/src/main/java/org/nuiton/topia/persistence/pager
Author: tchemit Date: 2012-09-14 11:51:06 +0200 (Fri, 14 Sep 2012) New Revision: 2664 Url: http://nuiton.org/repositories/revision/topia/2664 Log: fixes #2313: Use new PageBean from nuiton-utils + refs #2314: Updates to nuiton-utils 2.6.2 Added: branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/ branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/FilterOperation.java branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/FilterOperationGroup.java branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/FilterRule.java branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/TopiaPagerBean.java branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/TopiaPagerBeanBuilder.java Modified: branches/topia-2.6.x/pom.xml branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/framework/TopiaSQLQuery.java branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/TopiaDAO.java branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/TopiaDAODeprecated.java branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/TopiaDAOImpl.java branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/TopiaFilterPagerUtil.java Modified: branches/topia-2.6.x/pom.xml =================================================================== --- branches/topia-2.6.x/pom.xml 2012-09-13 09:23:35 UTC (rev 2663) +++ branches/topia-2.6.x/pom.xml 2012-09-14 09:51:06 UTC (rev 2664) @@ -60,7 +60,7 @@ <!-- libs version --> <eugeneVersion>2.5</eugeneVersion> - <nuitonUtilsVersion>2.6</nuitonUtilsVersion> + <nuitonUtilsVersion>2.6.2-SNAPSHOT</nuitonUtilsVersion> <processorPluginVersion>1.2.2</processorPluginVersion> <nuitonI18nVersion>2.4.1</nuitonI18nVersion> <xmlrpcVersion>3.1.2</xmlrpcVersion> Modified: branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/framework/TopiaSQLQuery.java =================================================================== --- branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/framework/TopiaSQLQuery.java 2012-09-13 09:23:35 UTC (rev 2663) +++ branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/framework/TopiaSQLQuery.java 2012-09-14 09:51:06 UTC (rev 2664) @@ -212,9 +212,9 @@ * @throws SQLException if any pb * @since 2.6.4 */ - protected int getNbRows(ResultSet set) throws SQLException { + protected long getNbRows(ResultSet set) throws SQLException { - int nbRows = 0; + long nbRows = 0; while (set.next()) { nbRows++; } Modified: branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/TopiaDAO.java =================================================================== --- branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/TopiaDAO.java 2012-09-13 09:23:35 UTC (rev 2663) +++ branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/TopiaDAO.java 2012-09-14 09:51:06 UTC (rev 2664) @@ -41,8 +41,8 @@ import org.nuiton.topia.event.TopiaEntityVetoable; import org.nuiton.topia.framework.TopiaContextImplementor; import org.nuiton.topia.generator.EntityDAOTransformer; +import org.nuiton.topia.persistence.pager.TopiaPagerBean; -import java.security.Permission; import java.util.List; import java.util.Map; @@ -442,12 +442,12 @@ * @param params params of the query * @return entities of the paginated query result * @throws TopiaException if any pb while getting datas - * @see TopiaFilterPagerUtil.FilterPagerBean + * @see TopiaPagerBean * @since 2.6.12 */ <R> List<R> findAllByQueryAndPager(Class<R> type, String hql, - TopiaFilterPagerUtil.FilterPagerBean pager, + TopiaPagerBean pager, Object... params) throws TopiaException; /** @@ -459,11 +459,11 @@ * @param params params of the query * @return entities of the paginated query result * @throws TopiaException if any pb while getting datas - * @see TopiaFilterPagerUtil.FilterPagerBean + * @see TopiaPagerBean * @since 2.6.12 */ List<E> findAllByQueryAndPager(String hql, - TopiaFilterPagerUtil.FilterPagerBean pager, + TopiaPagerBean pager, Object... params) throws TopiaException; /** @@ -592,18 +592,18 @@ /** * Execute the count {@code hql} query and then synch the pager to this * result (says fill the - * {@link TopiaFilterPagerUtil.FilterPagerBean#records} field and then adapt + * {@link TopiaPagerBean#records} field and then adapt * the number of pages available and the current number page). * * @param hql the count hql to execute * @param pager the page to synch * @param params params of the count query * @throws TopiaException if any pb while getting datas - * @see TopiaFilterPagerUtil.FilterPagerBean + * @see TopiaPagerBean * @since 2.6.12 */ void computeAndAddRecordsToPager(String hql, - TopiaFilterPagerUtil.FilterPagerBean pager, + TopiaPagerBean pager, Object... params) throws TopiaException; //------------------------------------------------------------------------// @@ -661,16 +661,17 @@ TopiaContextImplementor getContext(); /** - * Retourne les permissions a verifier pour l'acces a l'entite pour le - * service Taas. + * Create the simple hql query for the entity managed by the dao. + * <p/> + * A optional alias can be passed: + * <p/> + * <pre>FROM MyEntityImpl myAlias</pre> * - * @param topiaId topiaId d'une entite - * @param actions encoded actions - * @return la liste des permissions - * @throws TopiaException if any pb while getting datas + * @param alias optional alias to use in query + * @return the hql query + * @since 2.6.14 */ - List<Permission> getRequestPermission(String topiaId, int actions) - throws TopiaException; + String createSimpleQuery(String alias); //------------------------------------------------------------------------// //-- Listener methods ----------------------------------------------------// Modified: branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/TopiaDAODeprecated.java =================================================================== --- branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/TopiaDAODeprecated.java 2012-09-13 09:23:35 UTC (rev 2663) +++ branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/TopiaDAODeprecated.java 2012-09-14 09:51:06 UTC (rev 2664) @@ -27,6 +27,7 @@ import org.nuiton.topia.TopiaException; import org.nuiton.topia.framework.TopiaQuery; +import java.security.Permission; import java.util.List; import java.util.Map; @@ -152,4 +153,17 @@ */ @Deprecated int countByQuery(TopiaQuery query) throws TopiaException; + + /** + * Retourne les permissions a verifier pour l'acces a l'entite pour le + * service Taas. + * + * @param topiaId topiaId d'une entite + * @param actions encoded actions + * @return la liste des permissions + * @throws TopiaException if any pb while getting datas + * @deprecated since 2.6.14, {@link TopiaQuery} will be removed in version 3.0 + */ + List<Permission> getRequestPermission(String topiaId, int actions) + throws TopiaException; } Modified: branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/TopiaDAOImpl.java =================================================================== --- branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/TopiaDAOImpl.java 2012-09-13 09:23:35 UTC (rev 2663) +++ branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/TopiaDAOImpl.java 2012-09-14 09:51:06 UTC (rev 2664) @@ -52,7 +52,8 @@ import org.nuiton.topia.event.TopiaEntityVetoable; import org.nuiton.topia.framework.TopiaContextImplementor; import org.nuiton.topia.framework.TopiaQuery; -import org.nuiton.util.PagerUtil; +import org.nuiton.topia.persistence.pager.TopiaPagerBean; +import org.nuiton.util.PagerBeanUtil; import java.io.Serializable; import java.lang.reflect.InvocationTargetException; @@ -198,6 +199,15 @@ return context; } + @Override + public String createSimpleQuery(String alias) { + String hql = "FROM " + getTopiaEntityEnum().getImplementationFQN(); + if (StringUtils.isNotBlank(alias)) { + hql += " " + alias; + } + return hql; + } + @SuppressWarnings("unchecked") @Override public E newInstance() throws TopiaException { @@ -758,7 +768,7 @@ @Override public <R> List<R> findAllByQueryAndPager(Class<R> type, String hql, - TopiaFilterPagerUtil.FilterPagerBean pager, + TopiaPagerBean pager, Object... params) throws TopiaException { Preconditions.checkNotNull(pager); Preconditions.checkNotNull(hql); @@ -770,15 +780,15 @@ } } List<R> result = findAllByQueryWithBound(type, hql, - pager.getRecordStartIndex(), - pager.getRecordEndIndex() - 1, + (int) pager.getRecordStartIndex(), + (int) pager.getRecordEndIndex() - 1, params); return result; } @Override public List<E> findAllByQueryAndPager(String hql, - TopiaFilterPagerUtil.FilterPagerBean pager, + TopiaPagerBean pager, Object... params) throws TopiaException { return findAllByQueryAndPager(getEntityClass(), @@ -789,13 +799,13 @@ @Override public void computeAndAddRecordsToPager(String hql, - TopiaFilterPagerUtil.FilterPagerBean pager, + TopiaPagerBean pager, Object... params) throws TopiaException { long records = countByQuery(hql, params); - pager.setRecords((int) records); - PagerUtil.computeRecordIndexesAndPagesNumber(pager); + pager.setRecords(records); + PagerBeanUtil.computeRecordIndexesAndPagesNumber(pager); } /** @@ -837,7 +847,7 @@ protected final Object[] params; - protected TopiaFilterPagerUtil.FilterPagerBean pager; + protected TopiaPagerBean pager; public FindAllIterator(TopiaDAO<E> dao, Class<R> type, @@ -858,11 +868,12 @@ } // get the count (removing the order-by) - long count2 = dao.countByQuery("SELECT COUNT(*) " + hql.substring(0, i), params); - pager = TopiaFilterPagerUtil.newFilterPagerBean(); - pager.setRecords((int) count2); + long count2 = dao.countByQuery("SELECT COUNT(*) " + + hql.substring(0, i), params); + pager = new TopiaPagerBean(); + pager.setRecords(count2); pager.setPageSize(batchSize); - TopiaFilterPagerUtil.computeRecordIndexesAndPagesNumber(pager); + PagerBeanUtil.computeRecordIndexesAndPagesNumber(pager); } catch (TopiaException e) { throw new TopiaRuntimeException(e); } @@ -889,7 +900,7 @@ // increments page index pager.setPageIndex(pager.getPageIndex() + 1); - TopiaFilterPagerUtil.computeRecordIndexesAndPagesNumber(pager); + PagerBeanUtil.computeRecordIndexesAndPagesNumber(pager); // load new window of data try { Modified: branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/TopiaFilterPagerUtil.java =================================================================== --- branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/TopiaFilterPagerUtil.java 2012-09-13 09:23:35 UTC (rev 2663) +++ branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/TopiaFilterPagerUtil.java 2012-09-14 09:51:06 UTC (rev 2664) @@ -27,6 +27,7 @@ import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.nuiton.topia.framework.TopiaQuery; +import org.nuiton.topia.persistence.pager.TopiaPagerBean; import org.nuiton.util.PagerUtil; import java.io.Serializable; @@ -42,7 +43,9 @@ * * @author tchemit <chemit@codelutin.com> * @since 2.6.9 + * @deprecated since 2.6.14, use now {@link TopiaPagerBean}. */ +@Deprecated public class TopiaFilterPagerUtil extends PagerUtil { protected TopiaFilterPagerUtil() { Added: branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/FilterOperation.java =================================================================== --- branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/FilterOperation.java (rev 0) +++ branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/FilterOperation.java 2012-09-14 09:51:06 UTC (rev 2664) @@ -0,0 +1,152 @@ +package org.nuiton.topia.persistence.pager; + +import java.util.Map; + +/** +* TODO +* +* @author tchemit <chemit@codelutin.com> +* @since 2.6.14 +*/ +public enum FilterOperation { + /** Equals operator. */ + eq { + @Override + public String toHql(String paramName, String propertyName, Object data, Map<String, Object> filterParams) { + String ruleFilter = propertyName + " = :" + paramName; + filterParams.put(paramName, data); + return ruleFilter; + } + }, + /** Not equals operator. */ + ne { + @Override + public String toHql(String paramName, String propertyName, Object data, Map<String, Object> filterParams) { + String ruleFilter = propertyName + " != :" + paramName; + filterParams.put(paramName, data); + return ruleFilter; + } + }, + /** Contains operator. */ + cn { + @Override + public String toHql(String paramName, String propertyName, Object data, Map<String, Object> filterParams) { + String ruleFilter = propertyName + " like :" + paramName; + filterParams.put(paramName, "%" + data + "%"); + return ruleFilter; + } + }, + /** Not contains operator. */ + nc { + @Override + public String toHql(String paramName, String propertyName, Object data, Map<String, Object> filterParams) { + String ruleFilter = propertyName + " not like :" + paramName; + filterParams.put(paramName, "%" + data + "%"); + return ruleFilter; + } + }, + /** Begins with operator. */ + bw { + @Override + public String toHql(String paramName, String propertyName, Object data, Map<String, Object> filterParams) { + String ruleFilter = propertyName + " like :" + paramName; + filterParams.put(paramName, data + "%"); + return ruleFilter; + } + }, + /** Not between with operator. */ + bn { + @Override + public String toHql(String paramName, String propertyName, Object data, Map<String, Object> filterParams) { + String ruleFilter = propertyName + " not like :" + paramName; + filterParams.put(paramName, data + "%"); + return ruleFilter; + } + }, + /** Ends with operator. */ + ew { + @Override + public String toHql(String paramName, String propertyName, Object data, Map<String, Object> filterParams) { + String ruleFilter = propertyName + " like :" + paramName; + filterParams.put(paramName, "%" + data); + return ruleFilter; + } + }, + /** Not End with operator. */ + en { + @Override + public String toHql(String paramName, String propertyName, Object data, Map<String, Object> filterParams) { + String ruleFilter = propertyName + " not like :" + paramName; + filterParams.put(paramName, "%" + data); + return ruleFilter; + } + }, + /** Lesser than operator. */ + lt { + @Override + public String toHql(String paramName, String propertyName, Object data, Map<String, Object> filterParams) { + String ruleFilter = propertyName + " < :" + paramName; + filterParams.put(paramName, data); + return ruleFilter; + } + }, + /** Lesser or equals operator. */ + le { + @Override + public String toHql(String paramName, String propertyName, Object data, Map<String, Object> filterParams) { + String ruleFilter = propertyName + " <= :" + paramName; + filterParams.put(paramName, data); + return ruleFilter; + } + }, + /** Greater than operator. */ + gt { + @Override + public String toHql(String paramName, String propertyName, Object data, Map<String, Object> filterParams) { + String ruleFilter = propertyName + " > :" + paramName; + filterParams.put(paramName, data); + return ruleFilter; + } + }, + /** Greater or equals operator. */ + ge { + @Override + public String toHql(String paramName, String propertyName, Object data, Map<String, Object> filterParams) { + String ruleFilter = propertyName + " >= :" + paramName; + filterParams.put(paramName, data); + return ruleFilter; + } + }, + /** Is null operator. */ + nu { + @Override + public String toHql(String paramName, String propertyName, Object data, Map<String, Object> filterParams) { + String ruleFilter = propertyName + " is null"; + return ruleFilter; + } + }, + /** Is not null operator. */ + nn { + @Override + public String toHql(String paramName, String propertyName, Object data, Map<String, Object> filterParams) { + String ruleFilter = propertyName + " is not null"; + return ruleFilter; + } + }, + /** Is among operator. */ + in { + @Override + public String toHql(String paramName, String propertyName, Object data, Map<String, Object> filterParams) { + throw new UnsupportedOperationException(); + } + }, + /** Not is among operator. */ + ni { + @Override + public String toHql(String paramName, String propertyName, Object data, Map<String, Object> filterParams) { + throw new UnsupportedOperationException(); + } + }; + + public abstract String toHql(String paramName, String propertyName, Object data, Map<String, Object> filterParams); +} Property changes on: branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/FilterOperation.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Added: branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/FilterOperationGroup.java =================================================================== --- branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/FilterOperationGroup.java (rev 0) +++ branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/FilterOperationGroup.java 2012-09-14 09:51:06 UTC (rev 2664) @@ -0,0 +1,11 @@ +package org.nuiton.topia.persistence.pager; + +/** +* TODO +* +* @author tchemit <chemit@codelutin.com> +* @since 2.6.14 +*/ +public enum FilterOperationGroup { + OR, AND +} Property changes on: branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/FilterOperationGroup.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Added: branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/FilterRule.java =================================================================== --- branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/FilterRule.java (rev 0) +++ branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/FilterRule.java 2012-09-14 09:51:06 UTC (rev 2664) @@ -0,0 +1,38 @@ +package org.nuiton.topia.persistence.pager; + +import java.io.Serializable; + +/** + * TODO + * + * @author tchemit <chemit@codelutin.com> + * @since 2.6.14 + */ +public class FilterRule implements Serializable { + + private static final long serialVersionUID = 1L; + + protected final FilterOperation op; + + protected final String field; + + protected final String data; + + public FilterRule(FilterOperation op, String field, String data) { + this.op = op; + this.field = field; + this.data = data; + } + + public FilterOperation getOp() { + return op; + } + + public String getField() { + return field; + } + + public String getData() { + return data; + } +} Property changes on: branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/FilterRule.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Added: branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/TopiaPagerBean.java =================================================================== --- branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/TopiaPagerBean.java (rev 0) +++ branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/TopiaPagerBean.java 2012-09-14 09:51:06 UTC (rev 2664) @@ -0,0 +1,64 @@ +package org.nuiton.topia.persistence.pager; + +import org.apache.commons.collections.CollectionUtils; +import org.nuiton.util.PagerBean; + +import java.util.List; + +/** + * Extension of a {@link PagerBean} to add filter capacity. + * + * @author tchemit <chemit@codelutin.com> + * @since 2.6.14 + */ +public class TopiaPagerBean extends PagerBean { + + private static final long serialVersionUID = 1L; + + // sorting order - asc or desc + protected boolean sortAscendant; + + // get index row - i.e. user click to sort. + protected String sortColumn; + + protected FilterOperationGroup groupOp; + + private List<FilterRule> rules; + + public boolean canFilter() { + return groupOp != null && CollectionUtils.isNotEmpty(rules); + } + + public FilterOperationGroup getGroupOp() { + return groupOp; + } + + public void setGroupOp(FilterOperationGroup groupOp) { + this.groupOp = groupOp; + } + + public List<FilterRule> getRules() { + return rules; + } + + public void setRules(List<FilterRule> rules) { + this.rules = rules; + } + + public boolean isSortAscendant() { + return sortAscendant; + } + + public void setSortAscendant(boolean sortAscendant) { + this.sortAscendant = sortAscendant; + } + + public String getSortColumn() { + return sortColumn; + } + + public void setSortColumn(String sortColumn) { + this.sortColumn = sortColumn; + } + +} \ No newline at end of file Property changes on: branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/TopiaPagerBean.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Added: branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/TopiaPagerBeanBuilder.java =================================================================== --- branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/TopiaPagerBeanBuilder.java (rev 0) +++ branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/TopiaPagerBeanBuilder.java 2012-09-14 09:51:06 UTC (rev 2664) @@ -0,0 +1,78 @@ +package org.nuiton.topia.persistence.pager; + +import java.util.Collection; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; + +/** + * To build a {@link TopiaPagerBean} from scratch. + * + * @author tchemit <chemit@codelutin.com> + * @since 2.6.14 + */ +public class TopiaPagerBeanBuilder { + + protected final TopiaPagerBean bean; + + public TopiaPagerBeanBuilder() { + this(new TopiaPagerBean()); + } + + public TopiaPagerBeanBuilder(TopiaPagerBean bean) { + this.bean = bean; + } + + public TopiaPagerBeanBuilder setFilterOperationGroup(FilterOperationGroup groupOp) { + bean.setGroupOp(groupOp); + return this; + } + + public TopiaPagerBeanBuilder setSortcolumn(String sortColumn) { + bean.setSortColumn(sortColumn); + return this; + } + + public TopiaPagerBeanBuilder setSortAscendant(boolean sortAscendant) { + bean.setSortAscendant(sortAscendant); + return this; + } + + public TopiaPagerBeanBuilder setFilterOperationGroup(String groupOp) { + setFilterOperationGroup(FilterOperationGroup.valueOf(groupOp)); + return this; + } + + public TopiaPagerBeanBuilder addOperations(Collection<Map<String, String>> operations) { + for (Map<String, String> operation : operations) { + addRule(operation); + } + return this; + } + + public TopiaPagerBeanBuilder addRule(String op, String property, String value) { + FilterOperation operator = FilterOperation.valueOf(op); + return addRule(new FilterRule(operator, property, value)); + } + + public TopiaPagerBeanBuilder addRule(Map<String, String> ruleMap) { + String op = ruleMap.get("op"); + String property = ruleMap.get("field"); + String value = ruleMap.get("data"); + return addRule(op, property, value); + } + + public TopiaPagerBeanBuilder addRule(FilterRule rule) { + List<FilterRule> rules = bean.getRules(); + if (rules == null) { + rules = new LinkedList<FilterRule>(); + bean.setRules(rules); + } + rules.add(rule); + return this; + } + + public TopiaPagerBean toBean() { + return bean; + } +} Property changes on: branches/topia-2.6.x/topia-persistence/src/main/java/org/nuiton/topia/persistence/pager/TopiaPagerBeanBuilder.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native
participants (1)
-
tchemit@users.nuiton.org