perform-service_broken/src/main/java/org/gcube/application/perform/service/engine/dm/DMListener.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();
}
}