Función opcional para devolver el nombre de la siguiente clase de analizador de la cadena, si existe. Permite al analizador devolver al intermediario el nombre de la clase de analizador que maneja la sección siguiente o el resto del contenido del mensaje. Normalmente, para los mensajes que tienen un tipo de formato simple, sólo hay un analizador de contenido de mensaje y no es necesario proporcionar esta función. Para los mensajes que tienen un tipo de formato más complejo con varios analizadores de mensajes, cada analizador debe identificar el siguiente en la cadena devolviendo su nombre en el parámetro buffer. El último analizador de la cadena debe devolver una serie de caracteres vacía.
Si especifica el nombre de un analizador proporcionado con WebSphere Message Broker, deberá utilizar el nombre de clase correcto del analizador.
Definida en | Tipo | Miembro |
CPI_VFT | Opcional | iFpNextParserClassName |
void cpiNextParserClassName( CciParser* parser, CciContext* context, CciChar* buffer, int size);
Ninguno.
Este ejemplo se ha tomado del archivo de analizador de ejemplo BipSampPluginParser.c (líneas 732 a 756).
void cpiNextParserClassName( CciParser* parser, CciContext* context, CciChar* buffer, int size ){ PARSER_CONTEXT_ST* pc = (PARSER_CONTEXT_ST *)context ; int rc = 0; if (pc->trace) { fprintf(pc->tracefile, "PLUGIN: -> cpiNextParserClassName() parser=0x%x context=0x%x\n", parser, context); fflush(pc->tracefile); } /* Copiar el nombre en el intermediario */ CciCharNCpy(buffer, pc->iNextParserClassName, size); if (pc->trace) { fprintf(pc->tracefile, "PLUGIN: <- cpiNextParserClassName()\n"); fflush(pc->tracefile); } return; }