diff options
author | Lars Vogel | 2021-02-08 10:44:03 +0000 |
---|---|---|
committer | Lars Vogel | 2021-02-08 11:17:54 +0000 |
commit | 231e44f010b13f7919b06c4f9e063abd699c44a2 (patch) | |
tree | 4a139c445614b74d87c5d157301c0600067f2314 | |
parent | 77dbd9dac200ce426c5da4aea960129a04353bea (diff) | |
download | eclipse.jdt.core-231e44f010b13f7919b06c4f9e063abd699c44a2.tar.gz eclipse.jdt.core-231e44f010b13f7919b06c4f9e063abd699c44a2.tar.xz eclipse.jdt.core-231e44f010b13f7919b06c4f9e063abd699c44a2.zip |
Bug 571017 - Use atomic marker creation API inI20210208-1800
JavaBuilder#isWorthBuilding
The new marker API from Bug 570914 allows to create markers with
attributes and therefore avoids sending out resource change events for
every attribute change.
Includes an update of the required resource API version.
Change-Id: I6dfbbfbb3ed1fe6fe499549c5da9a4eb6e36679b
Signed-off-by: Lars Vogel <Lars.Vogel@vogella.com>
-rw-r--r-- | org.eclipse.jdt.core/META-INF/MANIFEST.MF | 2 | ||||
-rw-r--r-- | org.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/builder/JavaBuilder.java | 17 |
2 files changed, 8 insertions, 11 deletions
diff --git a/org.eclipse.jdt.core/META-INF/MANIFEST.MF b/org.eclipse.jdt.core/META-INF/MANIFEST.MF index 8283b9880e..ac09f3683f 100644 --- a/org.eclipse.jdt.core/META-INF/MANIFEST.MF +++ b/org.eclipse.jdt.core/META-INF/MANIFEST.MF @@ -66,7 +66,7 @@ Export-Package: org.eclipse.jdt.core, org.eclipse.jdt.internal.formatter;x-internal:=true, org.eclipse.jdt.internal.formatter.linewrap;x-internal:=true, org.eclipse.jdt.internal.formatter.old;x-internal:=true -Require-Bundle: org.eclipse.core.resources;bundle-version="[3.12.0,4.0.0)", +Require-Bundle: org.eclipse.core.resources;bundle-version="[3.14.0,4.0.0)", org.eclipse.core.runtime;bundle-version="[3.13.0,4.0.0)", org.eclipse.core.filesystem;bundle-version="[1.7.0,2.0.0)", org.eclipse.text;bundle-version="[3.6.0,4.0.0)", diff --git a/org.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/builder/JavaBuilder.java b/org.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/builder/JavaBuilder.java index 84fbc599f7..701acb199d 100644 --- a/org.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/builder/JavaBuilder.java +++ b/org.eclipse.jdt.core/model/org/eclipse/jdt/internal/core/builder/JavaBuilder.java @@ -713,16 +713,13 @@ private boolean isWorthBuilding() throws CoreException { removeProblemsAndTasksFor(this.currentProject); // remove all compilation problems - IMarker marker = this.currentProject.createMarker(IJavaModelMarker.JAVA_MODEL_PROBLEM_MARKER); - marker.setAttributes( - new String[] {IMarker.MESSAGE, IMarker.SEVERITY, IJavaModelMarker.CATEGORY_ID, IMarker.SOURCE_ID}, - new Object[] { - Messages.build_abortDueToClasspathProblems, - Integer.valueOf(IMarker.SEVERITY_ERROR), - Integer.valueOf(CategorizedProblem.CAT_BUILDPATH), - JavaBuilder.SOURCE_ID - } - ); + Map<String, Object> attributes = new HashMap<>(); + attributes.put(IMarker.MESSAGE, Messages.build_abortDueToClasspathProblems); + attributes.put(IMarker.SEVERITY, Integer.valueOf(IMarker.SEVERITY_ERROR)); + attributes.put(IJavaModelMarker.CATEGORY_ID, Integer.valueOf(CategorizedProblem.CAT_BUILDPATH)); + attributes.put(IMarker.SOURCE_ID, JavaBuilder.SOURCE_ID); + + this.currentProject.createMarker(IJavaModelMarker.JAVA_MODEL_PROBLEM_MARKER, attributes); return false; } |