*/\r
package eu.etaxonomy.cdm.model.common;\r
\r
-import java.util.HashSet;\r
import java.util.Iterator;\r
-import java.util.List;\r
import java.util.NoSuchElementException;\r
import java.util.Set;\r
import java.util.SortedSet;\r
* @param label\r
* @param termSourceUri\r
*/\r
- public OrderedTermVocabulary(String term, String label, String termSourceUri) {\r
- super(term, label, termSourceUri);\r
+ public OrderedTermVocabulary(String term, String label, String labelAbbrev, String termSourceUri) {\r
+ super(term, label, labelAbbrev, termSourceUri);\r
}\r
\r
@Override\r
protected Set<T> getNewTermSet(){\r
return new TreeSet<T>();\r
}\r
+\r
+ @Transient\r
+ public SortedSet<T> getOrderedTerms(T otb) {\r
+ SortedSet<T> result = new TreeSet<T>();\r
+ result.addAll(terms);\r
+ return result;\r
+ }\r
\r
@Transient\r
public SortedSet<T> getHigherAndEqualTerms(T otb) {\r
SortedSet<T> result = new TreeSet<T>();\r
- result.addAll( ((SortedSet<T>)terms).tailSet(otb));\r
+ SortedSet<T> sortedSet = new TreeSet<T>();\r
+ sortedSet.addAll(terms);\r
+ result.addAll( sortedSet.tailSet(otb));\r
return result;\r
}\r
@Transient\r
@Transient\r
public SortedSet<T> getLowerAndEqualTerms(T otb) {\r
SortedSet<T> result = new TreeSet<T>();\r
- result.addAll( ((SortedSet<T>)terms).headSet(otb));\r
+ SortedSet<T> sortedSet = new TreeSet<T>();\r
+ sortedSet.addAll(terms);\r
+ result.addAll( sortedSet.headSet(otb));\r
return result;\r
}\r
\r
@Transient\r
public T getLowestTerm() {\r
try {\r
- SortedSet<T> sortedSet = new TreeSet();\r
+ SortedSet<T> sortedSet = new TreeSet<T>();\r
sortedSet.addAll(terms);\r
return sortedSet.first();\r
//return ((SortedSet<T>)terms).first();\r
@Transient\r
public T getHighestTerm() {\r
try {\r
- return ((SortedSet<T>)terms).last();\r
+ SortedSet<T> sortedSet = new TreeSet<T>();\r
+ sortedSet.addAll(terms);\r
+ return sortedSet.last();\r
} catch (NoSuchElementException e) {\r
return null;\r
}\r