Bug 570951 - Use new atomic marker creation API in DSAnnotationCompilationParticipant

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 the update of min version requirement for resource API as only
3.14 provides this API.

Change-Id: Ie8eaba0f80fd78bfc2ba76008cf86e432b8225c0
Signed-off-by: Lars Vogel <Lars.Vogel@vogella.com>
diff --git a/ds/org.eclipse.pde.ds.annotations/META-INF/MANIFEST.MF b/ds/org.eclipse.pde.ds.annotations/META-INF/MANIFEST.MF
index cfa6d1d..656446d 100644
--- a/ds/org.eclipse.pde.ds.annotations/META-INF/MANIFEST.MF
+++ b/ds/org.eclipse.pde.ds.annotations/META-INF/MANIFEST.MF
@@ -10,7 +10,7 @@
  org.eclipse.pde.ui;bundle-version="[3.8.0,4.0.0)",
  org.eclipse.jdt.core;bundle-version="[3.9.0,4.0.0)",
  org.eclipse.pde.ds.core;bundle-version="[1.1.0,1.3.0)",
- org.eclipse.core.resources;bundle-version="[3.8.100,4.0.0)",
+ org.eclipse.core.resources;bundle-version="[3.14.0,4.0.0)",
  org.eclipse.jface.text;bundle-version="[3.8.100,4.0.0)",
  org.eclipse.ltk.core.refactoring;bundle-version="[3.6.100,4.0.0)",
  org.eclipse.core.expressions;bundle-version="[3.4.501,4.0.0)",
diff --git a/ds/org.eclipse.pde.ds.annotations/src/org/eclipse/pde/ds/internal/annotations/DSAnnotationCompilationParticipant.java b/ds/org.eclipse.pde.ds.annotations/src/org/eclipse/pde/ds/internal/annotations/DSAnnotationCompilationParticipant.java
index cf80612..de29825 100644
--- a/ds/org.eclipse.pde.ds.annotations/src/org/eclipse/pde/ds/internal/annotations/DSAnnotationCompilationParticipant.java
+++ b/ds/org.eclipse.pde.ds.annotations/src/org/eclipse/pde/ds/internal/annotations/DSAnnotationCompilationParticipant.java
@@ -357,11 +357,11 @@
 
 					if (markerNeeded) {
 						if (cpMarkers.length == 0) {
-							IMarker marker = project.getProject().createMarker(BUILDPATH_PROBLEM_MARKER);
-							marker.setAttribute(IMarker.SEVERITY, IMarker.SEVERITY_WARNING);
-							marker.setAttribute(IMarker.PRIORITY, IMarker.PRIORITY_HIGH);
-							marker.setAttribute(IMarker.MESSAGE, Messages.DSAnnotationCompilationParticipant_buildpathProblemMarker_message);
-							marker.setAttribute(IMarker.LOCATION, Messages.DSAnnotationCompilationParticipant_buildpathProblemMarker_location);
+							project.getProject().createMarker(BUILDPATH_PROBLEM_MARKER,
+									Map.of(IMarker.SEVERITY, IMarker.SEVERITY_WARNING,
+											IMarker.PRIORITY, IMarker.PRIORITY_HIGH,
+											IMarker.MESSAGE, Messages.DSAnnotationCompilationParticipant_buildpathProblemMarker_message,
+											IMarker.LOCATION, Messages.DSAnnotationCompilationParticipant_buildpathProblemMarker_location));
 						}
 					} else {
 						for (IMarker marker : cpMarkers) {