net.ontopia.topicmaps.utils
Class VariantNameGrabber

java.lang.Object
  extended by net.ontopia.topicmaps.utils.VariantNameGrabber
All Implemented Interfaces:
GrabberIF<TopicNameIF,VariantNameIF>

public class VariantNameGrabber
extends Object
implements GrabberIF<TopicNameIF,VariantNameIF>

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.


Field Summary
protected  Comparator<? super VariantNameIF> comparator
          PROTECTED: The comparator used to sort the variant names.
 
Constructor Summary
VariantNameGrabber(Collection<TopicIF> scope)
          INTERNAL: Creates a grabber; makes the comparator a ScopedIFComparator for the given scope.
VariantNameGrabber(Comparator<? super VariantNameIF> comparator)
          INTERNAL: Creates a grabber which uses the given comparator.
 
Method Summary
 VariantNameIF grab(TopicNameIF 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
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

comparator

protected Comparator<? super VariantNameIF> comparator
PROTECTED: The comparator used to sort the variant names.

Constructor Detail

VariantNameGrabber

public VariantNameGrabber(Collection<TopicIF> 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(Comparator<? super VariantNameIF> comparator)
INTERNAL: Creates a grabber which uses the given comparator.

Parameters:
comparator - The given comparator
Method Detail

grab

public VariantNameIF grab(TopicNameIF 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<TopicNameIF,VariantNameIF>
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-2012 Ontopia.