WebSphere Message Broker, Versão 8.0.0.5 Sistemas operacionais: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte as informações sobre a versão mais recente do produto em IBM Integration Bus, Versão 9.0

cniCreateElementAsLastChildFromBitstream

Use esta função para criar uma árvore de elementos de sintaxe como o último filho do elemento da sintaxe especificado e associe-a ao analisador especificado. A árvore de elementos de sintaxe é preenchida analisando o fluxo de bits especificado.

Durante a execução dessa função, o fluxo de bits é copiado de modo que o responsável pela chamada possa liberar e reutilizar a memória alocada para reter o fluxo de bits original. Essa função pode ser usada apenas para criar um corpo de mensagem, ou seja, o último filho da propriedade de mensagem. Uma mensagem de saída já deve existir.

O elemento raiz dessa mensagem de saída deve ser transmitido como o parâmetro do elemento de destino. Como esta chamada é projetada apenas para ser usada para criar um corpo da mensagem, não é possível usá-la para construir elementos sucessivos. Por exemplo, ela não deve ser usada para criar um cabeçalho MQRFH2 como o último filho da raiz, em seguida, uma mensagem XML como o último filho da raiz, após o cabeçalho MQRFH2.

Sintaxe

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
O código de retorno da função (saída). Especificar um ponteiro NULL significa que o nó não lidará com erros. Se a entrada não for NULL, a saída significa o status de êxito da chamada. Quaisquer exceções lançadas durante a execução desta chamada serão lançadas novamente para o próximo nó acima no fluxo. Chame cciGetLastExceptionData para obter detalhes da exceção.
Os possíveis códigos de retorno são:
  • CCI_SUCCESS
  • CCI_EXCEPTION
  • CCI_INV_ELEMENT_OBJECT
  • CCI_INV_PARSER_NAME
  • CCI_INV_DATA_POINTER
targetElement
O elemento de sintaxe sob o qual a nova árvore de elementos de sintaxe é criada (entrada). Esse parâmetro deve ser a propriedade de mensagem.
parserClassName
O nome da classe de analisador a ser utilizado para analisar o fluxo de bits (entrada). Você deve utilizar o mesmo analisador que foi utilizado para analisar o fluxo de bits inteiro.
value
Um ponteiro para uma estrutura CciByteArray contendo um ponteiro para o fluxo de bits a ser analisado e também o tamanho em CciBytes desse fluxo de bits (saída).
messageType
O nome da mensagem usado para criar a árvore de elementos a partir do fluxo de bits (entrada). Um ponteiro NULL significa que este parâmetro é ignorado. Além disso, se o analisador especificado não tiver interesse neste valor, por exemplo, se ele for um analisador XML genérico, o parâmetro é ignorado.
messageSet
O modelo de mensagem usado para criar a árvore de elementos a partir do fluxo de bits (entrada). Um ponteiro NULL significa que este parâmetro é ignorado. Além disso, se o analisador especificado não tiver interesse neste valor, por exemplo, se ele for um analisador XML genérico, o parâmetro é ignorado.
messageFormat
O formato físico usado para criar a árvore de elementos a partir do fluxo de bits (entrada). Um ponteiro NULL significa que este parâmetro é ignorado. Além disso, se o analisador especificado não tiver interesse neste valor, por exemplo, se ele for um analisador XML genérico, o parâmetro é ignorado.
encoding
A codificação a ser utilizada ao analisar o fluxo de bits (entrada). Esse parâmetro é obrigatório. Você pode especificar um valor de 0 para indicar que a codificação do gerenciador de filas deve ser utilizada.
ccsid
O identificador do conjunto de caracteres codificados a ser utilizado ao analisar o fluxo de bits (entrada). Esse parâmetro é obrigatório. Você pode especificar um valor de 0 para indicar que o ccsid do gerenciador de filas deve ser utilizado.
options
Ele está reservado para utilização futura. Você deve especificar um valor igual a 0 para manter a compatibilidade futura.

Valores de Retorno

Se for bem-sucedido, o endereço do novo objeto de elemento é retornado. Caso contrário, um valor zero (CCI_NULL_ADDR) é retornado e o parâmetro do código de retorno indica a razão para o erro. Se uma exceção ocorrer durante a execução, returnCode é definido como CCI_EXCEPTION.

Exemplo

  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 | Downloads | Biblioteca | Suporte | Feedback

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

        
        Última atualização:
        
        Última atualização: 2015-02-28 18:30:23


Tópico de ReferênciaTópico de Referência | Versão 8.0.0.5 | as07865_