Class BeanService

  • All Implemented Interfaces:
    de.willuhn.boot.Bootable

    public class BeanService
    extends java.lang.Object
    implements de.willuhn.boot.Bootable
    Ein Service, ueber den Beans instanziiert werden. Er unterstuetzt die Annoations Lifecycle, Resource, PostConstruct und PreDestroy. Ist die Bean mit der Annotation Lifecycle versehen, gilt: - Lifecycle.Type.CONTEXT: Die Bean wird nur einmal instanziiert und existiert ueber die gesamte Lebensdauer des BeanService - also ueber die gesamte Laufzeit der Jameica-Instanz - Lifecycle.Type.REQUEST: Die Bean besitzt keinen Lifecycle - mit jedem Aufruf wird eine neue Instanz erzeugt. - Lifecycle.Type.SESSION: Die Bean besitzt eine Lebensdauer von 30 Minuten. Ist eine Member-Variable oder Methode mit der Annotation Resource versehen, wird sie ueber den BeanService bei der Instanziierung der Bean aufgeloest. Enthaelt die Bean die Annotation PostConstruct, wird die zugehoerige Methode bei der Instanziierung aufgerufen. Die Annotation PreDestroy wird nur bei Beans mit CONTEXT-Lifecycle beruecksichtigt. Der Aufruf der mit dieser Annotation versehenen Funktion erfolgt beim Beenden von Jameica.
    • Constructor Summary

      Constructors 
      Constructor Description
      BeanService()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addInjectHandler​(InjectHandler handler)
      Registriert einen Inject-Handler.
      java.lang.Class<de.willuhn.boot.Bootable>[] depends()  
      <T> T get​(java.lang.Class<T> type)
      Liefert eine Instanz der angegebenen Bean.
      void init​(de.willuhn.boot.BootLoader loader, de.willuhn.boot.Bootable caller)  
      void inject​(java.lang.Object bean)
      Injiziert die Abhaengigkeiten in die Bean.
      void shutdown()  
      • Methods inherited from class java.lang.Object

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

      • BeanService

        public BeanService()
    • Method Detail

      • depends

        public java.lang.Class<de.willuhn.boot.Bootable>[] depends()
        Specified by:
        depends in interface de.willuhn.boot.Bootable
        See Also:
        Bootable.depends()
      • init

        public void init​(de.willuhn.boot.BootLoader loader,
                         de.willuhn.boot.Bootable caller)
                  throws de.willuhn.boot.SkipServiceException
        Specified by:
        init in interface de.willuhn.boot.Bootable
        Throws:
        de.willuhn.boot.SkipServiceException
        See Also:
        Bootable.init(de.willuhn.boot.BootLoader, de.willuhn.boot.Bootable)
      • addInjectHandler

        public void addInjectHandler​(InjectHandler handler)
        Registriert einen Inject-Handler.
        Parameters:
        handler - der zu registrierende Handler.
      • get

        public <T> T get​(java.lang.Class<T> type)
        Liefert eine Instanz der angegebenen Bean.
        Type Parameters:
        T - Typ der Bean.
        Parameters:
        type - Typ der Bean.
        Returns:
        die Instanz der Bean. Wenn die Bean mit der Lifecycle Annotation versehen ist, wird diese beruecksichtigt.
      • inject

        public void inject​(java.lang.Object bean)
                    throws JameicaException
        Injiziert die Abhaengigkeiten in die Bean.
        Parameters:
        bean - die Bean.
        Throws:
        JameicaException - wenn beim Injezieren der Dependencies etwas schief ging.
      • shutdown

        public void shutdown()
        Specified by:
        shutdown in interface de.willuhn.boot.Bootable
        See Also:
        Bootable.shutdown()