Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(494)

Unified Diff: editor/tools/plugins/com.google.dart.tools.core/src/com/google/dart/tools/core/internal/analysis/model/ProjectManagerIgnoreListener.java

Issue 221243003: remove files from index when do-not-analyze is selected (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: merge Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: editor/tools/plugins/com.google.dart.tools.core/src/com/google/dart/tools/core/internal/analysis/model/ProjectManagerIgnoreListener.java
diff --git a/editor/tools/plugins/com.google.dart.tools.core/src/com/google/dart/tools/core/internal/analysis/model/ProjectManagerIgnoreListener.java b/editor/tools/plugins/com.google.dart.tools.core/src/com/google/dart/tools/core/internal/analysis/model/ProjectManagerIgnoreListener.java
index f41a6478681208ba26a1c86313d0c387e8ec7afa..1b8a4a77071c94f0a99dcc93856eda312e2c3634 100644
--- a/editor/tools/plugins/com.google.dart.tools.core/src/com/google/dart/tools/core/internal/analysis/model/ProjectManagerIgnoreListener.java
+++ b/editor/tools/plugins/com.google.dart.tools.core/src/com/google/dart/tools/core/internal/analysis/model/ProjectManagerIgnoreListener.java
@@ -3,9 +3,11 @@ package com.google.dart.tools.core.internal.analysis.model;
import com.google.dart.engine.context.AnalysisContext;
import com.google.dart.engine.context.AnalysisErrorInfo;
import com.google.dart.engine.context.ChangeSet;
+import com.google.dart.engine.index.Index;
import com.google.dart.engine.source.DirectoryBasedSourceContainer;
import com.google.dart.engine.source.FileBasedSource;
import com.google.dart.engine.source.Source;
+import com.google.dart.engine.source.SourceContainer;
import com.google.dart.tools.core.DartCore;
import com.google.dart.tools.core.analysis.model.Project;
import com.google.dart.tools.core.analysis.model.ProjectManager;
@@ -39,15 +41,17 @@ import java.util.List;
public class ProjectManagerIgnoreListener implements DartIgnoreListener {
private final ProjectManager projectManager;
private final IWorkspaceRoot workspaceRoot;
- private AnalysisManager analysisManager;
- private AnalysisMarkerManager markerManager;
+ private final AnalysisManager analysisManager;
+ private final AnalysisMarkerManager markerManager;
+ private final Index index;
public ProjectManagerIgnoreListener(ProjectManager projectManager, IWorkspaceRoot workspaceRoot,
- AnalysisManager analysisManager, AnalysisMarkerManager markerManager) {
+ AnalysisManager analysisManager, AnalysisMarkerManager markerManager, Index index) {
this.projectManager = projectManager;
this.workspaceRoot = workspaceRoot;
this.analysisManager = analysisManager;
this.markerManager = markerManager;
+ this.index = index;
}
@Override
@@ -165,17 +169,24 @@ public class ProjectManagerIgnoreListener implements DartIgnoreListener {
for (String path : paths) {
IResource resource = getResourceFromPath(path);
if (resource != null) {
+ AnalysisContext context = projectManager.getContext(resource);
ChangeSet changeSet = new ChangeSet();
if (resource instanceof IFile) {
- changeSet.removedSource(projectManager.getSource((IFile) resource));
+ Source source = projectManager.getSource((IFile) resource);
+ changeSet.removedSource(source);
+ index.removeSource(context, source);
} else {
IContainer container = (IContainer) resource;
- changeSet.removedContainer(new DirectoryBasedSourceContainer(new File(path)));
+ SourceContainer sourceContainer = new DirectoryBasedSourceContainer(new File(path));
+ changeSet.removedContainer(sourceContainer);
+ index.removeSources(context, sourceContainer);
for (PubFolder pubFolder : projectManager.getContainedPubFolders(container)) {
- pubFolder.getContext().applyChanges(changeSet);
+ AnalysisContext subContext = pubFolder.getContext();
+ subContext.applyChanges(changeSet);
+ index.removeSources(subContext, sourceContainer);
}
}
- projectManager.getContext(resource).applyChanges(changeSet);
+ context.applyChanges(changeSet);
markerManager.clearMarkers(resource);
}
}
« no previous file with comments | « no previous file | editor/tools/plugins/com.google.dart.tools.core/src/com/google/dart/tools/core/internal/analysis/model/ProjectManagerImpl.java » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698