more diagnostics on marker job
diff --git a/org.eclipse.ajdt.ui/src/org/eclipse/ajdt/internal/ui/markers/DeleteAJMarkers.java b/org.eclipse.ajdt.ui/src/org/eclipse/ajdt/internal/ui/markers/DeleteAJMarkers.java
index b65060d..e01ddb3 100644
--- a/org.eclipse.ajdt.ui/src/org/eclipse/ajdt/internal/ui/markers/DeleteAJMarkers.java
+++ b/org.eclipse.ajdt.ui/src/org/eclipse/ajdt/internal/ui/markers/DeleteAJMarkers.java
@@ -22,35 +22,50 @@
 public class DeleteAJMarkers {
     private IProject project;
     private final IFile[] sourceFiles;
+    private String reason;
 
-    public DeleteAJMarkers(IProject project) {
+    public DeleteAJMarkers(IProject project,String reason) {
         this.project = project;
         this.sourceFiles = null;
+        this.reason=reason;
     }
     
     /**
      * @deprecated Use {@link DeleteAJMarkers#DeleteAJMarkers(IProject, IFile[])} instead
      */
-    public DeleteAJMarkers(IProject project, File[] sourceFiles) {
+    public DeleteAJMarkers(IProject project, File[] sourceFiles, String reason) {
         this.project = project;
         this.sourceFiles = DeleteAndUpdateAJMarkersJob.javaFileToIFile(sourceFiles, project);
+        this.reason=reason;
     }
-    public DeleteAJMarkers(IProject project, IFile[] sourceFiles) {
+    public DeleteAJMarkers(IProject project, IFile[] sourceFiles, String reason) {
         this.project = project;
         this.sourceFiles = sourceFiles;
+        this.reason=reason;
     }
-    
+
+    private String toJobString() {
+    	StringBuilder s = new StringBuilder();
+    	s.append("Delete markers: "+project.getName());
+    	if (reason!=null && reason.length()!=0) {
+    		s.append(" - "+reason);
+    	}
+    	if (sourceFiles != null) {
+    		s.append(" ("+sourceFiles.length+" files)");
+    	}
+    	return s.toString();
+    }
     
     
     protected IStatus run(IProgressMonitor monitor) {
         try {
-            AJLog.logStart("Delete markers: " + project.getName());
+            AJLog.logStart(toJobString());
             if (sourceFiles != null) {
                 deleteMarkersForFiles(monitor);
             } else {
                 deleteAllMarkers(monitor);
             }
-            AJLog.logEnd(AJLog.BUILDER, "Delete markers: " + project.getName(), "Finished deleting markers for " + project.getName());
+            AJLog.logEnd(AJLog.BUILDER, toJobString(), "Finished deleting markers for " + project.getName());
             return Status.OK_STATUS;
         } catch(CoreException e) {
             return new Status(IStatus.ERROR, AspectJUIPlugin.PLUGIN_ID, 
diff --git a/org.eclipse.ajdt.ui/src/org/eclipse/ajdt/internal/ui/markers/DeleteAndUpdateAJMarkersJob.java b/org.eclipse.ajdt.ui/src/org/eclipse/ajdt/internal/ui/markers/DeleteAndUpdateAJMarkersJob.java
index 16394c3..9beadd1 100644
--- a/org.eclipse.ajdt.ui/src/org/eclipse/ajdt/internal/ui/markers/DeleteAndUpdateAJMarkersJob.java
+++ b/org.eclipse.ajdt.ui/src/org/eclipse/ajdt/internal/ui/markers/DeleteAndUpdateAJMarkersJob.java
@@ -28,33 +28,33 @@
     
     public DeleteAndUpdateAJMarkersJob(IProject project, String reason) {
         super("Delete and update AspectJ markers for " + project.getName()+": "+reason);
-        update = new UpdateAJMarkers(project);
-        delete = new DeleteAJMarkers(project);
+        update = new UpdateAJMarkers(project,reason);
+        delete = new DeleteAJMarkers(project,reason);
         rule = createSchedulingRule(project, null);    	
     }
 
     public DeleteAndUpdateAJMarkersJob(IProject project) {
         super("Delete and update AspectJ markers for " + project.getName());
-        update = new UpdateAJMarkers(project);
-        delete = new DeleteAJMarkers(project);
+        update = new UpdateAJMarkers(project,"");
+        delete = new DeleteAJMarkers(project,"");
         rule = createSchedulingRule(project, null);
     }
 
     public DeleteAndUpdateAJMarkersJob(IProject project, File[] sourceFiles, String reason) {
         super("Delete and update AspectJ markers for " + project.getName()+": "+reason);
         IFile[] iFiles = javaFileToIFile(sourceFiles, project);
-        update = new UpdateAJMarkers(project, iFiles);
-        delete = new DeleteAJMarkers(project, iFiles);
+        update = new UpdateAJMarkers(project, iFiles,reason);
+        delete = new DeleteAJMarkers(project, iFiles,reason);
         rule = createSchedulingRule(project, iFiles);
     }
 
-    public DeleteAndUpdateAJMarkersJob(IProject project, File[] sourceFiles) {
-        super("Delete and update AspectJ markers for " + project.getName());
-        IFile[] iFiles = javaFileToIFile(sourceFiles, project);
-        update = new UpdateAJMarkers(project, iFiles);
-        delete = new DeleteAJMarkers(project, iFiles);
-        rule = createSchedulingRule(project, iFiles);
-    }
+//    public DeleteAndUpdateAJMarkersJob(IProject project, File[] sourceFiles, String reason) {
+//        super("Delete and update AspectJ markers for " + project.getName());
+//        IFile[] iFiles = javaFileToIFile(sourceFiles, project);
+//        update = new UpdateAJMarkers(project, iFiles,reason);
+//        delete = new DeleteAJMarkers(project, iFiles,reason);
+//        rule = createSchedulingRule(project, iFiles);
+//    }
 
     public IStatus run(IProgressMonitor monitor) {
         try {
diff --git a/org.eclipse.ajdt.ui/src/org/eclipse/ajdt/internal/ui/markers/UpdateAJMarkers.java b/org.eclipse.ajdt.ui/src/org/eclipse/ajdt/internal/ui/markers/UpdateAJMarkers.java
index c3eec9f..b2a5b88 100644
--- a/org.eclipse.ajdt.ui/src/org/eclipse/ajdt/internal/ui/markers/UpdateAJMarkers.java
+++ b/org.eclipse.ajdt.ui/src/org/eclipse/ajdt/internal/ui/markers/UpdateAJMarkers.java
@@ -58,19 +58,22 @@
 	private final IFile[] sourceFiles;
     private int fileCount;
     private int markerCount;
+    private String reason;
 	
 	/**
 	 * To update markers for the entire project
 	 * 
      * @param project the poject that needs updating
 	 */
-    public UpdateAJMarkers(IProject project) {
+    public UpdateAJMarkers(IProject project, String reason) {
         this.model = AJProjectModelFactory.getInstance().getModelForProject(project);
         this.project = project;
         this.sourceFiles = null;
         this.fileCount = 0;
         this.markerCount = 0;
+        this.reason = reason;
     }
+    
     /**
      * to update markers for the given files only.
      * 
@@ -81,10 +84,11 @@
      * 
      * @deprecated Use {@link UpdateAJMarkers#UpdateAJMarkers(IProject, IFile[])} instead
      */
-    public UpdateAJMarkers(IProject project, File[] sourceFiles) {
+    public UpdateAJMarkers(IProject project, File[] sourceFiles, String reason) {
         this.model = AJProjectModelFactory.getInstance().getModelForProject(project);
         this.project = project;
         this.sourceFiles = DeleteAndUpdateAJMarkersJob.javaFileToIFile(sourceFiles, project);        
+        this.reason = reason;
     }
     
     /**
@@ -96,20 +100,33 @@
      * need updating 
      * 
      */
-    public UpdateAJMarkers(IProject project, IFile[] sourceFiles) {
+    public UpdateAJMarkers(IProject project, IFile[] sourceFiles, String reason) {
         this.model = AJProjectModelFactory.getInstance().getModelForProject(project);
         this.project = project;
         this.sourceFiles = sourceFiles;        
+        this.reason = reason;
     }
 	
+    private String toJobString() {
+    	StringBuilder s = new StringBuilder();
+    	s.append("Create markers: "+project.getName());
+    	if (reason!=null && reason.length()!=0) {
+    		s.append(" - "+reason);
+    	}
+    	if (sourceFiles != null) {
+    		s.append(" ("+sourceFiles.length+" files)");
+    	}
+    	return s.toString();
+    }
+    
 	protected IStatus run(IProgressMonitor monitor) {
-        AJLog.logStart("Create markers: " + project.getName());
+        AJLog.logStart(toJobString());
         if (sourceFiles != null) {
             addMarkersForFiles(monitor);
         } else {
             addMarkersForProject(monitor);
         }
-        AJLog.logEnd(AJLog.BUILDER, "Create markers: " + project.getName(), "Finished creating markers for " + project.getName());
+        AJLog.logEnd(AJLog.BUILDER, toJobString(), "Finished creating markers for " + project.getName());
         AJLog.log(AJLog.BUILDER, "Created " + markerCount + " markers in " + fileCount + " files");
         return Status.OK_STATUS;
     }