Author: bpoussin Date: 2012-03-11 18:21:28 +0100 (Sun, 11 Mar 2012) New Revision: 1453 Url: http://nuiton.org/repositories/revision/wikitty/1453 Log: add tag value direct accessor Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/entities/WikittyExtension.java Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/entities/WikittyExtension.java =================================================================== --- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/entities/WikittyExtension.java 2012-03-10 16:21:17 UTC (rev 1452) +++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/entities/WikittyExtension.java 2012-03-11 17:21:28 UTC (rev 1453) @@ -392,7 +392,71 @@ this.tagValues = tagValues; getPropertyChangeSupport().firePropertyChange("tagValues", oldValue, tagValues); } + + public boolean hasTagValueToString() { + boolean result = StringUtils.isNotBlank(getTagValueToString()); + return result; + } + + public String getTagValueToString() { + String result = getTagValue(WikittyTagValue.TAG_TO_STRING); + return result; + } + public boolean hasTagValueSortOrder() { + boolean result = StringUtils.isNotBlank(getTagValueSortOrder()); + return result; + } + + public String getTagValueSortOrder() { + String result = getTagValue(WikittyTagValue.TAG_SORT_ORDER); + return result; + } + + /** + * Retourne la liste des champs a trier de facon ascendante + * @return une liste contenant les champs de tri ou une liste vide + */ + public List<Element> getSortAscending() { + List<Element> result = new ArrayList<Element>(); + String sortOrder = getTagValueSortOrder(); + String[] orders = StringUtils.split(sortOrder, ","); + if (orders != null) { + for (String order : orders) { + String s = StringUtils.substringAfterLast(order, " "); + s = StringUtils.trim(s); + if (StringUtils.isBlank(s) || StringUtils.equalsIgnoreCase("asc", s)) { + String field = StringUtils.substringBefore(order, " "); + field = StringUtils.trim(field); + result.add(Element.get(field)); + } + } + } + return result; + } + + /** + * Retourne la liste des champs a trier de facon descendante + * @return une liste contenant les champs de tri ou une liste vide + */ + public List<Element> getSortDescending() { + List<Element> result = new ArrayList<Element>(); + String sortOrder = getTagValueSortOrder(); + String[] orders = StringUtils.split(sortOrder, ","); + if (orders != null) { + for (String order : orders) { + String s = StringUtils.substringAfterLast(order, " "); + s = StringUtils.trim(s); + if (StringUtils.equalsIgnoreCase("desc", s)) { + String field = StringUtils.substringBefore(order, " "); + field = StringUtils.trim(field); + result.add(Element.get(field)); + } + } + } + return result; + } + @Override public boolean equals(Object obj) { boolean result = false;
participants (1)
-
bpoussin@users.nuiton.org