Class ReasonerRegistry
- java.lang.Object
-
- net.ssehub.easy.reasoning.core.impl.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
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.ArrayList<IMessageListener>listenerprivate java.util.ArrayList<IReasoner>reasonerprivate static ReasonerRegistryreasonerRegistry
-
Constructor Summary
Constructors Modifier Constructor Description privateReasonerRegistry()Avoids multiple instantiation of this singleton class.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description IReasonerfindReasoner(java.lang.String name, java.lang.String version)Returns the first version with givennameandversion.IReasonerfindReasoner(ReasonerDescriptor descriptor)Returns the reasoner which provides the givendescriptor.static ReasonerRegistrygetInstance()Singleton access for this class.IReasonergetReasoner(int index)Returns theIReasonerat the specified position in this list.intgetReasonerCount()Returns the number of registered reasoners.voidnotifyAllReasoners(IReasoner source, IReasonerMessage.IType type)Notifies all reasoners about a given event.voidregister(IMessageListener listener)Registers a message listener.voidregister(IReasoner reasoner)Adds a new Reasoner to the registry.voidunregister(IMessageListener listener)Unregisters a message listener.voidunregister(IReasoner reasoner)Removes the specified reasoner from the registry, if the reasoner was added before.
-
-
-
Field Detail
-
reasonerRegistry
private static ReasonerRegistry reasonerRegistry
-
reasoner
private java.util.ArrayList<IReasoner> reasoner
-
listener
private java.util.ArrayList<IMessageListener> listener
-
-
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:IReasonerRegistryAdds a new Reasoner to the registry.- Specified by:
registerin interfaceIReasonerRegistry- Parameters:
reasoner- The Reasoner which should be added to the registry.
-
unregister
public void unregister(IReasoner reasoner)
Description copied from interface:IReasonerRegistryRemoves the specified reasoner from the registry, if the reasoner was added before.- Specified by:
unregisterin interfaceIReasonerRegistry- 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
-
notifyAllReasoners
public void notifyAllReasoners(IReasoner source, IReasonerMessage.IType type)
Description copied from interface:IReasonerRegistryNotifies all reasoners about a given event.- Specified by:
notifyAllReasonersin interfaceIReasonerRegistry- Parameters:
source- the reasoner causing the eventtype- the type of the event
-
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 theIReasonerat the specified position in this list.- Parameters:
index- index of theIReasonerto return- Returns:
IReasonerat 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 givendescriptor.- 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 givennameandversion.- Parameters:
name- the name of the reasoner as given in its descriptorversion- the version of the reasoner as given in its descriptor (ignored if null)- Returns:
- the first reasoner matching the criteria or null
-
-