Bug 575365: [Model] Add SourceUnitIssueSupport for easier implementation
of source units
Change-Id: Ic933ad4993aa54e61f99cb44ad35fb7187562224
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/internal/ltk/core/SourceUnitManagerImpl.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/internal/ltk/core/SourceUnitManagerImpl.java
index 915c809..0f4ecea 100644
--- a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/internal/ltk/core/SourceUnitManagerImpl.java
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/internal/ltk/core/SourceUnitManagerImpl.java
@@ -46,6 +46,7 @@
import org.eclipse.statet.ltk.core.IExtContentTypeManager;
import org.eclipse.statet.ltk.core.Ltk;
+import org.eclipse.statet.ltk.core.LtkCore;
import org.eclipse.statet.ltk.core.WorkingContext;
import org.eclipse.statet.ltk.model.core.ModelTypeDescriptor;
import org.eclipse.statet.ltk.model.core.SourceUnitFactory;
@@ -194,7 +195,7 @@
}
}
catch (final Exception e) {
- LtkCorePlugin.log(new Status(IStatus.ERROR, Ltk.BUNDLE_ID, 0,
+ LtkCorePlugin.log(new Status(IStatus.ERROR, LtkCore.BUNDLE_ID, 0,
"Error loading working context contributions", e )); //$NON-NLS-1$
}
}
@@ -513,7 +514,7 @@
}
}
catch (final CoreException | IOException | UnsupportedOperationException e) {
- LtkCorePlugin.log(new Status(IStatus.ERROR, Ltk.BUNDLE_ID, 0,
+ LtkCorePlugin.log(new Status(IStatus.ERROR, LtkCore.BUNDLE_ID, 0,
"An error occurred when trying to detect content type of " + from,
e ));
return null;
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/core/Ltk.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/core/Ltk.java
index 11faeeb..7be6e6d 100644
--- a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/core/Ltk.java
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/core/Ltk.java
@@ -23,9 +23,6 @@
public class Ltk {
- public static final String BUNDLE_ID= "org.eclipse.statet.ltk.core"; //$NON-NLS-1$
-
-
public static final WorkingContext PERSISTENCE_CONTEXT= new WorkingContext("persistence.default"); //$NON-NLS-1$
public static final WorkingContext EDITOR_CONTEXT= new WorkingContext("editor.default"); //$NON-NLS-1$
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/core/LtkCore.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/core/LtkCore.java
new file mode 100644
index 0000000..014c722
--- /dev/null
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/core/LtkCore.java
@@ -0,0 +1,33 @@
+/*=============================================================================#
+ # Copyright (c) 2021 Stephan Wahlbrink and others.
+ #
+ # This program and the accompanying materials are made available under the
+ # terms of the Eclipse Public License 2.0 which is available at
+ # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
+ # which is available at https://www.apache.org/licenses/LICENSE-2.0.
+ #
+ # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
+ #
+ # Contributors:
+ # Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
+ #=============================================================================*/
+
+package org.eclipse.statet.ltk.core;
+
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+
+
+@NonNullByDefault
+public class LtkCore {
+
+
+ public static final String BUNDLE_ID= "org.eclipse.statet.ltk.core"; //$NON-NLS-1$
+
+
+ public static final int NA_OFFSET= Integer.MIN_VALUE;
+
+
+ private LtkCore() {
+ }
+
+}
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/build/SourceUnitIssueSupport.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/build/SourceUnitIssueSupport.java
new file mode 100644
index 0000000..753d330
--- /dev/null
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/build/SourceUnitIssueSupport.java
@@ -0,0 +1,37 @@
+/*=============================================================================#
+ # Copyright (c) 2021 Stephan Wahlbrink and others.
+ #
+ # This program and the accompanying materials are made available under the
+ # terms of the Eclipse Public License 2.0 which is available at
+ # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
+ # which is available at https://www.apache.org/licenses/LICENSE-2.0.
+ #
+ # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
+ #
+ # Contributors:
+ # Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
+ #=============================================================================*/
+
+package org.eclipse.statet.ltk.model.core.build;
+
+import org.eclipse.core.runtime.CoreException;
+
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+import org.eclipse.statet.jcommons.lang.Nullable;
+
+import org.eclipse.statet.ltk.issues.core.IssueRequestor;
+import org.eclipse.statet.ltk.issues.core.IssueTypeSet;
+import org.eclipse.statet.ltk.model.core.element.SourceUnit;
+
+
+@NonNullByDefault
+public interface SourceUnitIssueSupport {
+
+
+ IssueTypeSet getIssueTypeSet();
+
+ void clearIssues(SourceUnit sourceUnit) throws CoreException;
+
+ @Nullable IssueRequestor createIssueRequestor(SourceUnit sourceUnit);
+
+}
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 7f00f13..bff9b7f 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
@@ -16,7 +16,6 @@
import java.util.concurrent.CancellationException;
-import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.statet.jcommons.lang.NonNullByDefault;
@@ -26,9 +25,6 @@
import org.eclipse.statet.ltk.core.Ltk;
import org.eclipse.statet.ltk.core.WorkingContext;
import org.eclipse.statet.ltk.core.source.SourceContent;
-import org.eclipse.statet.ltk.issues.core.IssueRequestor;
-import org.eclipse.statet.ltk.issues.core.IssueTypeSet;
-import org.eclipse.statet.ltk.issues.core.impl.ResourceMarkerIssueRequestor;
import org.eclipse.statet.ltk.model.core.ModelManager;
import org.eclipse.statet.ltk.model.core.element.SourceUnit;
import org.eclipse.statet.ltk.model.core.element.SourceUnitModelInfo;
@@ -39,18 +35,19 @@
public abstract class SourceUnitModelContainer<TSourceUnit extends SourceUnit, TModelInfo extends SourceUnitModelInfo> {
- private final @Nullable WorkingContext mode;
-
private final TSourceUnit unit;
private @Nullable AstInfo astInfo;
private @Nullable TModelInfo modelInfo;
+
+ private final @Nullable SourceUnitIssueSupport issueSupport;
- public SourceUnitModelContainer(final TSourceUnit unit) {
+ public SourceUnitModelContainer(final TSourceUnit unit,
+ final @Nullable SourceUnitIssueSupport issueSupport) {
this.unit= unit;
- this.mode= getMode(unit);
+ this.issueSupport= issueSupport;
}
@@ -58,10 +55,6 @@
public abstract boolean isContainerFor(String modelTypeId);
- public @Nullable IssueTypeSet getIssueTypeSet() {
- return null;
- }
-
protected @Nullable WorkingContext getMode(final TSourceUnit su) {
if (su instanceof WorkspaceSourceUnit) {
@@ -70,10 +63,6 @@
return null;
}
- protected final @Nullable WorkingContext getMode() {
- return this.mode;
- }
-
public TSourceUnit getSourceUnit() {
return this.unit;
@@ -121,7 +110,7 @@
}
public @Nullable AstInfo getCurrentAst() {
- if (this.mode == Ltk.PERSISTENCE_CONTEXT) {
+ if (this.unit.getWorkingContext() == Ltk.PERSISTENCE_CONTEXT) {
final @Nullable TModelInfo model= getCurrentModel();
if (model != null) {
return model.getAst();
@@ -132,7 +121,7 @@
}
public void setAst(final AstInfo ast) {
- if (this.mode == Ltk.PERSISTENCE_CONTEXT) {
+ if (this.unit.getWorkingContext() == Ltk.PERSISTENCE_CONTEXT) {
return;
}
this.astInfo= ast;
@@ -153,25 +142,8 @@
}
- public void clearIssues() throws CoreException {
- final var mode= getMode();
- if (mode == Ltk.PERSISTENCE_CONTEXT) {
- final IssueTypeSet issueTypeSet= getIssueTypeSet();
- if (issueTypeSet != null) {
- ResourceMarkerIssueRequestor.clear(getSourceUnit().getResource(), issueTypeSet);
- }
- }
- }
-
- public @Nullable IssueRequestor createIssueRequestor() {
- final var mode= getMode();
- if (mode == Ltk.PERSISTENCE_CONTEXT) {
- final IssueTypeSet issueTypeSet= getIssueTypeSet();
- if (issueTypeSet != null) {
- return ResourceMarkerIssueRequestor.create(getSourceUnit().getResource(), issueTypeSet);
- }
- }
- return null;
+ public @Nullable SourceUnitIssueSupport getIssueSupport() {
+ return this.issueSupport;
}
}
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/impl/AbstractModelEventJob.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/impl/AbstractModelEventJob.java
index 8c6e31b..d41bd98 100644
--- a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/impl/AbstractModelEventJob.java
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/impl/AbstractModelEventJob.java
@@ -29,7 +29,7 @@
import org.eclipse.statet.jcommons.lang.Nullable;
import org.eclipse.statet.internal.ltk.core.LtkCorePlugin;
-import org.eclipse.statet.ltk.core.Ltk;
+import org.eclipse.statet.ltk.core.LtkCore;
import org.eclipse.statet.ltk.core.WorkingContext;
import org.eclipse.statet.ltk.model.core.ElementChangedEvent;
import org.eclipse.statet.ltk.model.core.ElementChangedListener;
@@ -144,7 +144,7 @@
task.run();
}
catch (final Throwable e) {
- LtkCorePlugin.log(new Status(IStatus.ERROR, Ltk.BUNDLE_ID,
+ LtkCorePlugin.log(new Status(IStatus.ERROR, LtkCore.BUNDLE_ID,
String.format("An error occurred when firing model event for %1$s.", //$NON-NLS-1$
this.modelManager.getModelTypeId() ),
e ));
@@ -177,7 +177,7 @@
listener.elementChanged(event);
}
catch (final Exception | LinkageError | AssertionError e) {
- LtkCorePlugin.log(new Status(IStatus.ERROR, Ltk.BUNDLE_ID,
+ LtkCorePlugin.log(new Status(IStatus.ERROR, LtkCore.BUNDLE_ID,
String.format("An error occurred while handling a model element change for %1$s.", //$NON-NLS-1$
this.modelManager.getModelTypeId() ),
e ));
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/impl/ResourceIssueSupport.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/impl/ResourceIssueSupport.java
new file mode 100644
index 0000000..aa033bd
--- /dev/null
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/model/core/impl/ResourceIssueSupport.java
@@ -0,0 +1,56 @@
+/*=============================================================================#
+ # Copyright (c) 2021 Stephan Wahlbrink and others.
+ #
+ # This program and the accompanying materials are made available under the
+ # terms of the Eclipse Public License 2.0 which is available at
+ # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
+ # which is available at https://www.apache.org/licenses/LICENSE-2.0.
+ #
+ # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
+ #
+ # Contributors:
+ # Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
+ #=============================================================================*/
+
+package org.eclipse.statet.ltk.model.core.impl;
+
+import org.eclipse.core.runtime.CoreException;
+
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+import org.eclipse.statet.jcommons.lang.Nullable;
+
+import org.eclipse.statet.ltk.issues.core.IssueRequestor;
+import org.eclipse.statet.ltk.issues.core.IssueTypeSet;
+import org.eclipse.statet.ltk.issues.core.impl.ResourceMarkerIssueRequestor;
+import org.eclipse.statet.ltk.model.core.build.SourceUnitIssueSupport;
+import org.eclipse.statet.ltk.model.core.element.SourceUnit;
+
+
+@NonNullByDefault
+public class ResourceIssueSupport implements SourceUnitIssueSupport {
+
+
+ private final IssueTypeSet issueTypeSet;
+
+
+ public ResourceIssueSupport(final IssueTypeSet issueTypeSet) {
+ this.issueTypeSet= issueTypeSet;
+ }
+
+
+ @Override
+ public IssueTypeSet getIssueTypeSet() {
+ return this.issueTypeSet;
+ }
+
+ @Override
+ public void clearIssues(final SourceUnit sourceUnit) throws CoreException {
+ ResourceMarkerIssueRequestor.clear(sourceUnit.getResource(), getIssueTypeSet());
+ }
+
+ @Override
+ public @Nullable IssueRequestor createIssueRequestor(final SourceUnit sourceUnit) {
+ return ResourceMarkerIssueRequestor.create(sourceUnit.getResource(), getIssueTypeSet());
+ }
+
+}
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/project/core/builder/ProjectBuildTask.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/project/core/builder/ProjectBuildTask.java
index 90f3774..23c33b4 100644
--- a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/project/core/builder/ProjectBuildTask.java
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/project/core/builder/ProjectBuildTask.java
@@ -331,7 +331,10 @@
protected void clearSourceUnit(final SourceUnitModelContainer<?, ?> adapter) {
try {
- adapter.clearIssues();
+ final var issueSupport= adapter.getIssueSupport();
+ if (issueSupport != null) {
+ issueSupport.clearIssues(adapter.getSourceUnit());
+ }
}
catch (final CoreException e) {
this.status.add(new Status(IStatus.ERROR, getBuilderDefinition().getBundleId(),
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/refactoring/core/RefactoringAdapter.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/refactoring/core/RefactoringAdapter.java
index 42e1b61..0ddf73a 100644
--- a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/refactoring/core/RefactoringAdapter.java
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/refactoring/core/RefactoringAdapter.java
@@ -79,6 +79,7 @@
import org.eclipse.statet.internal.ltk.refactoring.core.Messages;
import org.eclipse.statet.ltk.core.Ltk;
+import org.eclipse.statet.ltk.core.LtkCore;
import org.eclipse.statet.ltk.model.core.ElementSet;
import org.eclipse.statet.ltk.model.core.LtkModelUtils;
import org.eclipse.statet.ltk.model.core.element.LtkModelElement;
@@ -973,11 +974,11 @@
protected IStatus failDocAnalyzation(final Throwable e) {
- return new Status(IStatus.ERROR, Ltk.BUNDLE_ID, Messages.Common_error_AnalyzingSourceDocument_message, e);
+ return new Status(IStatus.ERROR, LtkCore.BUNDLE_ID, Messages.Common_error_AnalyzingSourceDocument_message, e);
}
protected IStatus failCreation(final Throwable e) {
- return new Status(IStatus.ERROR, Ltk.BUNDLE_ID, Messages.Common_error_CreatingElementChange_message, e);
+ return new Status(IStatus.ERROR, LtkCore.BUNDLE_ID, Messages.Common_error_CreatingElementChange_message, e);
}
}
diff --git a/ltk/org.eclipse.statet.ltk.ui/META-INF/MANIFEST.MF b/ltk/org.eclipse.statet.ltk.ui/META-INF/MANIFEST.MF
index 450d151..a94c2a6 100644
--- a/ltk/org.eclipse.statet.ltk.ui/META-INF/MANIFEST.MF
+++ b/ltk/org.eclipse.statet.ltk.ui/META-INF/MANIFEST.MF
@@ -53,6 +53,7 @@
org.eclipse.statet.ecommons.workbench.search.ui,
org.eclipse.statet.ecommons.workbench.ui,
org.eclipse.statet.ecommons.workbench.ui.util,
+ org.eclipse.statet.ltk.model.ui.impl,
org.eclipse.statet.ltk.ui,
org.eclipse.statet.ltk.ui.compare,
org.eclipse.statet.ltk.ui.input,
diff --git a/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/FileBufferWorkingBuffer.java b/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/model/ui/impl/FileBufferWorkingBuffer.java
similarity index 98%
rename from ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/FileBufferWorkingBuffer.java
rename to ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/model/ui/impl/FileBufferWorkingBuffer.java
index 81a21f5..44ad2e7 100644
--- a/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/FileBufferWorkingBuffer.java
+++ b/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/model/ui/impl/FileBufferWorkingBuffer.java
@@ -12,7 +12,7 @@
# Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
#=============================================================================*/
-package org.eclipse.statet.ltk.ui;
+package org.eclipse.statet.ltk.model.ui.impl;
import static org.eclipse.statet.ltk.ui.LtkUI.BUNDLE_ID;
diff --git a/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/GenericEditorWorkspaceSourceUnitWorkingCopy2.java b/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/model/ui/impl/GenericEditorWorkspaceSourceUnitWorkingCopy2.java
similarity index 98%
rename from ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/GenericEditorWorkspaceSourceUnitWorkingCopy2.java
rename to ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/model/ui/impl/GenericEditorWorkspaceSourceUnitWorkingCopy2.java
index c571d88..77eaef9 100644
--- a/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/GenericEditorWorkspaceSourceUnitWorkingCopy2.java
+++ b/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/model/ui/impl/GenericEditorWorkspaceSourceUnitWorkingCopy2.java
@@ -12,7 +12,7 @@
# Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
#=============================================================================*/
-package org.eclipse.statet.ltk.ui;
+package org.eclipse.statet.ltk.model.ui.impl;
import java.lang.reflect.InvocationTargetException;
diff --git a/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/SourceDocumentProvider.java b/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/SourceDocumentProvider.java
index 609a06c..6e663c3 100644
--- a/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/SourceDocumentProvider.java
+++ b/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/SourceDocumentProvider.java
@@ -36,16 +36,18 @@
import org.eclipse.statet.ltk.core.Ltk;
import org.eclipse.statet.ltk.issues.core.IssueRequestor;
+import org.eclipse.statet.ltk.issues.core.IssueTypeSet;
import org.eclipse.statet.ltk.model.core.DocumentModelProvider;
import org.eclipse.statet.ltk.model.core.LtkModels;
import org.eclipse.statet.ltk.model.core.SourceUnitManager;
+import org.eclipse.statet.ltk.model.core.build.SourceUnitIssueSupport;
import org.eclipse.statet.ltk.model.core.element.SourceUnit;
import org.eclipse.statet.ltk.model.core.element.WorkspaceSourceUnit;
@NonNullByDefault
public class SourceDocumentProvider<T extends SourceUnit> extends TextFileDocumentProvider
- implements DocumentModelProvider {
+ implements DocumentModelProvider, SourceUnitIssueSupport {
public static class SourceFileInfo extends FileInfo {
@@ -58,14 +60,18 @@
private final String modelTypeId;
private final @Nullable PartitionerDocumentSetupParticipant documentSetupParticipant;
+ private final IssueTypeSet issueTypeSet;
+
public SourceDocumentProvider(final String modelTypeId,
- final @Nullable PartitionerDocumentSetupParticipant documentSetupParticipant) {
+ final @Nullable PartitionerDocumentSetupParticipant documentSetupParticipant,
+ final IssueTypeSet issueTypeSet) {
this.modelTypeId= nonNullAssert(modelTypeId);
this.documentSetupParticipant= documentSetupParticipant;
// final IDocumentProvider provider= new ForwardingDocumentProvider(documentSetupParticipant.getPartitioningId(),
// this.documentSetupParticipant, new TextFileDocumentProvider());
// setParentDocumentProvider(provider);
+ this.issueTypeSet= issueTypeSet;
}
@@ -165,8 +171,19 @@
return super.getAnnotationModel(element);
}
- public @Nullable IssueRequestor createIssueRequestor(final SourceUnit element) {
- final IAnnotationModel annotationModel= getAnnotationModel(element);
+
+ @Override
+ public IssueTypeSet getIssueTypeSet() {
+ return this.issueTypeSet;
+ }
+
+ @Override
+ public void clearIssues(final SourceUnit sourceUnit) throws CoreException {
+ }
+
+ @Override
+ public @Nullable IssueRequestor createIssueRequestor(final SourceUnit sourceUnit) {
+ final IAnnotationModel annotationModel= getAnnotationModel(sourceUnit);
if (annotationModel instanceof SourceAnnotationModel) {
return ((SourceAnnotationModel)annotationModel).createIssueRequestor();
}
diff --git a/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/assist/ContentAssistProcessor.java b/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/assist/ContentAssistProcessor.java
index 1acad62..00e9fcc 100644
--- a/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/assist/ContentAssistProcessor.java
+++ b/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/assist/ContentAssistProcessor.java
@@ -50,7 +50,7 @@
import org.eclipse.statet.ecommons.ui.util.UIAccess;
import org.eclipse.statet.internal.ltk.ui.EditingMessages;
-import org.eclipse.statet.ltk.core.Ltk;
+import org.eclipse.statet.ltk.core.LtkCore;
import org.eclipse.statet.ltk.ui.sourceediting.SourceEditor;
@@ -367,7 +367,7 @@
computer.computeCompletionProposals(context, mode, proposals, m1);
}
catch (final Exception e) {
- StatusManager.getManager().handle(new Status(IStatus.ERROR, Ltk.BUNDLE_ID,
+ StatusManager.getManager().handle(new Status(IStatus.ERROR, LtkCore.BUNDLE_ID,
"An error occurred when computing content assistant completion proposals.",
e ));
}
@@ -492,7 +492,7 @@
computer.computeInformationProposals(context, proposals, m1);
}
catch (final Exception e) {
- StatusManager.getManager().handle(new Status(IStatus.ERROR, Ltk.BUNDLE_ID,
+ StatusManager.getManager().handle(new Status(IStatus.ERROR, LtkCore.BUNDLE_ID,
"An error occurred when computing content assistant context information.",
e ));
}
@@ -751,7 +751,7 @@
computer.onSessionEnded();
}
catch (final Exception e) {
- StatusManager.getManager().handle(new Status(IStatus.ERROR, Ltk.BUNDLE_ID, 0,
+ StatusManager.getManager().handle(new Status(IStatus.ERROR, LtkCore.BUNDLE_ID, 0,
"Error by contributed content assist computer.", e ));
}
}