WebSphere Message Broker Version 8.0.0.5 Betriebssysteme: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Sehen Sie sich die Informationen zur aktuellen Produktversion im IBM Integration Bus Version 9.0 an.

cpiCreateAndInitializeElement

Diese Funktion erstellt ein Syntaxelement, das dem angegebenen Parser gehört und nicht an eine Syntaxbaumstruktur angehängt ist. Das Element wird teilweise initialisiert mit den Werten der folgenden Parameter: Typ, Name, firstChildComplete und lastChildComplete.

Syntax

CciElement* cpiCreateAndInitializeElement(
  int*            returnCode,
  CciParser*      Parser,
  CciElementType  type,
  const CciChar*  name,
  CciBool         firstChildComplete,
  CciBool         lastChildComplete);

Parameter

returnCode
Empfängt den Rückkehrcode von der Funktion (Ausgabe).
Mögliche Rückkehrcodes sind:
  • CCI_SUCCESS
  • CCI_EXCEPTION
  • CCI_FAILURE
  • CCI_INV_PARSER_OBJECT
parser
Gibt die Adresse des Parserobjekts an (Eingabe). Diese Adresse wird dem Parser als Parameter der Implementierungsfunktion cpiCreateContext übermittelt.
type
Gibt den Typ des Elements an, das gerade erstellt wird (Eingabe).
name
Gibt einen beschreibenden Namen für das Element an (Eingabe).
firstChildComplete
Gibt einen Wert für die 'firstChildComplete'-Markierung des Syntaxelements an (Eingabe).
lastChildComplete
Gibt einen Wert für die 'lastChildComplete'-Markierung des Syntaxelements an (Eingabe).

Rückgabewerte

Falls erfolgreich, wird die Adresse des neuen Elementobjekts zurückgegeben. Andernfalls wird als Wert null (CCI_NULL_ADDR) zurückgegeben, und der Rückkehrcode gibt den Grund für den Fehler an.

Beispiel

/* Zum Ende des Wertes gehen */
          while (pc->iCurrentCharacter != quoteChar) {
            advance( (PARSER_CONTEXT_ST *)context, parser );
          }

          /* Rufen Sie einen Zeiger zum Tagende ab */
          endMarker = (char*)pc->iBuffer+(int)pc->iIndex;

          /* Berechnen Sie die Größe des Tags */
          markedSize = (size_t)endMarker-(int)startMarker;

          /* Konvertieren Sie den Attributwert ins Brokerformat */
          data = CciNString((char *)startMarker, markedSize, pc->iCcsid);

          /* Erstellen Sie ein neues Namenswertelement für das Attribut */
          newElement = cpiCreateAndInitializeElement(&rc, parser, type, name);
          cpiSetElementType(&rc, newElement, CCI_ELEMENT_TYPE_NAME_VALUE);
          cpiSetElementName(&rc, newElement, data);
          if (pc->trace) {
            const char * mbData = mbString(data, pc->iCcsid);
            fprintf(pc->tracefile, "PLUGIN: Created new NAMEVALUE element; 
                    object=0x%x type=0x%x name=",
                    newElement, CCI_ELEMENT_TYPE_NAME_VALUE);
            fprintf(pc->tracefile, "%s\n", mbData);
            fflush(pc->tracefile);
            free((void *)mbData);
          }
          /* Geben Sie den in CciNString() erstellten Speicherplatz frei */
          free((void *)data);
Bemerkungen | Marken | Downloads | Bibliothek | Support | Feedback

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Letzte Aktualisierung:
        
        Letzte Aktualisierung: 2015-02-28 16:22:04


ReferenzthemaReferenzthema | Version 8.0.0.5 | as08390_