パーサーに、チェーンにある次のパーサーを通知するためのオプションの関数。 これは、終了処理中に呼び出され、ユーザー定義パーサーに、チェーンの次のパーサー・クラスの名前を含むストリングを戻します。これによって、パーサーは終了フェーズ中にアクションを実行して、 ビット・ストリームの逐次化を引き起こすフェーズの前に、 構文エレメント・ツリーを変更することができます。
WebSphere Message Broker が提供しているパーサーの名前を指定する場合、パーサーの正しいクラス名を使用しなければなりません。
定義されている場所 | タイプ | メンバー |
CPI_VFT | オプション | iFpSetNextParserClassName |
void cpiSetNextParserClassName( CciParser* parser, CciContext* context, CciChar* name, CciBool parserType);
なし。
この例は、サンプル・パーサー・ファイル BipSampPluginParser.c から取られています (763 行から 787 行)。
void cpiSetNextParserClassName( CciParser* parser, CciContext* context, CciChar* name, CciBool isHeaderParser ){ PARSER_CONTEXT_ST* pc = (PARSER_CONTEXT_ST *)context ; int rc = 0; /* Save the name in my context */ CciCharNCpy(pc->iNextParserClassName, name, CciCharLen(name)); if (pc->trace) { fprintf(pc->tracefile, "PLUGIN: <- cpiSetNextParserClassName()¥n"); fflush(pc->tracefile); } return; }