r17 - in trunk: . vradi-services/src/main/java/org/chorem/vradi/services/managers
Author: sletellier Date: 2011-05-03 19:57:05 +0200 (Tue, 03 May 2011) New Revision: 17 Url: http://chorem.org/repositories/revision/vradi/17 Log: - Up to wikitty 2.1.1 - Fix search like ext.field="" Modified: trunk/pom.xml trunk/vradi-services/src/main/java/org/chorem/vradi/services/managers/SearchManager.java Modified: trunk/pom.xml =================================================================== --- trunk/pom.xml 2011-05-03 14:03:22 UTC (rev 16) +++ trunk/pom.xml 2011-05-03 17:57:05 UTC (rev 17) @@ -115,7 +115,7 @@ <nuitonI18nVersion>2.3.2</nuitonI18nVersion> <nuitonWidgetVersion>1.1.1</nuitonWidgetVersion> <generatorPluginVersion>2.3.3</generatorPluginVersion> - <wikittyVersion>3.1</wikittyVersion> + <wikittyVersion>3.1.1-SNAPSHOT</wikittyVersion> <oooVersion>3.2.1</oooVersion> <javamailVersion>1.4.3</javamailVersion> <slf4jVersion>1.6.1</slf4jVersion> Modified: trunk/vradi-services/src/main/java/org/chorem/vradi/services/managers/SearchManager.java =================================================================== --- trunk/vradi-services/src/main/java/org/chorem/vradi/services/managers/SearchManager.java 2011-05-03 14:03:22 UTC (rev 16) +++ trunk/vradi-services/src/main/java/org/chorem/vradi/services/managers/SearchManager.java 2011-05-03 17:57:05 UTC (rev 17) @@ -110,6 +110,10 @@ private static final Pattern formIdPattern = Pattern.compile("^[0-9]{4}-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])([a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12})$"); + /** Match ext.field. */ + private static final Pattern extFieldPattern = + Pattern.compile("^(.+)//.(.+)$"); + /** Alias pour {@link ModificationTag#FIELD_MODIFICATIONTAG_LASTMODIFIER}. */ public static final String ALIAS_LAST_MODIFIER = "modificateur"; @@ -160,6 +164,8 @@ } criteria.addSortAscending(Form.FQ_FIELD_INFOGENE_ID); + log.info(criteria); + //finds the forms PagedResult<Form> queryResult = wikittyProxy.findAllByCriteria(Form.class, criteria); if (log.isDebugEnabled()) { @@ -510,6 +516,11 @@ Search subSearch = search.or(); + // To allow find field with synthax like ext.field="" + if (name.indexOf(".") == -1) { + name = Criteria.ALL_EXTENSIONS + Criteria.SEPARATOR + name; + } + // a confirmer, mais l'explication doit être : // - si c'est not, ca doit ne pas être la date en question // - sinon, ca doit être compris entre le début et la fin du jour @@ -521,8 +532,7 @@ Date time = frenchDateFormat.parse(value); String timeString = WikittyUtil.formatDate(time); - subSearch.eq(Criteria.ALL_EXTENSIONS + Criteria.SEPARATOR - + name + Criteria.SEPARATOR + subSearch.eq(name + Criteria.SEPARATOR + Element.ElementType.DATE, timeString); } catch (ParseException e) { @@ -544,8 +554,7 @@ String beginString = WikittyUtil.formatDate(beginDate); String endString = WikittyUtil.formatDate(endDate); - subSearch.bw(Criteria.ALL_EXTENSIONS + Criteria.SEPARATOR - + name + Criteria.SEPARATOR + subSearch.bw(name + Criteria.SEPARATOR + Element.ElementType.DATE, beginString, endString); } catch (ParseException e) { @@ -557,33 +566,29 @@ } // text search - subSearch.like(Criteria.ALL_EXTENSIONS + Criteria.SEPARATOR - + name + Criteria.SEPARATOR + subSearch.like(name + Criteria.SEPARATOR + Element.ElementType.STRING, value, Like.SearchAs.AsText); // boolean search if (compareFilter.isBoolean()) { - subSearch.eq(Criteria.ALL_EXTENSIONS + Criteria.SEPARATOR - + name + Criteria.SEPARATOR + subSearch.eq(name + Criteria.SEPARATOR + Element.ElementType.BOOLEAN, value); // number search } else if (compareFilter.isNumber()) { - subSearch.eq(Criteria.ALL_EXTENSIONS + Criteria.SEPARATOR - + name + Criteria.SEPARATOR + subSearch.eq(name + Criteria.SEPARATOR + Element.ElementType.NUMERIC, value); // extension id search (eq) } else if (compareFilter.match(formIdPattern)) { - subSearch.eq(Criteria.ALL_EXTENSIONS + Criteria.SEPARATOR - + name + Criteria.SEPARATOR + subSearch.eq(name + Criteria.SEPARATOR + Element.ElementType.STRING, value); // extension id search (ew) } else if (compareFilter.match(uuidPattern)) { - subSearch.ew(Criteria.ALL_EXTENSIONS + Criteria.SEPARATOR - + name + Criteria.SEPARATOR + subSearch.ew(name + Criteria.SEPARATOR + Element.ElementType.STRING, value); + } }
participants (1)
-
sletellier@users.chorem.org