Mit dieser Funktion können Sie gemäß dem Parameter name eine Knotenklasse definieren, die von der im Parameter factoryObject angegebenen Knotenfactory unterstützt wird.
Diese Funktion wird vom Knoten während der Ausführung von bipGetMessageFlowNodeFactory beim Laden der LIL-Datei aufgerufen.
Wenn sowohl cniGetAttribute und cniGetAttribute2 oder cniGetAttributeName und cniGetAttributeName2 implementiert werden, schlägt cniDefineNodeClass mit CCI_INV_IMPL_FUNCTION fehl.
void cniDefineNodeClass(
int* returnCode,
CciFactory* Factory-Objekt,
CciChar* name,
CNI_VFT* functbl);
Wenn Sie z. B. den Namen als 'Basic' im WebSphere Message Broker Toolkit zugeordnet haben, muss der Klassenname des Knotens 'BasicNode' lauten.
vftable.iFpCreateNodeContext = _Transform_createNodeContext;
vftable.iFpDeleteNodeContext = _deleteNodeContext;
vftable.iFpGetAttributeName2 = _getAttributeName2;
vftable.iFpSetAttribute = _setAttribute;
vftable.iFpGetAttribute2 = _getAttribute2;
vftable.iFpEvaluate = _Transform_evaluate; /* falls kein Empfangsknoten */
vftable.iFRun = _run /* falls ein Empfangsknoten */
Es wird normalerweise nur einer der letzten 2 Einträge definiert, d. h. man definiert vftable.iFpEvaluate = _Transform_evaluate; für einen Nachrichtenverarbeitungsknoten oder vftable.iFpRun = _run; für einen Empfangsknoten.
Keine. Wenn ein Fehler auftritt, gibt der Parameter returnCode die Fehlerursache an.