net.ontopia.topicmaps.utils
Class VariantNameGrabber

java.lang.Object
  extended by net.ontopia.topicmaps.utils.VariantNameGrabber
All Implemented Interfaces:
GrabberIF

public class VariantNameGrabber
extends java.lang.Object
implements GrabberIF

INTERNAL: Grabber that grabs the most highest ranked variant name by scope from a basename.

The grabber uses a ScopedIFComparator internally to rank the variant names of the given basename. If the basename has no applicable variant names, null is returned.


Constructor Summary
VariantNameGrabber(java.util.Collection scope)
          INTERNAL: Creates a grabber; makes the comparator a ScopedIFComparator for the given scope.
VariantNameGrabber(java.util.Comparator comparator)
          INTERNAL: Creates a grabber which uses the given comparator.
 
Method Summary
 java.lang.Object grab(java.lang.Object basename)
          INTERNAL: Grabs the most appropriate variant name for the given base name, using the comparator established at creation to compare available variant names.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

VariantNameGrabber

public VariantNameGrabber(java.util.Collection scope)
INTERNAL: Creates a grabber; makes the comparator a ScopedIFComparator for the given scope.

Parameters:
scope - A scope; a collection of TopicIF objects.

VariantNameGrabber

public VariantNameGrabber(java.util.Comparator comparator)
INTERNAL: Creates a grabber which uses the given comparator.

Parameters:
comparator - The given comparator
Method Detail

grab

public java.lang.Object grab(java.lang.Object basename)
INTERNAL: Grabs the most appropriate variant name for the given base name, using the comparator established at creation to compare available variant names.

Specified by:
grab in interface GrabberIF
Parameters:
basename - an object, but must implement TopicNameIF.
Returns:
the most applicable variant name, or null.
Throws:
throws - OntopiaRuntimeException if the given base name is not a TopicNameIF object.


Copyright © 2000-2010 Ontopia.