cniPropagate

Invia un messaggio ad un determinato oggetto terminale. Se il terminale non è collegato ad un altro nodo mediante un connettore, il messaggio non viene inviato e la funzione non viene considerata. Non è quindi necessario verificare se il terminale è collegato prima di inviare il messaggio, a meno che l'azione che il nodo effettua non è diversa (in tale caso, è possibile utilizzare cniIsTerminalAttached per verificare se il terminale è collegato).

Sintassi

int cniPropagate(
  int*      returnCode,
  CciTerminal*  terminalObject,
  CciMessage*   destinationList,
  CciMessage*  exceptionList,
  CciMessage  *message);

Parametri

returnCode
Il codice di ritorno dalla funzione (output).
I codici di ritorno possibili sono:
  • CCI_SUCCESS
  • CCI_EXCEPTION
  • CCI_INV_TERMINAL_OBJECT
  • CCI_INV_MESSAGE_OBJECT
terminalObject
L'indirizzo del terminale di output per ricevere il messaggio (input). L'indirizzo viene restituito da cniCreateOutputTerminal.
destinationList
L'indirizzo dell'oggetto elenco di destinazioni da inviare con il messaggio (input).

Questo oggetto messaggio viene utilizzato dal nodo di pubblicazione/sottoscrizione fornito dal broker di messaggi.

exceptionList
L'indirizzo dell'elenco di eccezioni per il messaggio (input).
message
L'indirizzo dell'oggetto messaggio da inviare (input). Se il messaggio inviato è lo stesso del messaggio di input, questo indirizzo è quello trasferito alla funzione di implementazione cniEvaluate.

Valori di restituzione

Se ha esito positivo, viene restituito CCI_SUCCESS. Altrimenti, viene restituito CCI_FAILURE e il parametro returnCode indica il motivo dell'errore.

Esempio

  if (terminalObject) {
    if (cniIsTerminalAttached(&rc, terminalObject)) {
      if (rc == CCI_SUCCESS) {
        cniPropagate(&rc, terminalObject, destinationList, exceptionList, message);
Informazioni particolari | Marchi | Download | Libreria | Supporto | Commenti
Copyright IBM Corporation 1999, 2006 Ultimo aggiornamento: ago 17, 2006
as07620_