Détail du message 45551.4

Message numéro 4 dans le sujet Notifications personnalisées.

  • 45551.4

    20/10/2011 11:12


    Gaël Port
    Titre : Développeur RBS Change
    Rang : Expert
    C'est une des possibilités.

    Mais dans le cadre d'un service (qu'il soit lié ou non à un document), il est possible de "l'injecter" sans passer par là. Pour cela il suffit de créer un nouveau service qui étend celui que l'on veut injecter et déclarer l'injection dans le fichier project.xml :
    <project>
      <config>
       <injection>
         <entry name="notification_NotificationService">monmodule_MonNotificationService</entry>
       </injection>
    </project>
    Cette forme d'injection est prise en compte au moment du getInstance sur le service qui renvoie une instance du nouveau service à la place.

    Il y a du coup un point important dont il faut être conscient c'est que cette forme d'injection ne fait pas de remplacement de code, donc un autre service qui étendrait notification_NotificationService ne sera pas affecté par cette injection (au contraire de ce qui se passe lors d'une injection de document ou d'un remplacement de classe via l'AOP).



    Pour info, dans la future version 4.0, ces notions seront unifiées pour fonctionner toutes de la même manière en se basant sur la même mécanique de remplacement de code que pour l'injection de documents.
 
1359 membres
Aucun membre connecté