[Ltk-Model] Add support for CancellationException
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/build/SourceUnitModelContainer.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/build/SourceUnitModelContainer.java
index 6dd6185..519ab67 100644
--- a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/build/SourceUnitModelContainer.java
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/build/SourceUnitModelContainer.java
@@ -14,6 +14,8 @@
package org.eclipse.statet.ltk.model.core.build;
+import java.util.concurrent.CancellationException;
+
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.statet.jcommons.lang.NonNullByDefault;
@@ -76,7 +78,10 @@
public @Nullable AstInfo getAstInfo(final boolean ensureSync, final IProgressMonitor monitor) {
if (ensureSync) {
- getModelManager().reconcile(this, ModelManager.AST, monitor);
+ try {
+ getModelManager().reconcile(this, ModelManager.AST, monitor);
+ }
+ catch (final CancellationException e) {}
}
return this.astInfo;
}
@@ -91,7 +96,10 @@
|| currentModel == null
|| currentModel.getStamp().getContentStamp() == 0
|| currentModel.getStamp().getContentStamp() != this.unit.getContentStamp(monitor) ) {
- getModelManager().reconcile(this, syncLevel, monitor);
+ try {
+ getModelManager().reconcile(this, syncLevel, monitor);
+ }
+ catch (final CancellationException e) {}
}
}
return this.modelInfo;