このトピックでは、ノードをブローカーに宣言したりパーサーを定義したりするための、ノード・ファクトリーおよびパーサー・ファクトリーの役割についての情報を提供します。
各 LIL には、1 つのノード・ファクトリーまたは 1 つのパーサー・ファクトリー、あるいは両方があります。ノード・ファクトリーは、多くのノードを識別することができ、パーサー・ファクトリーは、多くのパーサーを識別できます。
ブローカーが LIL をロードすると、以下の関数が呼び出されます。
LIL がロードされ、オペレーティング・システムによって初期化されると、ブローカーによって初期化関数 bipGetMessageflowNodeFactory が呼び出されます。 bipGetMessageflowNodeFactory 関数はユーティリティー関数 cniCreateNodeFactory を呼び出し、次いでそれは、LIL がサポートするすべてのノードのファクトリー名 (またはグループ名) を戻します。
LIL がロードされ、オペレーティング・システムによって初期化されると、ブローカーによって初期化関数 bipgetparserfactory が呼び出されます。 bipgetparserfactory 関数は、ユーザー定義パーサーがサポートするファクトリーの名前、およびファクトリーがサポートするオブジェクトのクラスまたは共用オブジェクトを定義します。 bipgetparserfactory はユーティリティー関数 cpiCreateParserFactory を呼び出し、次いでそれは、LIL がサポートするすべてのパーサーのファクトリー名 (またはグループ名) を戻します。
ノード・ファクトリーが戻される前に、以下の関数が呼び出されます。
この関数は、ノード・ファクトリーの単一のインスタンスをメッセージ・ブローカーに作成します。
この関数は、ノード・ファクトリーによりサポートされるノード・クラスの名前を定義し、ノード・ファクトリーが作成できるノードを示します。
パーサー・ファクトリーが戻される前に、以下の関数が呼び出されます。
この関数は、名前付きパーサー・ファクトリーの単一のインスタンスをメッセージ・ブローカーに作成します。
この関数は、パーサー・ファクトリーによりサポートされるパーサー・クラスの名前を定義し、ファクトリーが作成できるパーサーを示します。