Class ReasonerRegistry

  • All Implemented Interfaces:
    IReasonerRegistry

    public class ReasonerRegistry
    extends java.lang.Object
    implements IReasonerRegistry
    A class for registering installed reasoners.
    Author:
    Patrick Jähne, Holger Eichelberger
    • Constructor Detail

      • ReasonerRegistry

        private ReasonerRegistry()
        Avoids multiple instantiation of this singleton class.
    • Method Detail

      • getInstance

        public static ReasonerRegistry getInstance()
        Singleton access for this class.
        Returns:
        The singleton instance of this class.
      • register

        public void register​(IReasoner reasoner)
        Description copied from interface: IReasonerRegistry
        Adds a new Reasoner to the registry.
        Specified by:
        register in interface IReasonerRegistry
        Parameters:
        reasoner - The Reasoner which should be added to the registry.
      • unregister

        public void unregister​(IReasoner reasoner)
        Description copied from interface: IReasonerRegistry
        Removes the specified reasoner from the registry, if the reasoner was added before.
        Specified by:
        unregister in interface IReasonerRegistry
        Parameters:
        reasoner - The reasoner which should be removed from the registry.
      • register

        public void register​(IMessageListener listener)
        Registers a message listener.
        Parameters:
        listener - the listener to register
      • unregister

        public void unregister​(IMessageListener listener)
        Unregisters a message listener.
        Parameters:
        listener - the listener to unregister
      • getReasonerCount

        public int getReasonerCount()
        Returns the number of registered reasoners.
        Returns:
        The number of reasoners registered to this registry
      • getReasoner

        public IReasoner getReasoner​(int index)
        Returns the IReasoner at the specified position in this list.
        Parameters:
        index - index of the IReasoner to return
        Returns:
        IReasoner at the specified position in this list
        Throws:
        java.lang.IndexOutOfBoundsException - if the index is out of range (index < 0 || index >= getReasonerCount() )
      • findReasoner

        public IReasoner findReasoner​(ReasonerDescriptor descriptor)
        Returns the reasoner which provides the given descriptor.
        Parameters:
        descriptor - the descriptor to search for
        Returns:
        the reasoner or null if none matches
      • findReasoner

        public IReasoner findReasoner​(java.lang.String name,
                                      java.lang.String version)
        Returns the first version with given name and version.
        Parameters:
        name - the name of the reasoner as given in its descriptor
        version - the version of the reasoner as given in its descriptor (ignored if null)
        Returns:
        the first reasoner matching the criteria or null