cciGetNodeAttribute

Esta função retorna o valor do atributo especificado.

Sintaxe

CciSize cciGetNodeAttribute (int* returnCode,
                         CciNode* node,
                         CciChar* name,
                         CciChar* value,
                         CciSize length);

Parâmetros

returnCode (saída)
Recebe o código de retorno da função (saída).
  • CCI_INV_BUFFER_TOO_SMALL

    O buffer fornecido não era grande o suficiente para manter o valor do tipo de nó.

node (entrada)
Esta é uma manipulação para um nó.
name (entrada)
Este é um ponteiro para uma cadeia terminada em NULL de CciChar especificando o nome do atributo do nó sendo consultado.
value (saída)
O endereço de um buffer, alocado pelo responsável pela chamada para manter o valor do atributo.
length
O comprimento, em CciChars, do buffer alocado pelo responsável pela chamada.

Valores de Retorno

  • Se bem-sucedido, o valor de atributo será copiado para o buffer fornecido e o número de caracteres CciChar copiados será retornado.
  • Se o buffer não for grande o suficiente para conter o valor de atributo, returnCode será configurado como CCI_BUFFER_TOO_SMALL e o número de CciChars requeridos será retornado.
  • Se name especificar um nome de atributo que é seja apropriado para o nó fornecido, returnCode será definido como CCI_ATTRIBUTE_UNKOWN.

Exemplo

void myPropagatedMessageCallback(
                        CciMessage* message,
                        CciMessage* localEnvironment,
                        CciMessage* exceptionList,
                        CciMessage* environment,
                        CciConnection* connection){
 int rc = CCI_SUCCESS;
   CciNode* sourceNode = cciGetSourceNode(&rc,
                                          connection);
   /* agora verifique o rc a procura de valores inesperados*/
   CciChar queueNameAttribute[16];
   cciMbsToUcs(&rc,
               "queueName",
               queueNameAttribute,
               16,
               BIP_DEF_COMP_CCSID);
 /* agora verifique o rc a procura de valores inesperados*/

   CciChar queueName [512];
   sourceNodeQueueNameLength = cciGetNodeType(&rc,
                                         sourceNode,
                                         queueName,
                                         512);
   /* agora verifique o rc a procura de valores inesperados*/
   /* se rc é CCI_BUFFER_TOO_SMALL, você deve redimensionar e tentar novamente*/
 /*sourceNodeQueueNameLength manterá o tamanho real ou o exigido */
Conceitos relacionados
Desenvolvendo Saídas do Usuário
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback
Direitos Autorais IBM Corporation 1999, 2006 Última Atualização: 1 Sep 2006
as36010_