package org.checkerframework.eclipse.builder; import java.util.ArrayList; import java.util.HashSet; import java.util.List; import org.checkerframework.eclipse.util.Util; import org.eclipse.core.resources.IResourceDelta; import org.eclipse.core.resources.IResourceDeltaVisitor; import org.eclipse.core.runtime.CoreException; public class CheckerResourceVisitor implements IResourceDeltaVisitor { HashSet<String> buildFiles; CheckerResourceVisitor() { buildFiles = new HashSet<String>(); } @Override public boolean visit(IResourceDelta delta) throws CoreException { // if the file has been removed, we don't need to visit // its children or process it any further if (delta.getKind() == IResourceDelta.REMOVED) { return false; } else if (Util.isJavaFile(delta.getResource())) { buildFiles.add(delta.getResource().getLocation().toOSString()); } return true; } public List<String> getBuildFiles() { List<String> resultList = new ArrayList<String>(); resultList.addAll(buildFiles); return resultList; } }