Objets Abonnement d'événement et Evénement COM+

De RAD Studio
Aller à : navigation, rechercher

Remonter à Principes de COM - Index


Le système d'événements COM+ présente une couche logicielle intermédiaire qui sépare les applications générant des événements (appelées éditeurs de logiciels) des applications répondant aux événements (appelées abonnés). Au lieu d'être étroitement liés les uns aux autres, les éditeurs de logiciels et les abonnés peuvent être développés, déployés et activés indépendamment.

Dans le modèle d'événements COM+, une interface événement est d'abord créée en employant l'expert Objet Evénement COM+. L'interface événement n'a pas d'implémentation ; elle définit simplement les méthodes des événements que les éditeurs de logiciels généreront et auxquels les abonnés répondront. L'objet événement COM+ est ensuite installé dans une application COM+, dans le catalogue COM+. Cela peut s'effectuer par programmation à l'aide de l'objet TComAdminCatalog, ou par un administrateur système utilisant l'outil Component Services.

Les abonnés d'événements ont la responsabilité de fournir une implémentation pour l'interface événement. Vous pouvez créer les composants abonnés d'événements à l'aide de l'expert Abonnement Evénement COM+. En utilisant l'expert, vous pouvez sélectionner l'objet événement à implémenter et l'EDI écrasera chaque méthode de l'interface. Vous pouvez également sélectionner une bibliothèque de types si l'objet événement n'a pas encore été installé dans le catalogue COM+.

Enfin, une fois le composant abonné implémenté, il doit également être installé dans le catalogue COM+. Ceci peut se faire par programme avec un objet TComAdminCatalog ou à l'aide de l'outil d'administration des services de composants.

Lorsqu'un éditeur de logiciels souhaite générer un événement, il crée simplement une instance de l'objet événement (pas du composant abonné), et appelle les méthodes appropriées sur l'interface événement. COM+ intervient ensuite et avertit toutes les applications abonnées à cet objet événement, en les appelant de façon synchrone, une à la fois. De cette façon, les éditeurs de logiciels n'ont pas besoin de connaître quoi que ce soit des applications abonnées à l'événement. Les abonnés n'ont pas besoin d'autre chose que d'une implémentation de l'interface événement, et de sélectionner les éditeurs de logiciels auxquels ils souhaitent s'abonner. COM+ gère le reste.

Pour plus d'informations sur le système d'événements COM+, voir Génération d'événements dans COM+.