Refactory: remove unused classes, imports, fields and methods.
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpdt / internal / compiler / batch / FileSystem.java
index a1f60ab..2495f23 100644 (file)
@@ -15,159 +15,188 @@ import java.io.File;
 import net.sourceforge.phpdt.core.compiler.CharOperation;
 import net.sourceforge.phpdt.internal.compiler.env.INameEnvironment;
 import net.sourceforge.phpdt.internal.compiler.env.NameEnvironmentAnswer;
-import net.sourceforge.phpdt.internal.compiler.util.SuffixConstants;
+//import net.sourceforge.phpdt.internal.compiler.util.SuffixConstants;
 
 public class FileSystem implements INameEnvironment, SuffixConstants {
        Classpath[] classpaths;
+
        String[] knownFileNames;
 
        interface Classpath {
-               NameEnvironmentAnswer findClass(char[] typeName, String qualifiedPackageName, String qualifiedBinaryFileName);
-               boolean isPackage(String qualifiedPackageName); 
+               NameEnvironmentAnswer findClass(char[] typeName,
+                               String qualifiedPackageName, String qualifiedBinaryFileName);
+
+               boolean isPackage(String qualifiedPackageName);
+
                /**
-                * This method resets the environment. The resulting state is equivalent to
-                * a new name environment without creating a new object.
+                * This method resets the environment. The resulting state is equivalent
+                * to a new name environment without creating a new object.
                 */
                void reset();
        }
-/*
-       classPathNames is a collection is Strings representing the full path of each class path
-       initialFileNames is a collection is Strings, the trailing '.java' will be removed if its not already.
-*/
 
-public FileSystem(String[] classpathNames, String[] initialFileNames, String encoding) {
-       this(classpathNames, initialFileNames, encoding, null);
-}
-public FileSystem(String[] classpathNames, String[] initialFileNames, String encoding, int[] classpathDirectoryModes) {
-       int classpathSize = classpathNames.length;
-       this.classpaths = new Classpath[classpathSize];
-       String[] pathNames = new String[classpathSize];
-       int problemsOccured = 0;
-       for (int i = 0; i < classpathSize; i++) {
-//             try {
-                       File file = new File(convertPathSeparators(classpathNames[i]));
-                       if (file.isDirectory()) {
-                               if (file.exists()) {
-                                       if (classpathDirectoryModes == null){
-                                               this.classpaths[i] = new ClasspathDirectory(file, encoding);
-                                       } else {
-                                               this.classpaths[i] = new ClasspathDirectory(file, encoding, classpathDirectoryModes[i]);
-                                       }
-                                       pathNames[i] = ((ClasspathDirectory) this.classpaths[i]).path;
-                               }
-                       } else {
-                               String lowercaseClasspathName = classpathNames[i].toLowerCase();
-//                             if (lowercaseClasspathName.endsWith(SUFFIX_STRING_jar)
-//                                       || lowercaseClasspathName.endsWith(SUFFIX_STRING_zip)) {
-//                                     this.classpaths[i] = this.getClasspathJar(file); // will throw an IOException if file does not exist
-//                                     pathNames[i] = classpathNames[i].substring(0, classpathNames[i].lastIndexOf('.'));
+       /*
+        * classPathNames is a collection is Strings representing the full path of
+        * each class path initialFileNames is a collection is Strings, the trailing
+        * '.java' will be removed if its not already.
+        */
+
+//     public FileSystem(String[] classpathNames, String[] initialFileNames,
+//                     String encoding) {
+//             this(classpathNames, initialFileNames, encoding, null);
+//     }
+
+//     public FileSystem(String[] classpathNames, String[] initialFileNames,
+//                     String encoding, int[] classpathDirectoryModes) {
+//             int classpathSize = classpathNames.length;
+//             this.classpaths = new Classpath[classpathSize];
+//             String[] pathNames = new String[classpathSize];
+//             int problemsOccured = 0;
+//             for (int i = 0; i < classpathSize; i++) {
+//                     // try {
+//                     File file = new File(convertPathSeparators(classpathNames[i]));
+//                     if (file.isDirectory()) {
+//                             if (file.exists()) {
+//                                     if (classpathDirectoryModes == null) {
+//                                             this.classpaths[i] = new ClasspathDirectory(file,
+//                                                             encoding);
+//                                     } else {
+//                                             this.classpaths[i] = new ClasspathDirectory(file,
+//                                                             encoding, classpathDirectoryModes[i]);
+//                                     }
+//                                     pathNames[i] = ((ClasspathDirectory) this.classpaths[i]).path;
 //                             }
-                       }
-//             } catch (IOException e) {
-//                     this.classpaths[i] = null;
+//                     } else {
+//                             //String lowercaseClasspathName = classpathNames[i].toLowerCase();
+//                             // if (lowercaseClasspathName.endsWith(SUFFIX_STRING_jar)
+//                             // || lowercaseClasspathName.endsWith(SUFFIX_STRING_zip)) {
+//                             // this.classpaths[i] = this.getClasspathJar(file); // will
+//                             // throw an IOException if file does not exist
+//                             // pathNames[i] = classpathNames[i].substring(0,
+//                             // classpathNames[i].lastIndexOf('.'));
+//                             // }
+//                     }
+//                     // } catch (IOException e) {
+//                     // this.classpaths[i] = null;
+//                     // }
+//                     if (this.classpaths[i] == null)
+//                             problemsOccured++;
 //             }
-               if (this.classpaths[i] == null)
-                       problemsOccured++;
+//             if (problemsOccured > 0) {
+//                     Classpath[] newPaths = new Classpath[classpathSize
+//                                     - problemsOccured];
+//                     String[] newNames = new String[classpathSize - problemsOccured];
+//                     for (int i = 0, current = 0; i < classpathSize; i++)
+//                             if (this.classpaths[i] != null) {
+//                                     newPaths[current] = this.classpaths[i];
+//                                     newNames[current++] = pathNames[i];
+//                             }
+//                     classpathSize = newPaths.length;
+//                     this.classpaths = newPaths;
+//                     pathNames = newNames;
+//             }
+//
+//             this.knownFileNames = new String[initialFileNames.length];
+//             for (int i = initialFileNames.length; --i >= 0;) {
+//                     String fileName = initialFileNames[i];
+//                     String matchingPathName = null;
+//                     if (fileName.lastIndexOf(".") != -1) //$NON-NLS-1$
+//                             fileName = fileName.substring(0, fileName.lastIndexOf('.')); // remove
+//                                                                                                                                                             // trailing
+//                                                                                                                                                             // ".java"
+//
+//                     fileName = convertPathSeparators(fileName);
+//                     for (int j = 0; j < classpathSize; j++)
+//                             if (fileName.startsWith(pathNames[j]))
+//                                     matchingPathName = pathNames[j];
+//                     if (matchingPathName == null)
+//                             this.knownFileNames[i] = fileName; // leave as is...
+//                     else
+//                             this.knownFileNames[i] = fileName.substring(matchingPathName
+//                                             .length());
+//             }
+//     }
+
+       public void cleanup() {
+               for (int i = 0, max = this.classpaths.length; i < max; i++)
+                       this.classpaths[i].reset();
        }
-       if (problemsOccured > 0) {
-               Classpath[] newPaths = new Classpath[classpathSize - problemsOccured];
-               String[] newNames = new String[classpathSize - problemsOccured];
-               for (int i = 0, current = 0; i < classpathSize; i++)
-                       if (this.classpaths[i] != null) {
-                               newPaths[current] = this.classpaths[i];
-                               newNames[current++] = pathNames[i];
-                       }
-               classpathSize = newPaths.length;
-               this.classpaths = newPaths;
-               pathNames = newNames;
+
+//     private String convertPathSeparators(String path) {
+//             return File.separatorChar == '/' ? path.replace('\\', '/') : path
+//                             .replace('/', '\\');
+//     }
+
+       // private NameEnvironmentAnswer findClass(String qualifiedTypeName, char[]
+       // typeName){
+       // for (int i = 0, length = this.knownFileNames.length; i < length; i++)
+       // if (qualifiedTypeName.equals(this.knownFileNames[i]))
+       // return null; // looking for a file which we know was provided at the
+       // beginning of the compilation
+       //
+       // String qualifiedBinaryFileName = qualifiedTypeName + SUFFIX_STRING_class;
+       // String qualifiedPackageName =
+       // qualifiedTypeName.length() == typeName.length
+       // ? "" //$NON-NLS-1$
+       // : qualifiedBinaryFileName.substring(0, qualifiedTypeName.length() -
+       // typeName.length - 1);
+       // String qp2 = File.separatorChar == '/' ? qualifiedPackageName :
+       // qualifiedPackageName.replace('/', File.separatorChar);
+       // if (qualifiedPackageName == qp2) {
+       // for (int i = 0, length = this.classpaths.length; i < length; i++) {
+       // NameEnvironmentAnswer answer = this.classpaths[i].findClass(typeName,
+       // qualifiedPackageName, qualifiedBinaryFileName);
+       // if (answer != null) return answer;
+       // }
+       // } else {
+       // String qb2 = qualifiedBinaryFileName.replace('/', File.separatorChar);
+       // for (int i = 0, length = this.classpaths.length; i < length; i++) {
+       // Classpath p = this.classpaths[i];
+       // NameEnvironmentAnswer answer = (p instanceof ClasspathJar)
+       // ? p.findClass(typeName, qualifiedPackageName, qualifiedBinaryFileName)
+       // : p.findClass(typeName, qp2, qb2);
+       // if (answer != null) return answer;
+       // }
+       // }
+       // return null;
+       // }
+       public NameEnvironmentAnswer findType(char[][] compoundName) {
+               // if (compoundName != null)
+               // return findClass(
+               // new String(CharOperation.concatWith(compoundName, '/')),
+               // compoundName[compoundName.length - 1]);
+               return null;
        }
 
-       this.knownFileNames = new String[initialFileNames.length];
-       for (int i = initialFileNames.length; --i >= 0;) {
-               String fileName = initialFileNames[i];
-               String matchingPathName = null;
-               if (fileName.lastIndexOf(".") != -1) //$NON-NLS-1$
-                       fileName = fileName.substring(0, fileName.lastIndexOf('.')); // remove trailing ".java"
+       public NameEnvironmentAnswer findType(char[] typeName, char[][] packageName) {
+               // if (typeName != null)
+               // return findClass(
+               // new String(CharOperation.concatWith(packageName, typeName, '/')),
+               // typeName);
+               return null;
+       }
 
-               fileName = convertPathSeparators(fileName);
-               for (int j = 0; j < classpathSize; j++)
-                       if (fileName.startsWith(pathNames[j]))
-                               matchingPathName = pathNames[j];
-               if (matchingPathName == null)
-                       this.knownFileNames[i] = fileName; // leave as is...
-               else
-                       this.knownFileNames[i] = fileName.substring(matchingPathName.length());
+       // public ClasspathJar getClasspathJar(File file) throws IOException {
+       // return new ClasspathJar(new ZipFile(file), true);
+       // }
+       public boolean isPackage(char[][] compoundName, char[] packageName) {
+               String qualifiedPackageName = new String(CharOperation.concatWith(
+                               compoundName, packageName, '/'));
+               String qp2 = File.separatorChar == '/' ? qualifiedPackageName
+                               : qualifiedPackageName.replace('/', File.separatorChar);
+               if (qualifiedPackageName == qp2) {
+                       for (int i = 0, length = this.classpaths.length; i < length; i++)
+                               if (this.classpaths[i].isPackage(qualifiedPackageName))
+                                       return true;
+               }
+               // else {
+               // for (int i = 0, length = this.classpaths.length; i < length; i++) {
+               // Classpath p = this.classpaths[i];
+               // if ((p instanceof ClasspathJar) ? p.isPackage(qualifiedPackageName) :
+               // p.isPackage(qp2))
+               // return true;
+               // }
+               // }
+               return false;
        }
 }
-public void cleanup() {
-       for (int i = 0, max = this.classpaths.length; i < max; i++)
-               this.classpaths[i].reset();
-}
-private String convertPathSeparators(String path) {
-       return File.separatorChar == '/'
-               ? path.replace('\\', '/')
-                : path.replace('/', '\\');
-}
-//private NameEnvironmentAnswer findClass(String qualifiedTypeName, char[] typeName){
-//     for (int i = 0, length = this.knownFileNames.length; i < length; i++)
-//             if (qualifiedTypeName.equals(this.knownFileNames[i]))
-//                     return null; // looking for a file which we know was provided at the beginning of the compilation
-//
-//     String qualifiedBinaryFileName = qualifiedTypeName + SUFFIX_STRING_class;
-//     String qualifiedPackageName =
-//             qualifiedTypeName.length() == typeName.length
-//                     ? "" //$NON-NLS-1$
-//                     : qualifiedBinaryFileName.substring(0, qualifiedTypeName.length() - typeName.length - 1);
-//     String qp2 = File.separatorChar == '/' ? qualifiedPackageName : qualifiedPackageName.replace('/', File.separatorChar);
-//     if (qualifiedPackageName == qp2) {
-//             for (int i = 0, length = this.classpaths.length; i < length; i++) {
-//                     NameEnvironmentAnswer answer = this.classpaths[i].findClass(typeName, qualifiedPackageName, qualifiedBinaryFileName);
-//                     if (answer != null) return answer;
-//             }
-//     } else {
-//             String qb2 = qualifiedBinaryFileName.replace('/', File.separatorChar);
-//             for (int i = 0, length = this.classpaths.length; i < length; i++) {
-//                     Classpath p = this.classpaths[i];
-//                     NameEnvironmentAnswer answer = (p instanceof ClasspathJar)
-//                             ? p.findClass(typeName, qualifiedPackageName, qualifiedBinaryFileName)
-//                             : p.findClass(typeName, qp2, qb2);
-//                     if (answer != null) return answer;
-//             }
-//     }
-//     return null;
-//}
-public NameEnvironmentAnswer findType(char[][] compoundName) {
-//     if (compoundName != null)
-//             return findClass(
-//                     new String(CharOperation.concatWith(compoundName, '/')),
-//                     compoundName[compoundName.length - 1]);
-       return null;
-}
-public NameEnvironmentAnswer findType(char[] typeName, char[][] packageName) {
-//     if (typeName != null)
-//             return findClass(
-//                     new String(CharOperation.concatWith(packageName, typeName, '/')),
-//                     typeName);
-       return null;
-}
-//public ClasspathJar getClasspathJar(File file) throws IOException {
-//     return new ClasspathJar(new ZipFile(file), true);
-//}
-public boolean isPackage(char[][] compoundName, char[] packageName) {
-       String qualifiedPackageName = new String(CharOperation.concatWith(compoundName, packageName, '/'));
-       String qp2 = File.separatorChar == '/' ? qualifiedPackageName : qualifiedPackageName.replace('/', File.separatorChar);
-       if (qualifiedPackageName == qp2) {
-               for (int i = 0, length = this.classpaths.length; i < length; i++)
-                       if (this.classpaths[i].isPackage(qualifiedPackageName))
-                               return true;
-       } 
-//     else {
-//             for (int i = 0, length = this.classpaths.length; i < length; i++) {
-//                     Classpath p = this.classpaths[i];
-//                     if ((p instanceof ClasspathJar) ? p.isPackage(qualifiedPackageName) : p.isPackage(qp2))
-//                             return true;
-//             }
-//     }
-       return false;
-}
-}