Bug 575365: [Ltk-Issues] Add Issue as common basis for tasks and
problems
- Add Issue and impl BasicSourceIssue
- Add Task and impl BasicTask
- Expand ProblemRequestor to IssueRequestor
Change-Id: I46fee91cd16bede19c3793c0574c50b84bde5d98
diff --git a/ltk/org.eclipse.statet.ltk.core/META-INF/MANIFEST.MF b/ltk/org.eclipse.statet.ltk.core/META-INF/MANIFEST.MF
index d468e3f..64760c4 100644
--- a/ltk/org.eclipse.statet.ltk.core/META-INF/MANIFEST.MF
+++ b/ltk/org.eclipse.statet.ltk.core/META-INF/MANIFEST.MF
@@ -23,6 +23,7 @@
org.eclipse.statet.ecommons.io,
org.eclipse.statet.jcommons.collections;version="4.5.0",
org.eclipse.statet.jcommons.lang;version="4.5.0",
+ org.eclipse.statet.jcommons.status;version="4.5.0",
org.eclipse.statet.jcommons.string;version="4.5.0",
org.eclipse.statet.jcommons.text.core;version="4.5.0",
org.eclipse.statet.jcommons.text.core.util;version="4.5.0"
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/Issue.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/Issue.java
new file mode 100644
index 0000000..cb572da
--- /dev/null
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/Issue.java
@@ -0,0 +1,30 @@
+/*=============================================================================#
+ # 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.issues.core;
+
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+
+
+@NonNullByDefault
+public interface Issue {
+
+
+ int getSourceLine();
+ int getSourceStartOffset();
+ int getSourceEndOffset();
+
+ String getMessage();
+
+}
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/IssueMarkers.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/IssueMarkers.java
new file mode 100644
index 0000000..547bbee
--- /dev/null
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/IssueMarkers.java
@@ -0,0 +1,59 @@
+/*=============================================================================#
+ # 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.issues.core;
+
+import org.eclipse.core.resources.IMarker;
+
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+
+
+/**
+ * Resource marker support for issues.
+ */
+@NonNullByDefault
+public class IssueMarkers {
+
+
+ /**
+ * Attribute name for the id of the (problem) category.
+ */
+ public static final String CATEGORY_ID_ATTR_NAME= "categoryId"; //$NON-NLS-1$
+
+ /**
+ * Attribute name for the (problem) code.
+ */
+ public static final String CODE_ATTR_NAME= "code"; //$NON-NLS-1$
+
+
+ public static final int toMarkerPriority(final TaskPriority priority) {
+ switch (priority) {
+ case HIGH:
+ return IMarker.PRIORITY_HIGH;
+ case LOW:
+ return IMarker.PRIORITY_LOW;
+ default:
+ return IMarker.PRIORITY_NORMAL;
+ }
+ }
+
+ public static final int toMarkerSeverity(final int problemSeverity) {
+ return problemSeverity;
+ }
+
+
+ private IssueMarkers() {
+ }
+
+}
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/ProblemRequestor.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/IssueRequestor.java
similarity index 76%
rename from ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/ProblemRequestor.java
rename to ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/IssueRequestor.java
index 810f023..b52bd78 100644
--- a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/ProblemRequestor.java
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/IssueRequestor.java
@@ -17,17 +17,18 @@
import java.util.List;
import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+import org.eclipse.statet.jcommons.status.StatusException;
-import org.eclipse.statet.ltk.model.core.element.SourceUnit;
+import org.eclipse.statet.ltk.model.core.build.SourceUnitModelContainer;
/**
* Accept problems by a problem checker.
*
- * {@link SourceUnit#getProblemRequestor()}
+ * {@link SourceUnitModelContainer#createIssueRequestor()}
*/
@NonNullByDefault
-public interface ProblemRequestor {
+public interface IssueRequestor {
/**
@@ -45,6 +46,13 @@
*/
void acceptProblems(String categoryId, List<Problem> problems);
- void finish();
+ /**
+ * Notification of a discovered task.
+ *
+ * @param task the task.
+ */
+ void acceptTask(Task task);
+
+ void finish() throws StatusException;
}
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/Tasks.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/Issues.java
similarity index 86%
rename from ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/Tasks.java
rename to ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/Issues.java
index c7386e3..45551e0 100644
--- a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/Tasks.java
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/Issues.java
@@ -29,19 +29,19 @@
@NonNullByDefault
-public class Tasks {
+public final class Issues {
- public static final String KEYWORD_PREF_KEY= "TaskTags.keyword"; //$NON-NLS-1$
- public static final String PRIORITY_PREF_KEY= "TaskTags.priority"; //$NON-NLS-1$
+ public static final String TASK_TAG_KEYWORD_PREF_KEY= "TaskTags.keyword"; //$NON-NLS-1$
+ public static final String TASK_TAG_PRIORITY_PREF_KEY= "TaskTags.priority"; //$NON-NLS-1$
private static StringArrayPref createKeywordPref(final String qualifier) {
- return new StringArrayPref(qualifier, KEYWORD_PREF_KEY);
+ return new StringArrayPref(qualifier, TASK_TAG_KEYWORD_PREF_KEY);
}
private static EnumListPref<TaskPriority> createPriorityPref(final String qualifier) {
- return new EnumListPref<>(qualifier, PRIORITY_PREF_KEY, TaskPriority.class);
+ return new EnumListPref<>(qualifier, TASK_TAG_PRIORITY_PREF_KEY, TaskPriority.class);
}
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/Problem.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/Problem.java
index 56e4c3f..bac3e97 100644
--- a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/Problem.java
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/Problem.java
@@ -20,42 +20,37 @@
/**
- * BasicProblem
+ * Problem
*/
@NonNullByDefault
-public interface Problem {
+public interface Problem extends Issue {
- /**
+ /**
* Error severity constant indicating an error.
*
* {@link IMarker#SEVERITY_ERROR}
*/
- int SEVERITY_ERROR= 2;
+ static final int SEVERITY_ERROR= 2;
- /**
+ /**
* Error severity constant indicating a warning.
*
* {@link IMarker#SEVERITY_WARNING}
*/
- int SEVERITY_WARNING= 1;
+ static final int SEVERITY_WARNING= 1;
- /**
+ /**
* Error severity constant indicating an information only.
*
* {@link IMarker#SEVERITY_INFO}
*/
- int SEVERITY_INFO= 0;
+ static final int SEVERITY_INFO= 0;
String getCategoryId();
- int getSourceLine();
- int getSourceStartOffset();
- int getSourceEndOffset();
-
int getSeverity();
int getCode();
- String getMessage();
}
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/Task.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/Task.java
new file mode 100644
index 0000000..d72fb5c
--- /dev/null
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/Task.java
@@ -0,0 +1,29 @@
+/*=============================================================================#
+ # Copyright (c) 2008, 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.issues.core;
+
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+
+
+/**
+ * Task
+ */
+@NonNullByDefault
+public interface Task extends Issue {
+
+
+ TaskPriority getPriority();
+
+}
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/TaskPriority.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/TaskPriority.java
index 525e987..5618292 100644
--- a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/TaskPriority.java
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/TaskPriority.java
@@ -14,8 +14,6 @@
package org.eclipse.statet.ltk.issues.core;
-import org.eclipse.core.resources.IMarker;
-
import org.eclipse.statet.jcommons.lang.NonNullByDefault;
@@ -23,21 +21,13 @@
public enum TaskPriority {
- HIGH (IMarker.PRIORITY_HIGH),
- NORMAL (IMarker.PRIORITY_NORMAL),
- LOW (IMarker.PRIORITY_LOW);
+ HIGH,
+ NORMAL,
+ LOW;
- private int priority;
-
-
- TaskPriority(final int priority) {
- this.priority= priority;
+ TaskPriority() {
}
- public int getMarkerPriority() {
- return this.priority;
- }
-
}
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/BasicProblem.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/impl/BasicProblem.java
similarity index 60%
rename from ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/BasicProblem.java
rename to ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/impl/BasicProblem.java
index ba622e5..6d0becd 100644
--- a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/BasicProblem.java
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/impl/BasicProblem.java
@@ -12,73 +12,51 @@
# Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
#=============================================================================*/
-package org.eclipse.statet.ltk.issues.core;
+package org.eclipse.statet.ltk.issues.core.impl;
import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+import org.eclipse.statet.ltk.issues.core.Problem;
+
/**
- * BasicProblem in a source unit. Default implementation of {@link Problem}.
+ * Default implementation of {@link Problem}.
*/
@NonNullByDefault
-public class BasicProblem implements Problem {
+public class BasicProblem extends BasicSourceIssue implements Problem {
- private final int line;
- private final int startOffset;
- private final int endOffset;
+ private final String categoryId;
- private final String modelTypeId;
private final int severity;
private final int code;
private final String message;
- public BasicProblem(final String modelTypeId,
+ public BasicProblem(final String categoryId,
final int severity, final int code, final String message,
final int line, final int startOffset, final int endOffset) {
- this.modelTypeId= modelTypeId;
+ super(line, startOffset, endOffset);
+ this.categoryId= categoryId;
this.severity= severity;
this.code= code;
this.message= message;
-
- this.line= line;
- this.startOffset= startOffset;
- this.endOffset= (endOffset - startOffset > 0) ? endOffset : startOffset + 1;
}
- public BasicProblem(final String modelTypeId,
+ public BasicProblem(final String categoryId,
final int severity, final int code, final String message,
final int startOffset, final int endOffset) {
- this.modelTypeId= modelTypeId;
+ super(-1, startOffset, endOffset);
+ this.categoryId= categoryId;
this.severity= severity;
this.code= code;
this.message= message;
-
- this.line= -1;
- this.startOffset= startOffset;
- this.endOffset= (endOffset - startOffset > 0) ? endOffset : startOffset + 1;
}
@Override
public String getCategoryId() {
- return this.modelTypeId;
- }
-
- @Override
- public int getSourceLine() {
- return this.line;
- }
-
- @Override
- public int getSourceStartOffset() {
- return this.startOffset;
- }
-
- @Override
- public int getSourceEndOffset() {
- return this.endOffset;
+ return this.categoryId;
}
@Override
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/impl/BasicSourceIssue.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/impl/BasicSourceIssue.java
new file mode 100644
index 0000000..e1c49f1
--- /dev/null
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/impl/BasicSourceIssue.java
@@ -0,0 +1,54 @@
+/*=============================================================================#
+ # 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.issues.core.impl;
+
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+
+import org.eclipse.statet.ltk.issues.core.Issue;
+
+
+@NonNullByDefault
+public abstract class BasicSourceIssue implements Issue {
+
+
+ private final int line;
+ private final int startOffset;
+ private final int endOffset;
+
+
+ public BasicSourceIssue(final int line, final int startOffset, final int endOffset) {
+ this.line= line;
+ this.startOffset= startOffset;
+ this.endOffset= (endOffset - startOffset > 0) ? endOffset : startOffset + 1;
+ }
+
+
+ @Override
+ public int getSourceLine() {
+ return this.line;
+ }
+
+ @Override
+ public int getSourceStartOffset() {
+ return this.startOffset;
+ }
+
+ @Override
+ public int getSourceEndOffset() {
+ return this.endOffset;
+ }
+
+
+}
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/impl/BasicTask.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/impl/BasicTask.java
new file mode 100644
index 0000000..53daa2e
--- /dev/null
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/impl/BasicTask.java
@@ -0,0 +1,53 @@
+/*=============================================================================#
+ # 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.issues.core.impl;
+
+import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+
+import org.eclipse.statet.ltk.issues.core.Task;
+import org.eclipse.statet.ltk.issues.core.TaskPriority;
+
+
+/**
+ * Default implementation of {@link Task}.
+ */
+@NonNullByDefault
+public class BasicTask extends BasicSourceIssue implements Task {
+
+
+ private final TaskPriority priority;
+
+ private final String message;
+
+
+ public BasicTask(final TaskPriority priority, final String message,
+ final int line, final int startOffset, final int endOffset) {
+ super(line, startOffset, endOffset);
+ this.priority= priority;
+ this.message= message;
+ }
+
+
+ @Override
+ public TaskPriority getPriority() {
+ return this.priority;
+ }
+
+ @Override
+ public String getMessage() {
+ return this.message;
+ }
+
+}
diff --git a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/impl/TaskMarkerHandler.java b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/impl/TaskMarkerHandler.java
index ab6cefe..7ac96b9 100644
--- a/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/impl/TaskMarkerHandler.java
+++ b/ltk/org.eclipse.statet.ltk.core/src/org/eclipse/statet/ltk/issues/core/impl/TaskMarkerHandler.java
@@ -32,6 +32,7 @@
import org.eclipse.statet.jcommons.lang.Nullable;
import org.eclipse.statet.ltk.core.SourceContent;
+import org.eclipse.statet.ltk.issues.core.IssueMarkers;
import org.eclipse.statet.ltk.issues.core.TaskPriority;
import org.eclipse.statet.ltk.issues.core.TaskTag;
@@ -96,7 +97,7 @@
final var attributes= new HashMap<String, Object>();
attributes.put(IMarker.MESSAGE, message);
- attributes.put(IMarker.PRIORITY, prio.getMarkerPriority());
+ attributes.put(IMarker.PRIORITY, IssueMarkers.toMarkerPriority(prio));
attributes.put(IMarker.LINE_NUMBER, (lineNumber > 0) ? lineNumber : 1);
if (offset != -1) {
attributes.put(IMarker.CHAR_START, offset);
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 519ab67..60016fc 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
@@ -25,7 +25,7 @@
import org.eclipse.statet.ltk.core.Ltk;
import org.eclipse.statet.ltk.core.SourceContent;
import org.eclipse.statet.ltk.core.WorkingContext;
-import org.eclipse.statet.ltk.issues.core.ProblemRequestor;
+import org.eclipse.statet.ltk.issues.core.IssueRequestor;
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;
@@ -146,7 +146,7 @@
}
- public @Nullable ProblemRequestor createProblemRequestor() {
+ public @Nullable IssueRequestor createIssueRequestor() {
return null;
}
diff --git a/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/SourceAnnotationModel.java b/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/SourceAnnotationModel.java
index b51fea5..0b6951a 100644
--- a/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/SourceAnnotationModel.java
+++ b/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/SourceAnnotationModel.java
@@ -27,8 +27,10 @@
import org.eclipse.statet.jcommons.lang.NonNullByDefault;
import org.eclipse.statet.jcommons.lang.Nullable;
+import org.eclipse.statet.ltk.issues.core.Issue;
+import org.eclipse.statet.ltk.issues.core.IssueRequestor;
import org.eclipse.statet.ltk.issues.core.Problem;
-import org.eclipse.statet.ltk.issues.core.ProblemRequestor;
+import org.eclipse.statet.ltk.issues.core.Task;
/**
@@ -39,7 +41,7 @@
public abstract class SourceAnnotationModel extends ResourceMarkerAnnotationModel {
- protected class SourceAnnotationProblemRequestor implements ProblemRequestor {
+ protected class SourceAnnotationIssueRequestor implements IssueRequestor {
protected final List<Problem> reportedProblems= new ArrayList<>();
@@ -49,7 +51,7 @@
private int state= 1;
- public SourceAnnotationProblemRequestor() {
+ public SourceAnnotationIssueRequestor() {
this.handleTemporaryProblems= isHandlingTemporaryProblems();
}
@@ -69,6 +71,10 @@
}
@Override
+ public void acceptTask(final Task task) {
+ }
+
+ @Override
public void finish() {
if (this.state < 0) {
throw new IllegalStateException("Already finished");
@@ -106,13 +112,13 @@
// return new CompilationUnitAnnotationModelEvent(this, getResource());
// }
- public final ProblemRequestor createProblemRequestor() {
+ public final IssueRequestor createIssueRequestor() {
this.reportingCounter.incrementAndGet();
- return doCreateProblemRequestor();
+ return doCreateIssueRequestor();
}
- protected ProblemRequestor doCreateProblemRequestor() {
- return new SourceAnnotationProblemRequestor();
+ protected IssueRequestor doCreateIssueRequestor() {
+ return new SourceAnnotationIssueRequestor();
}
public void clearProblems(final @Nullable String category) {
@@ -144,7 +150,7 @@
}
private void reportProblems(final List<Problem> reportedProblems) {
- boolean reportedProblemsChanged= false;
+ boolean reportedIssuesChanged= false;
synchronized (getLockObject()) {
if (this.reportingCounter.decrementAndGet() != 0) {
@@ -154,7 +160,7 @@
// this.currentlyOverlaid= new ArrayList();
if (this.problemAnnotations.size() > 0) {
- reportedProblemsChanged= true;
+ reportedIssuesChanged= true;
removeAnnotations(this.problemAnnotations, false, true);
this.problemAnnotations.clear();
}
@@ -169,7 +175,7 @@
if (annotation != null) {
addAnnotation(annotation, position, false);
this.problemAnnotations.add(annotation);
- reportedProblemsChanged= true;
+ reportedIssuesChanged= true;
}
} catch (final BadLocationException x) {
// ignore invalid position
@@ -182,7 +188,7 @@
// this.previouslyOverlaid= null;
}
- if (reportedProblemsChanged) {
+ if (reportedIssuesChanged) {
fireModelChanged();
}
}
@@ -222,9 +228,9 @@
// }
// }
- protected Position createPosition(final Problem problem) {
- final int start= problem.getSourceStartOffset();
- final int end= problem.getSourceEndOffset();
+ protected Position createPosition(final Issue issue) {
+ final int start= issue.getSourceStartOffset();
+ final int end= issue.getSourceEndOffset();
if (start < 0 && end < 0) {
assert (start >= 0 && end >= 0);
}
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 5476856..609a06c 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
@@ -35,7 +35,7 @@
import org.eclipse.statet.ecommons.text.PartitionerDocumentSetupParticipant;
import org.eclipse.statet.ltk.core.Ltk;
-import org.eclipse.statet.ltk.issues.core.ProblemRequestor;
+import org.eclipse.statet.ltk.issues.core.IssueRequestor;
import org.eclipse.statet.ltk.model.core.DocumentModelProvider;
import org.eclipse.statet.ltk.model.core.LtkModels;
import org.eclipse.statet.ltk.model.core.SourceUnitManager;
@@ -165,10 +165,10 @@
return super.getAnnotationModel(element);
}
- public @Nullable ProblemRequestor createProblemRequestor(final SourceUnit element) {
+ public @Nullable IssueRequestor createIssueRequestor(final SourceUnit element) {
final IAnnotationModel annotationModel= getAnnotationModel(element);
if (annotationModel instanceof SourceAnnotationModel) {
- return ((SourceAnnotationModel) annotationModel).createProblemRequestor();
+ return ((SourceAnnotationModel)annotationModel).createIssueRequestor();
}
return null;
}
diff --git a/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/SourceProblemAnnotation.java b/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/SourceProblemAnnotation.java
index 528a4db..49a595a 100644
--- a/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/SourceProblemAnnotation.java
+++ b/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/SourceProblemAnnotation.java
@@ -33,9 +33,10 @@
/**
- * Annotation representing an <code>Problem</code>.
+ * Annotation representing an {@link Problem}.
*/
-public class SourceProblemAnnotation extends Annotation implements IAnnotationPresentation, IQuickFixableAnnotation {
+public class SourceProblemAnnotation extends Annotation
+ implements IAnnotationPresentation, IQuickFixableAnnotation {
public static final String TASK_ANNOTATION_TYPE= "org.eclipse.ui.workbench.texteditor.task"; //$NON-NLS-1$
public static final String SPELLING_ANNOTATION_TYPE= "org.eclipse.ui.workbench.texteditor.spelling"; //$NON-NLS-1$
diff --git a/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/presentation/CommentScanner.java b/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/presentation/CommentScanner.java
index bc132d2..d6686aa 100644
--- a/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/presentation/CommentScanner.java
+++ b/ltk/org.eclipse.statet.ltk.ui/src/org/eclipse/statet/ltk/ui/sourceediting/presentation/CommentScanner.java
@@ -34,7 +34,7 @@
import org.eclipse.statet.ecommons.text.ui.presentation.TextStyleManager;
import org.eclipse.statet.ecommons.ui.ISettingsChangedHandler;
-import org.eclipse.statet.ltk.issues.core.Tasks;
+import org.eclipse.statet.ltk.issues.core.Issues;
/**
@@ -131,8 +131,8 @@
}
private void loadTaskTags() {
- final var taskTags= Tasks.loadTaskTags(this.prefQualifier, this.prefs);
- this.taskTagRule.setKeywords(Tasks.getKeywords(taskTags));
+ final var taskTags= Issues.loadTaskTags(this.prefQualifier, this.prefs);
+ this.taskTagRule.setKeywords(Issues.getKeywords(taskTags));
}
}