Package de.willuhn.jameica.system
Class ServiceFactory
- java.lang.Object
-
- de.willuhn.jameica.system.ServiceFactory
-
public final class ServiceFactory extends java.lang.Object
Diese 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.String
getLookupHost(java.lang.Class pluginclass, java.lang.String serviceName)
Liefert den Host, auf dem nach diesem Service gesucht werden soll.int
getLookupPort(java.lang.Class pluginclass, java.lang.String serviceName)
Liefert den TCP-Port, auf dem nach diesem Service gesucht werden soll.void
init(Manifest manifest)
Initialisiert die Services eines Plugins.de.willuhn.datasource.Service
lookup(java.lang.Class pluginClass, java.lang.String serviceName)
Liefert den genannten Service des uebergebenen Plugins.void
setLookup(java.lang.Class pluginclass, java.lang.String serviceName, java.lang.String host, int port)
Speichert Host und Port fuer genannten Service.void
shutDown()
Faehrt die Services runter.void
shutDown(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.Exception
Liefert 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
null
wenn 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
-1
wenn nicht definiert.
-
-