Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlain Magloire2002-10-03 01:58:54 +0000
committerAlain Magloire2002-10-03 01:58:54 +0000
commitc95957ca97ee4de6f7840858713acb5b05d2a617 (patch)
tree40aaece6ce53d718c0fc73529f2b7c2331152656
parentb9e49851ca0a95fe818290fd1bdc7bcc6debb4e9 (diff)
downloadorg.eclipse.cdt-c95957ca97ee4de6f7840858713acb5b05d2a617.tar.gz
org.eclipse.cdt-c95957ca97ee4de6f7840858713acb5b05d2a617.tar.xz
org.eclipse.cdt-c95957ca97ee4de6f7840858713acb5b05d2a617.zip
From Sam Robb:
Changes the ErrorParserManager to use an instance of IProject and IMarkerGenerator instead of ACBuilder.
-rw-r--r--core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/ErrorParserManager.java26
1 files changed, 17 insertions, 9 deletions
diff --git a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/ErrorParserManager.java b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/ErrorParserManager.java
index 5702ec5d6f1..a8bd109b8be 100644
--- a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/ErrorParserManager.java
+++ b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/ErrorParserManager.java
@@ -17,18 +17,22 @@ import java.util.StringTokenizer;
import org.eclipse.core.resources.IContainer;
import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.Path;
import org.eclipse.cdt.core.CCorePlugin;
+import org.eclipse.cdt.core.IMarkerGenerator;
import org.eclipse.cdt.core.resources.ACBuilder;
+
public class ErrorParserManager {
private static String PREF_ERROR_PARSER= "errorOutputParser";
- private ACBuilder fBuilder;
+ private IProject fProject;
+ private IMarkerGenerator fMarkerGenerator;
private Map fFilesInProject;
private List fNameConflicts;
@@ -41,12 +45,15 @@ public class ErrorParserManager {
static String SEPARATOR = System.getProperty("file.separator");
-
public ErrorParserManager(ACBuilder builder) {
- fBuilder= builder;
+ this(builder.getProject(), builder);
+ }
+
+ public ErrorParserManager(IProject project, IMarkerGenerator markerGenerator) {
+ fProject= project;
+ fMarkerGenerator= markerGenerator;
fFilesInProject= new HashMap();
fNameConflicts= new ArrayList();
-
fErrorParsers= new ArrayList();
fDirectoryStack = new Vector();
fBaseDirectory = null;
@@ -161,8 +168,8 @@ public class ErrorParserManager {
fNameConflicts.clear();
List collectedFiles= new ArrayList();
- fBaseDirectory = fBuilder.getProject().getLocation();
- collectFiles(fBuilder.getProject(), collectedFiles);
+ fBaseDirectory = fProject.getLocation();
+ collectFiles(fProject, collectedFiles);
for (int i= 0; i < collectedFiles.size(); i++) {
IFile curr= (IFile)collectedFiles.get(i);
@@ -243,7 +250,7 @@ public class ErrorParserManager {
} else {
path = (IPath)getWorkingDirectory().append(filePath);
}
- return (IFile)fBuilder.getProject().getFile(path);
+ return (IFile)fProject.getFile(path);
}
/**
@@ -251,9 +258,10 @@ public class ErrorParserManager {
*/
public void generateMarker(IResource file, int lineNumber, String desc, int severity, String varName) {
if (file == null) {
- fBuilder.addMarker (fBuilder.getProject(), lineNumber, desc, severity, varName);
+ fMarkerGenerator.addMarker (fProject, lineNumber, desc, severity, varName);
+
} else {
- fBuilder.addMarker(file, lineNumber, desc, severity, varName);
+ fMarkerGenerator.addMarker(file, lineNumber, desc, severity, varName);
}
}

Back to the top