Class TopicVariantNameGrabber

  • All Implemented Interfaces:
    Function<TopicIF,​VariantNameIF>

    public class TopicVariantNameGrabber
    extends Object
    implements Function<TopicIF,​VariantNameIF>
    INTERNAL: Grabber that grabs the most highest ranked variant name by scope from a topic, ignoring the scope of the base names.

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

    Since:
    2.0.3
    • Field Detail

      • comparator

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

      • TopicVariantNameGrabber

        public TopicVariantNameGrabber​(Collection<TopicIF> scope)
        INTERNAL: Creates a grabber.
        Parameters:
        scope - A scope; a collection of TopicIF objects.
      • TopicVariantNameGrabber

        public TopicVariantNameGrabber​(Comparator<? super VariantNameIF> comparator)
        INTERNAL: Creates a grabber which uses the given comparator.
        Parameters:
        comparator - The given comparator
    • Method Detail

      • apply

        public VariantNameIF apply​(TopicIF topic)
        INTERNAL: Grabs the most appropriate variant name for the given topic name, using the comparator established at creation to compare available variant names.
        Specified by:
        apply in interface Function<TopicIF,​VariantNameIF>
        Parameters:
        topic - an object, but must implement TopicIF
        Returns:
        the most applicable variant name, or null.