Über die Message
Broker-Java™-API können bei der Entwicklung von Nachrichtenflussanwendungen ESQL-Module erstellt werden. Anschließend
können Sie die ESQL-Module Knoten zuordnen, die ESQL verwenden. Sie können also
beispielsweise beim Erstellen eines
Compute-Knotens
Java-Code zum Erstellen eines ESQL-Moduls
schreiben und anschließend dem Knoten das Modul zuordnen.
ESQL wird beispielsweise von
Compute-,
Datenbank-,
DatabaseInput- und
Filter-Knoten verwendet. Wenn Sie ein nicht
standardmäßiges Brokerschema verwenden, müssen Sie das Schema mit der Methode
setBrokerSchema() festlegen.
- Das folgende Beispiel zeigt, wie ein ESQL-Modul im Schema mqsi erstellt
wird. Anschließend wird das Modul mit der Methode
setComputeExpression() einem neuen
Compute-Knoten zugeordnet:
File msgFlow = new File("main.msgflow");
MessageFlow mf1 = FlowRendererMSGFLOW.read(msgFlow);
ESQLModule module = new ESQLModule();
module.setBrokerSchema("mqsi");
module.setEsqlMain("MyESQLMain");
ComputeNode compNode = new ComputeNode();
compNode.setNodeName("My Compute Node");
compNode.setComputeExpression(module);
mf1.addNode(compNode);
- Das folgende Beispiel zeigt, wie ein ESQL-Modul im Standardschema erstellt wird. Die Methode
setBrokerSchema() ist nicht erforderlich.
File msgFlow = new File("main.msgflow");
MessageFlow mf1 = FlowRendererMSGFLOW.read(msgFlow);
ESQLModule module = new ESQLModule();
module.setEsqlMain("MyESQLMain");
ComputeNode compNode = new ComputeNode();
compNode.setNodeName("My Compute Node");
compNode.setComputeExpression(module);
mf1.addNode(compNode);
- Das folgende Beispiel zeigt, wie ein ESQL-Modul innerhalb einer ESQL-Datei mithilfe der
Methode getEsqlModules() erkannt wird.
Dann können Sie dieses ESQL-Modul mit der Methode
setComputeExpression() zur Festlegung des Rechenausdrucks eines
Compute-Knotens verwenden.
File msgFlow = new File("main.msgflow");
MessageFlow mf1 = FlowRendererMSGFLOW.read(msgFlow);
File esql = new File("FileBatchProcessingSample_Branch.esql");
ESQLFile esqlFile = new ESQLFile(esql);
Vector<ESQLModule> esqlModules = esqlFile.getEsqlModules();
ComputeNode compNode = new ComputeNode();
compNode.setNodeName("My Compute Node");
compNode.setComputeExpression(esqlModules.get(0));
mf1.addNode(compNode);