import eu.etaxonomy.cdm.common.monitor.IRemotingProgressMonitor;
import eu.etaxonomy.cdm.model.common.IEnumTerm;
import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;
+import eu.etaxonomy.taxeditor.operation.IFeedbackGenerator;
import eu.etaxonomy.taxeditor.operation.IPostMoniteredOperationEnabled;
import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
import eu.etaxonomy.taxeditor.operation.RemotingCdmHandler;
final UUID uuid,
final int pollInterval,
final boolean cancelable,
- final IPostMoniteredOperationEnabled postOp) {
+ final IPostMoniteredOperationEnabled postOp,
+ final IFeedbackGenerator feedbackGenerator) {
try {
// get the remoting monitor the first time to make sure that the
// run the monitor until the operation is finished
IRemotingProgressMonitor remotingMonitor;
try {
- remotingMonitor = CdmStore.getProgressMonitorClientManager().pollMonitor(label, uuid, pollInterval, postOp, monitor);
- } catch (InterruptedException ie) {
- return new Status(Status.ERROR, TaxeditorStorePlugin.PLUGIN_ID, "Operation Interrupted", ie);
+ remotingMonitor = CdmStore.getProgressMonitorClientManager().pollMonitor(label,
+ uuid,
+ pollInterval,
+ postOp,
+ feedbackGenerator,
+ monitor);
+ } catch (Exception ex) {
+ return new Status(Status.ERROR, TaxeditorStorePlugin.PLUGIN_ID, "Operation Interrupted", ex);
}
final StringBuilder reportSb = new StringBuilder();
// collect reports
}
};
-// job.addJobChangeListener(new JobChangeAdapter() {
-// @Override
-// public void done(IJobChangeEvent event) {
-// if(event.getJob().) {
-// logger.warn("in jobc change listener");
-// }
-// }
-// });
-
// configure the job
job.setProperty(IProgressConstants.KEEP_PROPERTY, true);
job.setUser(true);