Package de.willuhn.jameica.system
Class ServiceFactory
- java.lang.Object
-
- de.willuhn.jameica.system.ServiceFactory
-
public final class ServiceFactory extends java.lang.ObjectDiese Klasse stellt alle von Plugins genutzen Services zur Verfuegung. Insbesondere sind das die Datenbank-Anbindungen. Wird die Anwendung im Server-Mode gestartet, dann werden alle Services via RMI in Netz zur Verfuegung gestellt. Andernfalls nur lokal.
-
-
Constructor Summary
Constructors Constructor Description ServiceFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringgetLookupHost(java.lang.Class pluginclass, java.lang.String serviceName)Liefert den Host, auf dem nach diesem Service gesucht werden soll.intgetLookupPort(java.lang.Class pluginclass, java.lang.String serviceName)Liefert den TCP-Port, auf dem nach diesem Service gesucht werden soll.voidinit(Manifest manifest)Initialisiert die Services eines Plugins.de.willuhn.datasource.Servicelookup(java.lang.Class pluginClass, java.lang.String serviceName)Liefert den genannten Service des uebergebenen Plugins.voidsetLookup(java.lang.Class pluginclass, java.lang.String serviceName, java.lang.String host, int port)Speichert Host und Port fuer genannten Service.voidshutDown()Faehrt die Services runter.voidshutDown(Plugin plugin)Faehrt die Services des angegebenen Plugins runter.
-
-
-
Method Detail
-
init
public void init(Manifest manifest) throws de.willuhn.util.ApplicationException
Initialisiert die Services eines Plugins.- Parameters:
manifest- das Manifest des Plugins.- Throws:
de.willuhn.util.ApplicationException
-
lookup
public de.willuhn.datasource.Service lookup(java.lang.Class pluginClass, java.lang.String serviceName) throws java.lang.ExceptionLiefert den genannten Service des uebergebenen Plugins.- Parameters:
pluginClass- Klasse des Plugins, fuer welches der Service geladen werden soll.serviceName- Name des Service.- Returns:
- die Instanz des Services.
- Throws:
de.willuhn.util.ApplicationException- falls Service nicht gefunden werden konntejava.rmi.RemoteException- falls kein Zugriff auf Service via RMI moeglichjava.lang.Exception
-
shutDown
public void shutDown(Plugin plugin)
Faehrt die Services des angegebenen Plugins runter.- Parameters:
plugin- das Plugin, fuer das die Services beendet werden sollen.
-
shutDown
public void shutDown()
Faehrt die Services runter.Beendet werden hierbei nur die lokal gestarteten Services, nicht remote verbundene.
-
setLookup
public void setLookup(java.lang.Class pluginclass, java.lang.String serviceName, java.lang.String host, int port)Speichert Host und Port fuer genannten Service.- Parameters:
pluginclass- Klasse des Plugins.serviceName- Name des Service.host- Host (IP oder Hostname).port- TCP-Port.
-
getLookupHost
public java.lang.String getLookupHost(java.lang.Class pluginclass, java.lang.String serviceName)Liefert den Host, auf dem nach diesem Service gesucht werden soll.- Parameters:
pluginclass- Klasse des Plugins.serviceName- Name des gesuchten Service.- Returns:
- Hostname, auf dem sich der Service befindet oder
nullwenn nicht definiert.
-
getLookupPort
public int getLookupPort(java.lang.Class pluginclass, java.lang.String serviceName)Liefert den TCP-Port, auf dem nach diesem Service gesucht werden soll.- Parameters:
pluginclass- Klasse des Plugins.serviceName- Name des gesuchten Service.- Returns:
- TCP-Port, auf dem sich der Service befindet oder
-1wenn nicht definiert.
-
-