Présentation de la méthode OnNotify
La méthode OnNotify est appelée pour signaler à un adaptateur la progression de la mappe par rapport à l'adaptateur.
MPIRC OnNotify (HMPIOBJ hAdapter, int
iEvent,int iParam,HMPIOBJ hConnection)Entrées
- hAdapter
- Descripteur d’adaptateur
- iEvent
- ID événement
- iParam
- [ignorez ce paramètre]
- hConnection
- Descripteur de connexion
Sorties
Aucun
Renvoie
Statut de réussite
| Notification | Description |
|---|---|
| MPIN_ADAPTER_GETSTART | Avant tout appel Get pour la carte |
| MPIN_ADAPTER_GETSTOP | Après tous les appels Get pour la carte |
| MPIN_ADAPTER_PUTSTART | Avant tout appel Put pour la carte |
| MPIN_ADAPTER_PUTSTOP | Après tous les appels Put pour la carte |
| MPIN_ADAPTER_LISTENSTART | Avant tout appel Listen pour la carte |
| MPIN_ADAPTER_LISTENSTOP | Après tous les appels Listen pour la carte |
| MPIN_ADAPTER_LISTENABOR | Appelé pour abandonner un programme d'écoute qui n'effectue pas d'interrogation |
| MPIN_ADAPTER_MAPABORT | Lorsqu'une mappe est annulée par une action de l'utilisateur |
Ces points d'entrée donnent la possibilité à l'adaptateur d'initialiser ou de nettoyer une méthode Get, Put ou Listen. Par exemple, il se peut que l'adaptateur doive interroger une file d'attente pour connaître certaines de ses propriétés. Cette opération est effectuée dans l'appel OnNotify (*_START). Si elle a été effectuée dans les méthodes Get, Put ou Listen et que ces méthodes ont été appelées plusieurs fois, des tâches inutiles sont exécutées plusieurs fois.
OnNotify est appelée avec *_START avant tout appel Get, Put ou Listen, et est appelée avec *_STOP après tous les appels Get, Put ou Listen. Par exemple, si une mappe exécute plusieurs rafales et que pour chacune, Get est appelé plusieurs fois pour obtenir plusieurs messages, il n'y aura qu'un seul appel OnNotify avec MPIN_GET_START, avant le premier Get. Ce n'est qu'une fois toutes les rafales et tous les Get dans une rafale que OnNotify sera appelé avec MPIN_GET_STOP pour laisser l'adaptateur faire le nettoyage.
Si un utilisateur annule une exécution de mappe, OnNotify sera appelé avec MPIN_MAP_ABORT. Les méthodes Get ou Put doivent être abandonnées par l'adaptateur dès que possible après la notification.
La notification MPIN_ADAPTER_LISTENABORT est envoyée uniquement aux adaptateurs qui ont défini bListenerBlocks comme TRUE dans la bibliothèque vtable. Dans ce scénario, OnNotify est appelé sur une unité d'exécution distincte de l'appel Listen. Pour toutes les autres notifications, l'appel est effectué sur l'unité d'exécution de connexion.
Lorsqu’un adaptateur reçoit cette notification, il doit abandonner la méthode Listen à l’aide du mécanisme ou de l’API pris en charge par l’adaptateur.