SwingWorker<Void, Void> r = new SwingWorker<Void, Void>() {
@Override
public Void doInBackground() {
SerializedParameterization config = new SerializedParameterization(params);
config.tryInstantiate(LoggingStep.class);
KDDTask task = config.tryInstantiate(KDDTask.class);
try {
config.logUnusedParameters();
if(config.getErrors().size() == 0) {
task.run();
}
else {
reportErrors(config);
}
logger.debug("Task completed successfully.");