net.ontopia.topicmaps.utils
Class ScopedIFComparator
java.lang.Object
net.ontopia.topicmaps.utils.ScopedIFComparator
- All Implemented Interfaces:
- java.util.Comparator
- Direct Known Subclasses:
- BaseNameComparator, TopicNameComparator
public class ScopedIFComparator
- extends java.lang.Object
- implements java.util.Comparator
INTERNAL: Comparator that compares ScopedIF objects based on their
applicability in the specified scope.
This comparator may only be used with objects that are
implementations of ScopedIF. The default subcomparator is
LexicalComparator.CASE_SENSITIVE.
Technique:
- Compare the number of matching themes for each of the objects. The
more matching themes, the higher ranked.
- Compare by number of themes specified on objects. The fewer
themes, the higher ranked.
- If subcomparator doesn't exist they're ranked equally.
- Use subcomparator to compare them.
Method Summary |
int |
compare(java.lang.Object obj1,
java.lang.Object obj2)
INTERNAL: Compares the two ScopedIF objects for their applicability
in the scope specified in the constructor. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface java.util.Comparator |
equals |
scope
protected TopicIF[] scope
subcomparator
protected java.util.Comparator subcomparator
ScopedIFComparator
public ScopedIFComparator()
ScopedIFComparator
public ScopedIFComparator(java.util.Collection scope)
ScopedIFComparator
public ScopedIFComparator(java.util.Collection scope,
java.util.Comparator subcomparator)
compare
public int compare(java.lang.Object obj1,
java.lang.Object obj2)
- INTERNAL: Compares the two ScopedIF objects for their applicability
in the scope specified in the constructor.
- Specified by:
compare
in interface java.util.Comparator
- Parameters:
obj1
- An object implementing ScopedIF.obj2
- An object implementing ScopedIF.
- Returns:
- See
Comparator.compare(Object,Object)
Copyright © 2000-2012 Ontopia.