Program: 148065
Project: 148065
Buggy source:
/** 
 * DOC jsxie Comment method "createTransformer".
 * @param jobVersion
 */
private WSTransformerV2E createTransformer(String jobName,String jobVersion,JobOptionsDialog dialog){
  String itemstr="String_Node_Str";
  if (dialog.isExchange()) {
    itemstr="String_Node_Str" + "String_Node_Str" + "String_Node_Str";
  }
 else {
    itemstr="String_Node_Str" + "String_Node_Str" + "String_Node_Str";
  }
  final String TRANSFORMER_PLUGIN="String_Node_Str";
  WSTransformerV2E transformer=MdmserverobjectFactory.eINSTANCE.createWSTransformerV2E();
  try {
    ArrayList<WSTransformerProcessStepE> list=new ArrayList<WSTransformerProcessStepE>();
    WSTransformerProcessStepE steps1=MdmserverobjectFactory.eINSTANCE.createWSTransformerProcessStepE();
    List<WSTransformerVariablesMappingE> inItems=new ArrayList<WSTransformerVariablesMappingE>();
    WSTransformerVariablesMappingE inputLine=MdmserverobjectFactory.eINSTANCE.createWSTransformerVariablesMappingE();
    inputLine.setPipelineVariable("String_Node_Str");
    inputLine.setPluginVariable("String_Node_Str");
    inItems.add(inputLine);
    List<WSTransformerVariablesMappingE> outItems=new ArrayList<WSTransformerVariablesMappingE>();
    WSTransformerVariablesMappingE outputLine=MdmserverobjectFactory.eINSTANCE.createWSTransformerVariablesMappingE();
    outputLine.setPipelineVariable("String_Node_Str");
    outputLine.setPluginVariable("String_Node_Str");
    outItems.add(outputLine);
    steps1.setPluginJNDI(TRANSFORMER_PLUGIN);
    steps1.setDescription("String_Node_Str");
    steps1.setParameters(itemstr);
    steps1.getInputMappings().addAll(inItems);
    steps1.getOutputMappings().addAll(outItems);
    steps1.setDisabled(false);
    WSTransformerProcessStepE steps2=MdmserverobjectFactory.eINSTANCE.createWSTransformerProcessStepE();
    List<WSTransformerVariablesMappingE> inItems2=new ArrayList<WSTransformerVariablesMappingE>();
    WSTransformerVariablesMappingE inputLine2=MdmserverobjectFactory.eINSTANCE.createWSTransformerVariablesMappingE();
    inputLine2.setPipelineVariable("String_Node_Str");
    inputLine2.setPluginVariable("String_Node_Str");
    inItems2.add(inputLine2);
    List<WSTransformerVariablesMappingE> outItems2=new ArrayList<WSTransformerVariablesMappingE>();
    WSTransformerVariablesMappingE outputLine2=MdmserverobjectFactory.eINSTANCE.createWSTransformerVariablesMappingE();
    outputLine2.setPipelineVariable("String_Node_Str");
    outputLine2.setPluginVariable("String_Node_Str");
    outItems2.add(outputLine2);
    steps2.setPluginJNDI("String_Node_Str");
    steps2.setDescription("String_Node_Str");
    String parameter="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str";
    steps2.setParameters(parameter);
    steps2.getInputMappings().addAll(inItems2);
    steps2.getOutputMappings().addAll(outItems2);
    steps2.setDisabled(false);
    WSTransformerProcessStepE steps3=MdmserverobjectFactory.eINSTANCE.createWSTransformerProcessStepE();
    List<WSTransformerVariablesMappingE> inItems3=new ArrayList<WSTransformerVariablesMappingE>();
    WSTransformerVariablesMappingE inputLine3=MdmserverobjectFactory.eINSTANCE.createWSTransformerVariablesMappingE();
    inputLine3.setPipelineVariable("String_Node_Str");
    inputLine3.setPluginVariable("String_Node_Str");
    inItems3.add(inputLine3);
    List<WSTransformerVariablesMappingE> outItems3=new ArrayList<WSTransformerVariablesMappingE>();
    WSTransformerVariablesMappingE outputLine3=MdmserverobjectFactory.eINSTANCE.createWSTransformerVariablesMappingE();
    outputLine3.setPipelineVariable("String_Node_Str");
    outputLine3.setPluginVariable("String_Node_Str");
    outItems3.add(outputLine3);
    steps3.setPluginJNDI("String_Node_Str");
    steps3.setDescription("String_Node_Str");
    String server="String_Node_Str";
    boolean isWar=dialog.isWar();
    if (!isWar) {
      parameter="String_Node_Str" + "String_Node_Str" + jobName + "String_Node_Str"+ jobVersion+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str";
    }
 else {
      parameter="String_Node_Str" + "String_Node_Str" + server + "String_Node_Str"+ jobVersion+ "String_Node_Str"+ jobName+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str";
    }
    steps3.setParameters(parameter);
    steps3.getInputMappings().addAll(inItems3);
    steps3.getOutputMappings().addAll(outItems3);
    steps3.setDisabled(false);
    transformer.setName(PREFIX + jobName);
    transformer.setDescription("String_Node_Str" + jobName);
    list.add(steps1);
    list.add(steps2);
    list.add(steps3);
    transformer.getProcessSteps().addAll(list);
  }
 catch (  Exception e) {
    log.error(e.getMessage(),e);
  }
  return transformer;
}

Fixed version (ground truth):
/** 
 * DOC jsxie Comment method "createTransformer".
 * @param jobVersion
 */
private WSTransformerV2E createTransformer(String jobName,String jobVersion,JobOptionsDialog dialog){
  String itemstr="String_Node_Str";
  if (dialog.isExchange()) {
    itemstr="String_Node_Str" + "String_Node_Str" + "String_Node_Str";
  }
 else {
    itemstr="String_Node_Str" + "String_Node_Str" + "String_Node_Str";
  }
  final String TRANSFORMER_PLUGIN="String_Node_Str";
  WSTransformerV2E transformer=MdmserverobjectFactory.eINSTANCE.createWSTransformerV2E();
  try {
    ArrayList<WSTransformerProcessStepE> list=new ArrayList<WSTransformerProcessStepE>();
    WSTransformerProcessStepE steps1=MdmserverobjectFactory.eINSTANCE.createWSTransformerProcessStepE();
    List<WSTransformerVariablesMappingE> inItems=new ArrayList<WSTransformerVariablesMappingE>();
    WSTransformerVariablesMappingE inputLine=MdmserverobjectFactory.eINSTANCE.createWSTransformerVariablesMappingE();
    inputLine.setPipelineVariable("String_Node_Str");
    inputLine.setPluginVariable("String_Node_Str");
    inItems.add(inputLine);
    List<WSTransformerVariablesMappingE> outItems=new ArrayList<WSTransformerVariablesMappingE>();
    WSTransformerVariablesMappingE outputLine=MdmserverobjectFactory.eINSTANCE.createWSTransformerVariablesMappingE();
    outputLine.setPipelineVariable("String_Node_Str");
    outputLine.setPluginVariable("String_Node_Str");
    outItems.add(outputLine);
    steps1.setPluginJNDI(TRANSFORMER_PLUGIN);
    steps1.setDescription("String_Node_Str");
    steps1.setParameters(itemstr);
    steps1.getInputMappings().addAll(inItems);
    steps1.getOutputMappings().addAll(outItems);
    steps1.setDisabled(false);
    WSTransformerProcessStepE steps2=MdmserverobjectFactory.eINSTANCE.createWSTransformerProcessStepE();
    List<WSTransformerVariablesMappingE> inItems2=new ArrayList<WSTransformerVariablesMappingE>();
    WSTransformerVariablesMappingE inputLine2=MdmserverobjectFactory.eINSTANCE.createWSTransformerVariablesMappingE();
    inputLine2.setPipelineVariable("String_Node_Str");
    inputLine2.setPluginVariable("String_Node_Str");
    inItems2.add(inputLine2);
    List<WSTransformerVariablesMappingE> outItems2=new ArrayList<WSTransformerVariablesMappingE>();
    WSTransformerVariablesMappingE outputLine2=MdmserverobjectFactory.eINSTANCE.createWSTransformerVariablesMappingE();
    outputLine2.setPipelineVariable("String_Node_Str");
    outputLine2.setPluginVariable("String_Node_Str");
    outItems2.add(outputLine2);
    steps2.setPluginJNDI("String_Node_Str");
    steps2.setDescription("String_Node_Str");
    String parameter="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str";
    steps2.setParameters(parameter);
    steps2.getInputMappings().addAll(inItems2);
    steps2.getOutputMappings().addAll(outItems2);
    steps2.setDisabled(false);
    WSTransformerProcessStepE steps3=MdmserverobjectFactory.eINSTANCE.createWSTransformerProcessStepE();
    List<WSTransformerVariablesMappingE> inItems3=new ArrayList<WSTransformerVariablesMappingE>();
    WSTransformerVariablesMappingE inputLine3=MdmserverobjectFactory.eINSTANCE.createWSTransformerVariablesMappingE();
    inputLine3.setPipelineVariable("String_Node_Str");
    inputLine3.setPluginVariable("String_Node_Str");
    inItems3.add(inputLine3);
    List<WSTransformerVariablesMappingE> outItems3=new ArrayList<WSTransformerVariablesMappingE>();
    WSTransformerVariablesMappingE outputLine3=MdmserverobjectFactory.eINSTANCE.createWSTransformerVariablesMappingE();
    outputLine3.setPipelineVariable("String_Node_Str");
    outputLine3.setPluginVariable("String_Node_Str");
    outItems3.add(outputLine3);
    steps3.setPluginJNDI("String_Node_Str");
    steps3.setDescription("String_Node_Str");
    String server="String_Node_Str";
    boolean isWar=dialog.isWar();
    if (!isWar) {
      parameter="String_Node_Str" + "String_Node_Str" + jobName + "String_Node_Str"+ jobVersion+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str";
    }
 else {
      parameter="String_Node_Str" + "String_Node_Str" + server + "String_Node_Str"+ jobName+ "String_Node_Str"+ jobVersion+ "String_Node_Str"+ jobName+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str";
    }
    steps3.setParameters(parameter);
    steps3.getInputMappings().addAll(inItems3);
    steps3.getOutputMappings().addAll(outItems3);
    steps3.setDisabled(false);
    transformer.setName(PREFIX + jobName);
    transformer.setDescription("String_Node_Str" + jobName);
    list.add(steps1);
    list.add(steps2);
    list.add(steps3);
    transformer.getProcessSteps().addAll(list);
  }
 catch (  Exception e) {
    log.error(e.getMessage(),e);
  }
  return transformer;
}