package com.iceman.iib;
import com.ibm.broker.config.appdev.Terminal;
import com.ibm.etools.mft.conversion.esb.extensionpoint.AbstractMediationPrimitiveConverter;
import com.ibm.etools.mft.conversion.esb.extensionpoint.Nodes;
import com.ibm.etools.mft.conversion.esb.model.mfc.AbstractProperty;
import com.ibm.etools.mft.conversion.esb.model.mfc.Property;
import com.ibm.xtq.bcel.generic.RETURN;
import com.ibm.broker.config.appdev.nodes.JavaComputeNode;
public class JavacomputeNode extends AbstractMediationPrimitiveConverter {
public String getConvertedTo() {
// Here you need to specify node name
return "JavaCompute node";
}
@Override
public String getType() {
// Here you need to specify WESB primitive name
return "CustomMediation";
}
@Override
public Nodes convert(ConverterContext converterContext) throws Exception {
Nodes nodes = createNodes(converterContext);
String nodeName = getProposedIIBNodeNameFromSourcePrimitive(converterContext);
//Below code used to create nodes
JavaComputeNode node = (JavaComputeNode) createNode(converterContext.targetFlow, nodeName, ROLE_MAIN, JavaComputeNode.class, nodes);
return nodes;
}
@Override
public Terminal getInputTerminal(String sourceTerminalName, Nodes nodes) {
// Retrieve the node and map to its input terminal. For example,
JavaComputeNode jcn = (JavaComputeNode) nodes.getNode(ROLE_MAIN);
return jcn.INPUT_TERMINAL_IN;
}
@Override
public Terminal getOutputTerminal(String sourceTerminalName, Nodes nodes) {
// Retrieve the node and map to its input terminal.
JavaComputeNode jcn = (JavaComputeNode) nodes.getNode(ROLE_MAIN);
//Binding current node to the corresponding nodes based on terminals
if ("Out".equals(sourceTerminalName))
{
return jcn.OUTPUT_TERMINAL_OUT;
}
else if ("Failure".equals(sourceTerminalName))
{
return jcn.OUTPUT_TERMINAL_FAILURE;
}
else
return jcn.OUTPUT_TERMINAL_ALTERNATE;
}
String getPropertyValue( ConverterContext converterContext, String name, String defaultValue ) {
String result = defaultValue;
AbstractProperty ap = getPropertyOfSourcePrimitive(converterContext, name);
if( ap != null && ap instanceof Property ) {
Property pr = (Property)ap;
String val = pr.getValue();
if( val != null ) result = val;
}
return result;
}
}
import com.ibm.broker.config.appdev.Terminal;
import com.ibm.etools.mft.conversion.esb.extensionpoint.AbstractMediationPrimitiveConverter;
import com.ibm.etools.mft.conversion.esb.extensionpoint.Nodes;
import com.ibm.etools.mft.conversion.esb.model.mfc.AbstractProperty;
import com.ibm.etools.mft.conversion.esb.model.mfc.Property;
import com.ibm.xtq.bcel.generic.RETURN;
import com.ibm.broker.config.appdev.nodes.JavaComputeNode;
public class JavacomputeNode extends AbstractMediationPrimitiveConverter {
public String getConvertedTo() {
// Here you need to specify node name
return "JavaCompute node";
}
@Override
public String getType() {
// Here you need to specify WESB primitive name
return "CustomMediation";
}
@Override
public Nodes convert(ConverterContext converterContext) throws Exception {
Nodes nodes = createNodes(converterContext);
String nodeName = getProposedIIBNodeNameFromSourcePrimitive(converterContext);
//Below code used to create nodes
JavaComputeNode node = (JavaComputeNode) createNode(converterContext.targetFlow, nodeName, ROLE_MAIN, JavaComputeNode.class, nodes);
return nodes;
}
@Override
public Terminal getInputTerminal(String sourceTerminalName, Nodes nodes) {
// Retrieve the node and map to its input terminal. For example,
JavaComputeNode jcn = (JavaComputeNode) nodes.getNode(ROLE_MAIN);
return jcn.INPUT_TERMINAL_IN;
}
@Override
public Terminal getOutputTerminal(String sourceTerminalName, Nodes nodes) {
// Retrieve the node and map to its input terminal.
JavaComputeNode jcn = (JavaComputeNode) nodes.getNode(ROLE_MAIN);
//Binding current node to the corresponding nodes based on terminals
if ("Out".equals(sourceTerminalName))
{
return jcn.OUTPUT_TERMINAL_OUT;
}
else if ("Failure".equals(sourceTerminalName))
{
return jcn.OUTPUT_TERMINAL_FAILURE;
}
else
return jcn.OUTPUT_TERMINAL_ALTERNATE;
}
String getPropertyValue( ConverterContext converterContext, String name, String defaultValue ) {
String result = defaultValue;
AbstractProperty ap = getPropertyOfSourcePrimitive(converterContext, name);
if( ap != null && ap instanceof Property ) {
Property pr = (Property)ap;
String val = pr.getValue();
if( val != null ) result = val;
}
return result;
}
}
No comments:
Post a Comment