Class 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.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ServiceFactory

        public ServiceFactory()
    • 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. Die Funktion liefert niemals null. Entweder der Service wird gefunden und zurueckgeliefert oder es wird eine Exception geworfen.
        Parameters:
        pluginClass - Klasse des Plugins, fuer welches der Service geladen werden soll.
        serviceName - Name des Service.
        Returns:
        die Instanz des Services.
        Throws:
        java.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.