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.

cpiWriteBufferFormatted

Diese Funktion erweitert die Funktionalität der Implementierungsfunktion cpiWriteBuffer(), indem sie zusätzliche Informationen zur Ausgabenachricht bereitstellt.

Die folgenden zusätzlichen Informationen werden bereitgestellt:
  1. Die Codierung und der codierte Zeichensatz, in denen die Ausgabenachricht dargestellt wird, wenn der Parser seine Elementbaumstruktur in einen Ausgabebitstrom serialisiert.
  2. Der Nachrichtensatz, der Typ und das Format für die Ausgabenachricht für solche Parser, die derartige Informationen benötigen, um deren Elementbaumstruktur korrekt in einen Ausgabebitstrom zu serialisieren.

Wenn keine serielle Verarbeitung erforderlich ist, zum Beispiel wenn die Ausgabe auf einem Eingabebitstrom basiert und die Baumstruktur nicht verändert wurde, wird diese Implementierungsfunktion nicht vom Broker aufgerufen.

Wenn diese Implementierungsfunktion in der Struktur CPI_VFT bereitgestellt wird, können Sie weder cpiWriteBuffer() noch cpiWriteBufferEncoded() angeben, da die Funktion cpiDefineParserClass() dann mit dem Rückkehrcode CCI_INVALID_IMPL_FUNCTION fehlschlägt.

Definiert in Typ Mitglied
CPI_VFT Bedingt iFpWriteBufferFormatted

Syntax

int cpiWriteBufferFormatted(
  CciParser*     parser,
  CciContext*    Kontext,
  int            encoding,
  int            ccsid,
  CciChar*       set,
  CciChar*       type,
  CciChar*       format); 

Parameter

parser
Die Adresse des Parserobjekts (Eingabe).
context
Die Adresse des Kontextes des Parserobjekts (Eingabe).
encoding
Die Codierung des Nachrichtenpuffers (Eingabe).
ccsid
Die ID des codierten Zeichensatzes des Nachrichtenpuffers (Eingabe).
set
Der Nachrichtensatz, zu dem die Nachricht gehört (Eingabe).
type
Der Nachrichtentyp (Eingabe).
format
Das Nachrichtenformat (Eingabe).

Rückgabewerte

Die Größe der Daten in Byte, die an den Bitstrom im Puffer angehängt sind.

Beispiel

int cpiWriteBufferFormatted(
  CciParser*  parser,
  CciContext* context,
  int         encoding,
  int         ccsid
  CciChar*       set,
  CciChar*       type,
  CciChar*       format
){
  PARSER_CONTEXT_ST* pc = (PARSER_CONTEXT_ST *)context ;
  int                initialSize = 0;
  int                rc = 0;
  const void* a;
  CciByte b;

  
  initialSize = cpiBufferSize(&rc, parser);
  a = cpiBufferPointer(&rc, parser);
  b = cpiBufferByte(&rc, parser, 0);

  cpiAppendToBuffer(&rc, parser, (char *)"Some test data", 14);

  return cpiBufferSize(0, parser) - initialSize;
}
Bemerkungen | Marken | Downloads | Bibliothek | Support | Feedback

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

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


ReferenzthemaReferenzthema | Version 8.0.0.5 | as08230_