Program: 74482
Project: 74482
Buggy source:
/** 
 * This is an utility function which performs the translation of a single clock actor into the format of communicating timed automata (CTA)  acceptable by model checker RED.
 * @param clockActor The actor which requires to be converted.
 * @param outputSignalName The name of the output signal. This must be derived externally.
 * @return clock description acceptable by model checker RED.
 * @throws IllegalActionException
 */
private static REDSingleEntityBean _translateClockActor(Clock clockActor,String outputSignalName) throws IllegalActionException {
  REDSingleEntityBean returnBean=new REDSingleEntityBean();
  double period=((DoubleToken)clockActor.period.getToken()).doubleValue();
  String numberOfCycles=((IntToken)clockActor.numberOfCycles.getToken()).toString();
  double stopTime=((DoubleToken)clockActor.stopTime.getToken()).doubleValue();
  String sStopTime=String.valueOf(stopTime);
  if ((numberOfCycles.equalsIgnoreCase("String_Node_Str")) || (numberOfCycles.equalsIgnoreCase("String_Node_Str"))) {
    if (sStopTime.equalsIgnoreCase("String_Node_Str")) {
      REDSingleEntityBean bean=new REDSingleEntityBean();
      bean._defineConstants.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ String.valueOf(period)+ "String_Node_Str");
      bean._clockSet.add(clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + outputSignalName.trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str");
      REDModuleNameInitialBean innerBean=new REDModuleNameInitialBean();
      innerBean._name=clockActor.getName().trim();
      innerBean._initialStateDescription=clockActor.getName().trim() + "String_Node_Str";
      bean._nameInitialState=innerBean;
      return bean;
    }
 else {
      REDSingleEntityBean bean=new REDSingleEntityBean();
      bean._defineConstants.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ String.valueOf(period)+ "String_Node_Str");
      bean._defineConstants.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ String.valueOf(stopTime)+ "String_Node_Str");
      bean._clockSet.add(clockActor.getName().trim() + "String_Node_Str");
      bean._clockSet.add(clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + outputSignalName.trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str");
      REDModuleNameInitialBean innerBean=new REDModuleNameInitialBean();
      innerBean._name=clockActor.getName().trim();
      innerBean._initialStateDescription=clockActor.getName().trim() + "String_Node_Str";
      bean._nameInitialState=innerBean;
      return bean;
    }
  }
 else {
    if (sStopTime.equalsIgnoreCase("String_Node_Str")) {
      REDSingleEntityBean bean=new REDSingleEntityBean();
      bean._defineConstants.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ String.valueOf(period)+ "String_Node_Str");
      bean._defineConstants.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ String.valueOf(numberOfCycles)+ "String_Node_Str");
      bean._declaredVariables.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ "String_Node_Str"+ numberOfCycles+ "String_Node_Str");
      bean._clockSet.add(clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + outputSignalName.trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str");
      REDModuleNameInitialBean innerBean=new REDModuleNameInitialBean();
      innerBean._name=clockActor.getName().trim();
      innerBean._initialStateDescription=clockActor.getName().trim() + "String_Node_Str";
      bean._nameInitialState=innerBean;
      bean._variableInitialDescriptionSet.add(clockActor.getName().trim() + "String_Node_Str" + "String_Node_Str");
      return bean;
    }
 else {
      REDSingleEntityBean bean=new REDSingleEntityBean();
      bean._defineConstants.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ String.valueOf(period)+ "String_Node_Str");
      bean._defineConstants.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ String.valueOf(numberOfCycles)+ "String_Node_Str");
      bean._defineConstants.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ String.valueOf(stopTime)+ "String_Node_Str");
      bean._declaredVariables.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ "String_Node_Str"+ numberOfCycles+ "String_Node_Str");
      bean._clockSet.add(clockActor.getName().trim() + "String_Node_Str");
      bean._clockSet.add(clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + outputSignalName.trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str");
      REDModuleNameInitialBean innerBean=new REDModuleNameInitialBean();
      innerBean._name=clockActor.getName().trim();
      innerBean._initialStateDescription=clockActor.getName().trim() + "String_Node_Str";
      bean._nameInitialState=innerBean;
      bean._variableInitialDescriptionSet.add(clockActor.getName().trim() + "String_Node_Str" + "String_Node_Str");
      return bean;
    }
  }
}

Fixed version (ground truth):
/** 
 * This is an utility function which performs the translation of a single clock actor into the format of communicating timed automata (CTA)  acceptable by model checker RED.
 * @param clockActor The actor which requires to be converted.
 * @param outputSignalName The name of the output signal. This must be derived externally.
 * @return clock description acceptable by model checker RED.
 * @throws IllegalActionException
 */
private static REDSingleEntityBean _translateClockActor(Clock clockActor,String outputSignalName) throws IllegalActionException {
  double period=((DoubleToken)clockActor.period.getToken()).doubleValue();
  String numberOfCycles=((IntToken)clockActor.numberOfCycles.getToken()).toString();
  double stopTime=((DoubleToken)clockActor.stopTime.getToken()).doubleValue();
  String sStopTime=String.valueOf(stopTime);
  if ((numberOfCycles.equalsIgnoreCase("String_Node_Str")) || (numberOfCycles.equalsIgnoreCase("String_Node_Str"))) {
    if (sStopTime.equalsIgnoreCase("String_Node_Str")) {
      REDSingleEntityBean bean=new REDSingleEntityBean();
      bean._defineConstants.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ String.valueOf(period)+ "String_Node_Str");
      bean._clockSet.add(clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + outputSignalName.trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str");
      REDModuleNameInitialBean innerBean=new REDModuleNameInitialBean();
      innerBean._name=clockActor.getName().trim();
      innerBean._initialStateDescription=clockActor.getName().trim() + "String_Node_Str";
      bean._nameInitialState=innerBean;
      return bean;
    }
 else {
      REDSingleEntityBean bean=new REDSingleEntityBean();
      bean._defineConstants.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ String.valueOf(period)+ "String_Node_Str");
      bean._defineConstants.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ String.valueOf(stopTime)+ "String_Node_Str");
      bean._clockSet.add(clockActor.getName().trim() + "String_Node_Str");
      bean._clockSet.add(clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + outputSignalName.trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str");
      REDModuleNameInitialBean innerBean=new REDModuleNameInitialBean();
      innerBean._name=clockActor.getName().trim();
      innerBean._initialStateDescription=clockActor.getName().trim() + "String_Node_Str";
      bean._nameInitialState=innerBean;
      return bean;
    }
  }
 else {
    if (sStopTime.equalsIgnoreCase("String_Node_Str")) {
      REDSingleEntityBean bean=new REDSingleEntityBean();
      bean._defineConstants.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ String.valueOf(period)+ "String_Node_Str");
      bean._defineConstants.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ String.valueOf(numberOfCycles)+ "String_Node_Str");
      bean._declaredVariables.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ "String_Node_Str"+ numberOfCycles+ "String_Node_Str");
      bean._clockSet.add(clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + outputSignalName.trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str");
      REDModuleNameInitialBean innerBean=new REDModuleNameInitialBean();
      innerBean._name=clockActor.getName().trim();
      innerBean._initialStateDescription=clockActor.getName().trim() + "String_Node_Str";
      bean._nameInitialState=innerBean;
      bean._variableInitialDescriptionSet.add(clockActor.getName().trim() + "String_Node_Str" + "String_Node_Str");
      return bean;
    }
 else {
      REDSingleEntityBean bean=new REDSingleEntityBean();
      bean._defineConstants.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ String.valueOf(period)+ "String_Node_Str");
      bean._defineConstants.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ String.valueOf(numberOfCycles)+ "String_Node_Str");
      bean._defineConstants.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ String.valueOf(stopTime)+ "String_Node_Str");
      bean._declaredVariables.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ "String_Node_Str"+ numberOfCycles+ "String_Node_Str");
      bean._clockSet.add(clockActor.getName().trim() + "String_Node_Str");
      bean._clockSet.add(clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + outputSignalName.trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str"+ clockActor.getName().trim()+ "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str");
      bean._moduleDescription.append("String_Node_Str" + clockActor.getName().trim() + "String_Node_Str");
      bean._moduleDescription.append("String_Node_Str");
      REDModuleNameInitialBean innerBean=new REDModuleNameInitialBean();
      innerBean._name=clockActor.getName().trim();
      innerBean._initialStateDescription=clockActor.getName().trim() + "String_Node_Str";
      bean._nameInitialState=innerBean;
      bean._variableInitialDescriptionSet.add(clockActor.getName().trim() + "String_Node_Str" + "String_Node_Str");
      return bean;
    }
  }
}