[565543] cleanups
diff --git a/core/bundles/org.eclipse.wst.sse.core/src-tasktags/org/eclipse/wst/sse/core/internal/tasks/WorkspaceTaskScanner.java b/core/bundles/org.eclipse.wst.sse.core/src-tasktags/org/eclipse/wst/sse/core/internal/tasks/WorkspaceTaskScanner.java index 215f70c..1de98b7 100644 --- a/core/bundles/org.eclipse.wst.sse.core/src-tasktags/org/eclipse/wst/sse/core/internal/tasks/WorkspaceTaskScanner.java +++ b/core/bundles/org.eclipse.wst.sse.core/src-tasktags/org/eclipse/wst/sse/core/internal/tasks/WorkspaceTaskScanner.java
@@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2001, 2018 IBM Corporation and others. + * Copyright (c) 2001, 2020 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at @@ -27,7 +27,6 @@ import org.eclipse.core.resources.IProject; import org.eclipse.core.resources.IResource; import org.eclipse.core.resources.IResourceDelta; -import org.eclipse.core.resources.IWorkspace; import org.eclipse.core.resources.IWorkspaceRunnable; import org.eclipse.core.resources.ProjectScope; import org.eclipse.core.resources.ResourcesPlugin; @@ -289,13 +288,13 @@ for (int i = 0; i < markerAttributeMaps.length; i++) { String specifiedMarkerType = (String) markerAttributeMaps[i].get(IMarker.TASK); IMarker marker = finalFile.createMarker(specifiedMarkerType); - marker.setAttributes(markerAttributeMaps[i]); - marker.setAttribute(IMarker.USER_EDITABLE, Boolean.FALSE); - marker.setAttribute(MODIFICATION_STAMP, Long.toString(file.getModificationStamp())); + markerAttributeMaps[i].put(IMarker.USER_EDITABLE, Boolean.FALSE); + markerAttributeMaps[i].put(MODIFICATION_STAMP, Long.toString(file.getModificationStamp())); if (IMarker.TASK.equals(specifiedMarkerType)) { // set to synthetic and make user editable - marker.setAttribute(SYNTHETIC_TASK, true); + markerAttributeMaps[i].put(SYNTHETIC_TASK, true); } + marker.setAttributes(markerAttributeMaps[i]); } } progressMonitor.worked(1); @@ -303,7 +302,7 @@ } }; if (file.isAccessible()) { - finalFile.getWorkspace().run(r, ResourcesPlugin.getWorkspace().getRuleFactory().modifyRule(file), IWorkspace.AVOID_UPDATE, monitor); + finalFile.getWorkspace().run(r, ResourcesPlugin.getWorkspace().getRuleFactory().markerRule(file), 0, monitor); } } catch (CoreException e1) {
diff --git a/web/bundles/org.eclipse.wst.jsdt.web.ui/src/org/eclipse/wst/jsdt/web/ui/internal/tasks/JSFileTaskScanner.java b/web/bundles/org.eclipse.wst.jsdt.web.ui/src/org/eclipse/wst/jsdt/web/ui/internal/tasks/JSFileTaskScanner.java index 68e3598..18cbb1b 100644 --- a/web/bundles/org.eclipse.wst.jsdt.web.ui/src/org/eclipse/wst/jsdt/web/ui/internal/tasks/JSFileTaskScanner.java +++ b/web/bundles/org.eclipse.wst.jsdt.web.ui/src/org/eclipse/wst/jsdt/web/ui/internal/tasks/JSFileTaskScanner.java
@@ -18,9 +18,9 @@ import org.eclipse.core.resources.IFile; import org.eclipse.core.resources.IMarker; import org.eclipse.core.resources.IProject; -import org.eclipse.core.resources.IResource; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IProgressMonitor; +import org.eclipse.core.runtime.SubMonitor; import org.eclipse.jface.text.BadLocationException; import org.eclipse.jface.text.FindReplaceDocumentAdapter; import org.eclipse.jface.text.IDocument; @@ -89,13 +89,16 @@ public Map<String, Object>[] scan(IFile file, TaskTag[] taskTags, IProgressMonitor monitor) { List<Map<String, Object>> newMarkers = new ArrayList<>(); ITextFileBufferManager textFileBufferManager = FileBuffers.getTextFileBufferManager(); + SubMonitor localMonitor = SubMonitor.convert(monitor, 3); try { - textFileBufferManager.connect(file.getFullPath(), LocationKind.IFILE, monitor); - IDocument document = textFileBufferManager.getTextFileBuffer(file.getFullPath()).getDocument(); + textFileBufferManager.connect(file.getFullPath(), LocationKind.IFILE, localMonitor.newChild(1)); + IDocument document = textFileBufferManager.getTextFileBuffer(file.getFullPath(), LocationKind.IFILE).getDocument(); IDocumentPartitioner partitioner = JavaScriptPlugin.getDefault().getJavaTextTools().createDocumentPartitioner(); FindReplaceDocumentAdapter finder = new FindReplaceDocumentAdapter(document); partitioner.connect(document); ITypedRegion[] partitions = partitioner.computePartitioning(0, document.getLength()); + SubMonitor partitionMonitor = localMonitor.newChild(1); + partitionMonitor.beginTask("", partitions.length); for (int i = 0; i < partitions.length; i++) { for (int j = 0; j < taskTags.length; j++) { switch (partitions[i].getType()) { @@ -106,7 +109,7 @@ int start = lineMatch.getOffset(); int lengthToEndOfLine = lineInfo.getLength() - (lineMatch.getOffset() - lineInfo.getOffset()); String text = document.get(start, lengthToEndOfLine).trim(); - Map<String, Object> attributesForNewTaskMarker = createInitialMarkerAttributes(text, document.getLineOfOffset(lineMatch.getOffset()), start, text.length(), IMarker.PRIORITY_NORMAL); + Map<String, Object> attributesForNewTaskMarker = createInitialMarkerAttributes(text, document.getLineOfOffset(lineMatch.getOffset()), start, text.length(), taskTags[j].getPriority()); newMarkers.add(attributesForNewTaskMarker); } break; @@ -122,7 +125,7 @@ int lineNumber = document.getLineOfOffset(tagMatch.getOffset()); Map<String, Object> attributesForNewTaskMarker = createInitialMarkerAttributes(text, lineNumber, start, text.length(), taskTags[j].getPriority()); newMarkers.add(attributesForNewTaskMarker); - + tagMatch = finder.find(lineInfo.getOffset() + lineInfo.getLength(), taskTags[j].getTag(), true, false, true, false); } break; @@ -130,10 +133,9 @@ default : } } + partitionMonitor.worked(1); } partitioner.disconnect(); - - file.deleteMarkers(MARKER_TYPE_TASK, true, IResource.DEPTH_ONE); } catch (CoreException e) { Logger.logException(e); @@ -143,11 +145,12 @@ } finally { try { - textFileBufferManager.disconnect(file.getFullPath(), LocationKind.IFILE, monitor); + textFileBufferManager.disconnect(file.getFullPath(), LocationKind.IFILE, localMonitor.newChild(1)); } catch (CoreException e) { Logger.logException("Exception while disconnecting file buffer", e); //$NON-NLS-1$ } + localMonitor.done(); } return newMarkers.toArray(new Map[newMarkers.size()]); } @@ -170,8 +173,6 @@ * startup(org.eclipse.core.resources.IProject) */ public void startup(IProject project) { - // TODO Auto-generated method stub - } }