56 lines
1.2 KiB
Java
56 lines
1.2 KiB
Java
package org.gcube.application.perform.service.engine.dm;
|
|
|
|
import org.gcube.data.analysis.dataminermanagercl.server.monitor.DMMonitor;
|
|
import org.gcube.data.analysis.dataminermanagercl.server.monitor.DMMonitorListener;
|
|
|
|
import lombok.AllArgsConstructor;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
@Slf4j
|
|
@AllArgsConstructor
|
|
public class DMListener implements DMMonitorListener {
|
|
|
|
private DMListenerCallback callback;
|
|
private DMMonitor selfmonitor;
|
|
|
|
|
|
|
|
@Override
|
|
public void running(double percentage) {
|
|
log.debug("Operation Running: " + percentage);
|
|
callback.running(percentage);
|
|
}
|
|
|
|
@Override
|
|
public void failed(String message, Exception exception) {
|
|
log.error("Operation failed : "+message, exception);
|
|
callback.failed(message, exception);
|
|
onFinishedComputation();
|
|
}
|
|
|
|
@Override
|
|
public void complete(double percentage) {
|
|
log.debug("Operation Completed. Perc: " + percentage);
|
|
onFinishedComputation();
|
|
callback.complete(percentage);
|
|
}
|
|
|
|
@Override
|
|
public void cancelled() {
|
|
log.debug("Operation Cancelled");
|
|
onFinishedComputation();
|
|
callback.cancelled();
|
|
}
|
|
|
|
@Override
|
|
public void accepted() {
|
|
log.debug("Operation Accepted");
|
|
callback.accepted();
|
|
}
|
|
|
|
|
|
private void onFinishedComputation() {
|
|
selfmonitor.cancel();
|
|
}
|
|
}
|