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

cpiParent

Esta función devuelve la dirección del objeto de elemento de sintaxis que es el padre del elemento de destino especificado.

Sintaxis

CciElement* cpiParent(
  int*               returnCode,
  const CciElement*  targetElement);

Parámetros

returnCode
Recibe el código de retorno de la función (salida).
Los códigos de retorno posibles son:
  • CCI_SUCCESS
  • CCI_EXCEPTION
  • CCI_INV_ELEMENT_OBJECT
targetElement
Especifica la dirección del objeto de elemento de sintaxis de destino (entrada).

Valores de retorno

Si la ejecución se realiza satisfactoriamente, se devuelve la dirección del elemento de sintaxis solicitado. Si no hay ningún elemento padre, se devuelve cero. Si se produce un error, se devuelve cero (CCI_NULL_ADDR) y el parámetro returnCode indica la razón del error.

Ejemplo

Este ejemplo se ha tomado del archivo de analizador de ejemplo BipSampPluginParser.c:

void* parseNextItem(
  CciParser*  parser,
  CciContext* context,
  CciElement* element
){
  void*              endMarker;
  void*              startMarker;
  PARSER_CONTEXT_ST* pc = (PARSER_CONTEXT_ST *)context;
  CciElement*        returnElement = element;
  CciElement*        newElement;
  size_t             markedSize;
  const CciChar*     data;
  int                rc;

  if (pc->trace) 

  /* Omitir cualquier espacio en blanco */
  skipWhiteSpace( (PARSER_CONTEXT_ST *)context );

  /* ¿Estamos en el final del almacenamiento intermedio? */
  if (pc->iIndex == pc->iSize)
        return(0);
  }

  /* ¿Estamos dentro de un código? */
  if (pc->iInTag) {

    if (pc->iCurrentCharacter == chCloseAngle) {

      /* Hemos alcanzado el final de un código */
      pc->iInTag = 0;
      advance( (PARSER_CONTEXT_ST *)context, parser );
    }
    else if (pc->iCurrentCharacter == chForwardSlash) {

      /* Es posible que hayamos alcanzado el final de un código vacío */
      advance( (PARSER_CONTEXT_ST *)context, parser );

      if (pc->iCurrentCharacter == chCloseAngle) {

        pc->iInTag = 0;
        advance( (PARSER_CONTEXT_ST *)context, parser );

        cpiSetElementCompleteNext(&rc, element, 1);
        
        returnElement = cpiParent(&rc, element);
      }
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:25


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