X-Git-Url: http://secure.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/ui/util/PHPElementVisitor.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/ui/util/PHPElementVisitor.java new file mode 100644 index 0000000..54db23d --- /dev/null +++ b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/ui/util/PHPElementVisitor.java @@ -0,0 +1,44 @@ +package net.sourceforge.phpdt.internal.ui.util; + +import java.util.ArrayList; +import java.util.List; + +import org.eclipse.core.resources.IFile; +import org.eclipse.core.resources.IFolder; +import org.eclipse.core.resources.IResource; +import org.eclipse.core.resources.IResourceVisitor; +import org.eclipse.core.runtime.CoreException; + +public class PHPElementVisitor implements IResourceVisitor { + protected List phpFiles = new ArrayList(); + + public PHPElementVisitor() { + super(); + } + + public boolean visit(IResource resource) throws CoreException { + switch (resource.getType()) { + case IResource.PROJECT : + return true; + + case IResource.FOLDER : + return true; + + case IResource.FILE : + IFile fileResource = (IFile) resource; + if ( "php".equals(fileResource.getFileExtension()) || + "php3".equals(fileResource.getFileExtension()) || + "php4".equals(fileResource.getFileExtension()) ) { + phpFiles.add(fileResource); + return true; + } + + default : + return false; + } + } + + public Object[] getCollectedPHPFiles() { + return phpFiles.toArray(); + } +}