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

Grupo cniSearchElementInNamespace

Use este elemento para procurar um elemento que corresponda aos critérios especificados.

A pesquisa começa no elemento de sintaxe especificado no argumento element, e cada uma das quatro funções fornece uma pesquisa em uma direção diferente na árvore.
  1. cniSearchFirstChildInNamespace pesquisa os elementos filhos imediatos do elemento inicial a partir do primeiro filho, até que seja encontrada uma correspondência ou que o final da cadeia de elementos filhos seja alcançado.
  2. cniSearchLastChildInNamespace pesquisa os elementos filhos imediatos do elemento inicial a partir do último filho, até que seja encontrada uma correspondência ou que o final da cadeia de elementos filhos seja alcançado.
  3. cniSearchNextSiblingInNamespace pesquisa a partir do elemento inicial até os próximos irmãos, até que seja encontrada uma correspondência ou que o final da cadeia de irmãos seja alcançado.
  4. cniSearchPreviousSiblingInNamespace pesquisa a partir do elemento inicial até os irmãos anteriores, até que seja encontrada uma correspondência ou que o início da cadeia de irmãos seja alcançado.

Use esta função quando procurar uma mensagem que pertença a um domínio ciente do espaço de nomes.

Sintaxe

void cniSearchFirstChildInNamespace(
	int*            returnCode,
	CciElement*     targetElement,
	CciCompareMode mode,
	const CciChar* nameSpace,
	const CciChar*  name,
	CciElementType type)		

void cniSearchLastChildInNamespace(
	int*            returnCode,
	CciElement*     targetElement,
	CciCompareMode mode,
	const CciChar* nameSpace,
	const CciChar*  name,
	CciElementType type)		

void cniSearchNextSiblingInNamespace(
	int*            returnCode,
	CciElement*     targetElement,
	CciCompareMode mode,
	const CciChar* nameSpace,
	const CciChar*  name,
	CciElementType type)		

void cniSearchPreviousSiblingInNamespace(
	int*            returnCode,
	CciElement*     targetElement,
	CciCompareMode mode,
	CciElementType type,
	const CciChar* nameSpace,
	const CciChar* name)		

Parâmetros

returnCode
O código de retorno da função (saída). Especificar um ponteiro NULL significa que o nó não deseja lidar com erros. Se a entrada não for NULL, a saída significa o status de êxito da chamada. Todas as exceções lançadas durante a execução desta chamada são relançadas no próximo nó de envio de dados 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
targetElement
O endereço do objeto de elemento de sintaxe do qual a pesquisa começa (entrada).
mode
O modo de pesquisa a utilizar (entrada). Este parâmetro indica qual combinação de espaço de nomes do elemento, nome de elemento e tipo de elemento deve ser procurada. Os valores possíveis são:
  • CCI_COMPARE_MODE_SPACE
  • CCI_COMPARE_MODE_SPACE_FULL_TYPE
  • CCI_COMPARE_MODE_SPACE_GENERIC_TYPE
  • CCI_COMPARE_MODE_SPACE_SPECIFIC_TYPE
  • CCI_COMPARE_MODE_SPACE_NAME
  • CCI_COMPARE_MODE_SPACE_NAME_FULL_TYPE
  • CCI_COMPARE_MODE_SPACE_NAME_GENERIC_TYPE
  • CCI_COMPARE_MODE_SPACE_NAME_SPECIFIC_TYPE
  • CCI_COMPARE_MODE_NULL
Quando o modo de comparação não envolver uma correspondência de espaço de nomes, todos os espaços de nomes serão pesquisados. Este comportamento difere daquele do grupo cniSearchElement, em que apenas o espaço de nomes de cadeia vazia é procurado. Quando você especificar um dos modos válidos, configure o parâmetro nameSpace com a cadeia vazia.
tipo
O tipo de elemento a pesquisar (entrada). Use este parâmetro apenas se o modo de procura envolver uma correspondência no tipo.
nameSpace
O espaço de nomes a pesquisar (entrada). Use este parâmetro apenas se o modo de procura envolver uma correspondência no espaço de nomes.
name
O nome a pesquisar (entrada). Use este parâmetro apenas se o modo de procura envolver uma correspondência no nome.

Valores de Retorno

Nenhuma. Se ocorrer um erro, o parâmetro returnCode indica o motivo do erro.

Exemplo

 mode=CCI_COMPARE_MODE_SPACE ;
 ...

   if (forward) {
      firstChild = cniSearchFirstChildInNamespace(&rc, element, mode, space, 0,0);
    }else{
      firstChild = cniSearchLastChildInNamespace(&rc, element, mode, space, 0,0);

    }

    if (firstChild) {
      depth++;
      traceElement(firstChild,forward,space);
      depth--;
    }
    currentElement = firstChild;
    do{

      if (forward) {
        nextSibling = cniSearchNextSiblingInNamespace(&rc, currentElement,mode,space,0,0);
      }else{
        nextSibling = cniSearchPreviousSiblingInNamespace(&rc, currentElement,mode,space,0,0);
      }
      if (nextSibling) {
        traceElement(nextSibling,forward,space);
        currentElement=nextSibling;
      }

    }while (nextSibling) ;
    
  }
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:22


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