1 package eu.svjatoslav.inspector.java.methods;
4 import java.io.IOException;
5 import java.util.HashMap;
8 import eu.svjatoslav.commons.file.FilePathParser;
9 import eu.svjatoslav.inspector.tokenizer.InvalidSyntaxException;
11 public class ProjectScanner {
13 private final File scanPath;
15 Map<File, Project> projects = new HashMap<File, Project>();
17 public ProjectScanner(final File projectPath) {
18 scanPath = projectPath;
24 if (!scanPath.exists())
25 System.out.println("Path not found: " + scanPath);
27 if (!scanPath.canRead())
28 System.out.println("Cannot read path: " + scanPath);
30 if (scanPath.isDirectory())
31 parseDirectory(scanPath);
33 if (scanPath.isFile())
37 public void parseDirectory(final File file) {
39 for (final File subFile : file.listFiles()) {
44 if (subFile.isDirectory())
45 parseDirectory(subFile);
49 public void parseFile(final File file) {
50 final String fileExtension = FilePathParser.getFileExtension(file);
51 if ("java".equalsIgnoreCase(fileExtension))
53 final JavaFile javaFile = new JavaFile(file);
54 } catch (final IOException e) {
55 System.out.println("Error parsing file: " + file.toString()
56 + ": " + e.toString());
57 } catch (final InvalidSyntaxException e) {
58 System.out.println("Syntax error occured while parsing file: "
59 + file.toString() + ": " + e.toString());