String newName = generateExperimentName(experiment.getExperimentName());
String newName = generateExperimentName(experiment.getExperimentName(), false); if (newName == null) return null;
  protected Experiment copyExperiment(Experiment experiment) {    String newName = generateExperimentName(experiment.getExperimentName());    final Experiment experimentCopy = (Experiment)experiment.copy(newName);    // save copy in database    GUIUtils.timeConsumingTaskStart(organizer);    try {      new Thread("DuplicateExperiment") {          public void run() {            experimentCopy.saveToDb(saveToDbConflictHandler);            GUIUtils.timeConsumingTaskEnd(organizer);          }        }.start();    } catch (RuntimeException re) {      if(log.isErrorEnabled()) {        log.error("Runtime exception duplicating experiment", re);      }      GUIUtils.timeConsumingTaskEnd(organizer);    }    DefaultMutableTreeNode node =       (DefaultMutableTreeNode)findNode(experiment).getParent();    if (node == null) {      if (log.isErrorEnabled()) {        log.error("Experiment not found in workspace: " +                   experiment.getExperimentName());      }    }    // add copy as sibling of original    addExperimentAndComponentsToWorkspace(experimentCopy, node);    return experimentCopy;  }