WebSphere Message Broker, Versión 8.0.0.5 Sistemas operativos: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte la información sobre la última versión del producto en IBM Integration Bus, Versión 9.0

cniCreateElementAsLastChildFromBitstream

Utilice esta función para crear un árbol de elementos de sintaxis como el último hijo del elemento de sintaxis especificado y asociarlo al analizador especificado. El árbol de elementos de sintaxis se llena analizando la corriente de bits especificada.

Durante la ejecución de esta función, se copia la corriente de bits, de modo que el canal de llamada puede liberar o reutilizar la memoria asignada para contener la corriente de bits original. Puede utilizar esta función sólo para crear un cuerpo de mensaje, es decir, el último hijo de la propiedad de mensaje. Ya debe existir un mensaje de salida.

El elemento raíz de este mensaje de salida se deberá pasar como parámetro de elemento de destino. Dado que esta llamada está diseñada únicamente para utilizarla para crear un cuerpo de mensaje, no puede utilizarla para crear elementos sucesivos. Por ejemplo, no debería utilizarse para crear una cabecera MQRFH2 como el último hijo de la raíz, y luego un mensaje XML como el último hijo de la raíz, después de la cabecera MQRFH2.

Sintaxis

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);

Parámetros

returnCode
Código de retorno de la función (salida). La especificación de un puntero NULL significa que el nodo no tratará los errores. Si la entrada no es NULL, la salida significa el estado de éxito de la llamada. Las excepciones emitidas durante la ejecución de esta llamada se vuelven a emitir en el nodo ascendente siguiente del flujo. Llame a cciGetLastExceptionData para obtener información detallada de la excepción.
Los códigos de retorno posibles son:
  • CCI_SUCCESS
  • CCI_EXCEPTION
  • CCI_INV_ELEMENT_OBJECT
  • CCI_INV_PARSER_NAME
  • CCI_INV_DATA_POINTER
targetElement
Elemento de sintaxis bajo el que se crea el árbol de elementos de sintaxis nuevo (entrada). Este parámetro debe ser la propiedad de mensaje.
parserClassName
Nombre de la clase de analizador a utilizar para analizar la corriente de bits (entrada). Deberá utilizar el mismo analizador que se ha utilizado para analizar la corriente de bits completa.
value
Puntero a una estructura CciByteArray que contiene un puntero a la corriente de bits que se debe analizar y también el tamaño en CciBytes de esta corriente de bits (salida).
messageType
El nombre de mensaje utilizado para crear el árbol de elementos desde la corriente de bits (entrada). Un puntero NULL significa que se ignora este parámetro. Asimismo, si el analizador especificado no tiene ningún interés en este valor, por ejemplo si es un analizador XML genérico, se ignora el parámetro.
messageSet
El modelo de mensaje utilizado para crear el árbol de elementos desde la corriente de bits (entrada). Un puntero NULL significa que se ignora este parámetro. Asimismo, si el analizador especificado no tiene ningún interés en este valor, por ejemplo si es un analizador XML genérico, se ignora el parámetro.
messageFormat
El formato físico utilizado para crear el árbol de elementos desde la corriente de bits (entrada). Un puntero NULL significa que se ignora este parámetro. Asimismo, si el analizador especificado no tiene ningún interés en este valor, por ejemplo si es un analizador XML genérico, se ignora el parámetro.
encoding
Codificación a utilizar cuando se analiza la corriente de bits (entrada). Este parámetro es obligatorio. Puede especificar un valor de 0 para indicar que se debe utilizar la codificación del gestor de colas.
ccsid
Identificador de juego de caracteres codificado a utilizar cuando se analiza la corriente de bits (entrada). Este parámetro es obligatorio. Puede especificar un valor de 0 para indicar que se debe utilizar el ccsid del gestor de colas.
options
Reservado para un uso posterior. Debe especificar el valor 0 para mantener la compatibilidad con versiones posteriores.

Valores de retorno

Si la ejecución se realiza satisfactoriamente, se devuelve la dirección del objeto de elemento nuevo. De lo contrario, se devuelve un valor cero (CCI_NULL_ADDR) y el parámetro de código de retorno indica la razón del error. Si se produce una excepción durante la ejecución, returnCode se establece en CCI_EXCEPTION.

Ejemplo

  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;
}
Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Comentarios

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

        
        Última actualización:
        
        Última actualización: 2015-02-28 17:00:23


Tema de referenciaTema de referencia | Versión 8.0.0.5 | as07865_