import javax.inject.Inject;
import org.apache.log4j.Logger;
-import org.eclipse.core.runtime.Assert;
import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.e4.ui.di.UISynchronize;
import org.eclipse.e4.ui.model.application.MApplication;
import org.eclipse.e4.ui.model.application.ui.basic.MPart;
import eu.etaxonomy.cdm.api.service.UpdateResult;
import eu.etaxonomy.cdm.api.service.config.SecundumForSubtreeConfigurator;
import eu.etaxonomy.cdm.common.monitor.IRemotingProgressMonitor;
-import eu.etaxonomy.taxeditor.model.AbstractUtility;
+import eu.etaxonomy.taxeditor.editor.EditorUtil;
import eu.etaxonomy.taxeditor.navigation.l10n.Messages;
import eu.etaxonomy.taxeditor.operation.IPostMoniteredOperationEnabled;
private static final Logger logger = Logger.getLogger(SetSecundumForSubtreeOperation.class);
@Inject
- UISynchronize sync;
+ private UISynchronize sync;
public SetSecundumForSubtreeOperation(Object source, boolean async, UUID taxonNodeUuid, EPartService partService,
}
- /**
- * {@inheritDoc}
- */
@Override
protected UpdateResult doUpdateExecute(IProgressMonitor monitor, IAdaptable info) throws Exception {
+ EditorUtil.checkForChanges(null, partService);
+
// runMoniteredOperation();
runMoniteredOperation();
- updateNameEditors();
+// updateNameEditors();
// Job job = createJob(monitor);
// // configure the job
// job.setProperty(IProgressConstants.KEEP_PROPERTY, true);
}
- private Job createJob(IProgressMonitor monitor){
- Assert.isNotNull(config, "Configuration may not be null");
-
- final Display display = Display.getDefault();
-
- Job job = new Job(Messages.SetSecundumForSubtreeOperation_SET_SEC_TASK) {
- @Override
- protected IStatus run(IProgressMonitor monitor) {
- if (config instanceof SecundumForSubtreeConfigurator){
- updateResult = taxonNodeService.setSecundumForSubtree((SecundumForSubtreeConfigurator)config);
- }else{
- return Status.CANCEL_STATUS;
- }
- updateNameEditors();
- return Status.OK_STATUS;
-
- }
- };
- return job;
- }
+// private Job createJob(IProgressMonitor monitor){
+// Assert.isNotNull(config, "Configuration may not be null");
+//
+// final Display display = Display.getDefault();
+//
+// Job job = new Job(Messages.SetSecundumForSubtreeOperation_SET_SEC_TASK) {
+// @Override
+// protected IStatus run(IProgressMonitor monitor) {
+// if (config instanceof SecundumForSubtreeConfigurator){
+// updateResult = taxonNodeService.setSecundumForSubtree((SecundumForSubtreeConfigurator)config);
+// }else{
+// return Status.CANCEL_STATUS;
+// }
+//
+// return Status.OK_STATUS;
+//
+// }
+// };
+// return job;
+// }
public void runMoniteredOperation() {
ITaxonNodeService nodeService;
- final UUID uuid = longRunningTaskService.monitLongRunningTask((SecundumForSubtreeConfigurator)config);
+ final UUID uuid = longRunningTaskService.monitLongRunningTask(config);
Display.getDefault().asyncExec(new Runnable() {
@Override
public void run() {
- AbstractUtility.executeMoniteredOperation("Set Secundum Reference for Subtree: ",
+ EditorUtil.executeMoniteredOperation("Set Secundum Reference for Subtree: ",
uuid,
1000,
false,
SetSecundumForSubtreeOperation.this,
- null);
+ null,
+ true);
+
}
});
-
-
}
-
-
- /**
- * {@inheritDoc}
- */
@Override
public void postOperation(IRemotingProgressMonitor monitor) {
// TODO Auto-generated method stub