@Override public void buildStarting(final BuildContext[] files, boolean isBatch) { // We handle batch builds in a separate job to avoid blocking for a long // time in the case of batch (clean) builds. if (isBatch) { assert files.length > 0; IProject project = files[0].getFile().getProject(); synchronized (this) { Job job = validationJobs.get(project); if (job != null) { job.cancel(); } job = new Job("Validating GWT components") { @Override protected IStatus run(IProgressMonitor monitor) { monitor.beginTask("validating", files.length); handleBuildStarting(files, monitor); monitor.done(); return new JobStatus(Status.OK, this, "done"); } }; validationJobs.put(project, job); job.schedule(); } } else { handleBuildStarting(files, null); } }
@Override public void buildStarting(BuildContext[] files, boolean isBatch) { for (BuildContext file : files) { IProject project = file.getFile().getProject(); IJavaProject javaProject = JavaCore.create(project); Set<BuildContext> projectFileSet = javaProjectToFileSet.get(javaProject); if (projectFileSet == null) { projectFileSet = new HashSet<>(); javaProjectToFileSet.put(javaProject, projectFileSet); } projectFileSet.add(file); } }
@Override public void buildFinished(IJavaProject javaProject) { Set<BuildContext> projectFileSet = javaProjectToFileSet.get(javaProject); if (projectFileSet == null) { // buildFinished might be called without // buildStarting return; } for (BuildContext file : projectFileSet) { validateFile(file, javaProject); } javaProjectToFileSet.remove(javaProject); }
public PathGeneratorCategorizedProblem(BuildContext context,String pathGenerator,Location location) { super(); this.context = context; this.pathGenerator=pathGenerator; this.location=location; }
@Override public void buildStarting(BuildContext[] files, boolean isBatch) { log("buildStarting"); }
@Override public void buildStarting(BuildContext[] files, boolean isBatch) { }
@Override public void processAnnotations(BuildContext[] files) { }
public void processAnnotations(BuildContext[] files) { }