Program: 24995
Project: 24995
Buggy source:
/** 
 * <p>Lets configuring the destruction time default and maximum value.</p> <p><i><u>note:</u> A new controller is created if needed. Otherwise the current one (if it is an instance of   {@link ExecutionDurationController}) is updated.</i></p>
 * @param defaultTime		Default time since the job creation and its destruction.
 * @param defaultTimeUnit	Unit of the default time (i.e. minutes, days, ...).
 * @param maxTime			Maximum time since the job creation and its destruction that a user can set when creating/initializing a job.
 * @param maxTimeUnit		Unit of the maximum time (i.e. minutes, days, ...).
 * @param allowModif		<i>true</i> to allow the modification of this parameter after its initialization, <i>false</i> otherwise.
 * @see DestructionTimeController
 */
public final void configureDestruction(final int defaultTime,final DateField defaultTimeUnit,final int maxTime,final DateField maxTimeUnit,final boolean allowModif){
  InputParamController controller=inputParamControllers.get(UWSJob.PARAM_DESTRUCTION_TIME);
  DestructionTimeController destructionController;
  if (controller == null || !(controller instanceof DestructionTimeController)) {
    destructionController=new DestructionTimeController();
    inputParamControllers.put(UWSJob.PARAM_DESTRUCTION_TIME,controller);
  }
 else   destructionController=(DestructionTimeController)controller;
  destructionController.setMaxDestructionInterval(maxTime,maxTimeUnit);
  destructionController.setDefaultDestructionInterval(defaultTime,defaultTimeUnit);
  destructionController.allowModification(allowModif);
}

Fixed version (ground truth):
/** 
 * <p>Lets configuring the destruction time default and maximum value.</p> <p><i><u>note:</u> A new controller is created if needed. Otherwise the current one (if it is an instance of   {@link ExecutionDurationController}) is updated.</i></p>
 * @param defaultTime		Default time since the job creation and its destruction.
 * @param defaultTimeUnit	Unit of the default time (i.e. minutes, days, ...).
 * @param maxTime			Maximum time since the job creation and its destruction that a user can set when creating/initializing a job.
 * @param maxTimeUnit		Unit of the maximum time (i.e. minutes, days, ...).
 * @param allowModif		<i>true</i> to allow the modification of this parameter after its initialization, <i>false</i> otherwise.
 * @see DestructionTimeController
 */
public final void configureDestruction(final int defaultTime,final DateField defaultTimeUnit,final int maxTime,final DateField maxTimeUnit,final boolean allowModif){
  InputParamController controller=inputParamControllers.get(UWSJob.PARAM_DESTRUCTION_TIME);
  DestructionTimeController destructionController;
  if (controller == null || !(controller instanceof DestructionTimeController)) {
    destructionController=new DestructionTimeController();
    inputParamControllers.put(UWSJob.PARAM_DESTRUCTION_TIME,destructionController);
  }
 else   destructionController=(DestructionTimeController)controller;
  destructionController.setMaxDestructionInterval(maxTime,maxTimeUnit);
  destructionController.setDefaultDestructionInterval(defaultTime,defaultTimeUnit);
  destructionController.allowModification(allowModif);
}