cniCreateElementAsLastChildFromBitstream

Diese Funktion erstellt eine neue Syntaxelementstruktur als letztes untergeordnetes Element des angegebenen Syntaxelements und ordnet sie dem angegebenen Parser zu. Die neue Syntaxelementstruktur wird durch die Syntaxanalyse des angegebenen Bitstroms gefüllt. Während der Ausführung dieser Funktion wird der Bitstrom kopiert, so dass der Aufrufende den Speicher, der dem ursprünglichen Bitstrom zugeordnet ist, freigeben oder wiederverwenden kann. Sie können mit dieser Funktion nur den Nachrichtenhauptteil, d. h. das letzte untergeordnete Element des Nachrichtenstamms erstellen. Eine Ausgabenachricht sollte bereits vorhanden sein. Das Stammelement dieser Ausgabenachricht sollte als Zielelementparameter übergeben werden. Da dieser Aufruf nur für die Erstellung eines Nachrichtenhauptteils bestimmt ist, können Sie damit keine aufeinander folgenden Elemente erstellen. Er sollte beispielsweise nicht verwendet werden, um einen RFH2 als letztes untergeordnetes Element des Stamms und anschließend eine XML-Nachricht als letztes untergeordnetes Element des Stamms nach dem RFH2 zu erstellen.

Syntax

CciElement* cniCreateElementAsLastChildFromBitstream (
int*                       returnCode,
CciElement*                targetElement,
const struct CciByteArray* value,
const CciChar*             parserClassName,
CciChar*                   messageType,
CciChar*                   messageSet,
CciChar*                   messageFormat,
int                        encoding,
int                        ccsid,
int                        options);

Parameter

returnCode
Der Rückkehrcode aus der Funktion (Ausgabe). Wenn ein Nullzeiger angegeben wird, bedeutet dies, dass der Knoten nicht für Fehler zuständig ist. Wenn die Eingabe nicht NULL ist, gibt die Ausgabe den Erfolgsstatus des Aufrufs an. Alle Ausnahmebedingungen, die bei der Ausführung dieses Aufrufs ausgegeben werden, werden beim nächsten vorgeschalteten Knoten im Nachrichtenfluss erneut ausgegeben. Rufen Sie cciGetLastExceptionData auf, um weitere Informationen zu der Ausnahmebedingung zu erhalten. Mögliche Rückkehrcodes sind:
  • CCI_SUCCESS
  • CCI_EXCEPTION
  • CCI_INV_ELEMENT_OBJECT
  • CCI_INV_PARSER_NAME
  • CCI_INV_DATA_POINTER
targetElement
Das Syntaxelement, unter dem die neue Syntaxelementstruktur erstellt wird (Eingabe). Dies muss der Nachrichtenstamm sein.
parserClassName
Der Name der Parser-Klasse, die für die Syntaxanalyse des Bitstroms verwendet werden soll (Eingabe). Sie müssen dafür denselben Parser wie für die Syntaxanalyse des gesamten Bitstroms verwenden.
value
Ein Zeiger auf ein "CciByteArray struct", das einen Zeiger auf den Bitstrom enthält, der syntaktisch analysiert werden soll, sowie die Größe dieses Bitstroms in Byte (CciBytes) (Ausgabe).
messageType
Die Nachrichtentypdefinition, die für die Erstellung der Elementstruktur aus dem Bitstrom verwendet wird (Eingabe). Ein Nullzeiger bedeutet, dass dieser Parameter ignoriert wird. Wenn der angegebene Parser kein Interesse an diesem Wert hat, z. B. wenn es sich um einen generischen XML-Parser handelt, wird der Parameter ebenfalls ignoriert.
messageSet
Die Nachrichtengruppendefinition, die für die Erstellung der Elementstruktur aus dem Bitstrom verwendet wird (Eingabe). Ein Nullzeiger bedeutet, dass dieser Parameter ignoriert wird. Wenn der angegebene Parser kein Interesse an diesem Wert hat, z. B. wenn es sich um einen generischen XML-Parser handelt, wird der Parameter ebenfalls ignoriert.
messageFormat
Das Format, das für die Erstellung der Elementstruktur aus dem Bitstrom verwendet wird (Eingabe). Ein Nullzeiger bedeutet, dass dieser Parameter ignoriert wird. Wenn der angegebene Parser kein Interesse an diesem Wert hat, z. B. wenn es sich um einen generischen XML-Parser handelt, wird der Parameter ebenfalls ignoriert.
encoding
Die Codierung, die bei der Syntaxanalyse des Bitstroms verwendet werden soll (Eingabe). Dieser Parameter ist obligatorisch. Sie können den Wert 0 angeben, wenn die Codierung des Warteschlangenmanagers verwendet werden soll.
ccsid
Die ID des codierten Zeichensatzes, die bei der Syntaxanalyse des Bitstroms verwendet werden soll (Eingabe). Dieser Parameter ist obligatorisch. Sie können den Wert 0 angeben, wenn die ID des codierten Zeichensatzes des Warteschlangenmanagers verwendet werden soll.
options
Dies ist ein Platzhalter, der die Unterstützung der Nachrichtenüberprüfung zu einem späteren Zeitpunkt zulassen soll (Eingabe).

Rückgabewerte

Bei erfolgreicher Ausführung wird die Adresse des neuen Elementobjekts zurückgegeben. Andernfalls wird der Wert null (CCI_NULL_ADDR) zurückgegeben, und der Parameter für den Rückkehrcode gibt die Fehlerursache an. Wenn bei der Ausführung eine Ausnahmebedingung auftritt, wird als Wert für returnCode CCI_EXCEPTION festgelegt.

Beispiel

outMQMD = cniCreateElementAsFirstChildUsingParser(&rc,
outRootElement,
CciString("MQHMD",BIP_DEF_COMP_CCSID));
checkRC(rc);
cniCopyElementTree(&rc, inMQMD, outMQMD);
checkRC(rc);
outBlobRoot = cniCreateElementAsLastChildFromBitstream(
&rc,
outRootElement,
&bitstream,
inParserClassName,
messageType,
messageSet,
messageFormat,
encoding,
ccsid,
0);
checkRC(rc);
...
return;
}
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Rückmeldung
Copyright IBM Corporation 1999, 2006 Letzte Aktualisierung: 18.05.2006
as07865_