]> source.dussan.org Git - aspectj.git/commitdiff
big refactoring
authoraclement <aclement>
Fri, 9 May 2008 03:16:47 +0000 (03:16 +0000)
committeraclement <aclement>
Fri, 9 May 2008 03:16:47 +0000 (03:16 +0000)
util/src/org/aspectj/util/CharOperation.java [deleted file]
util/src/org/aspectj/util/CollectionUtil.java [deleted file]
util/src/org/aspectj/util/ConfigParser.java [deleted file]
util/src/org/aspectj/util/FileUtil.java
util/src/org/aspectj/util/LangUtil.java
util/src/org/aspectj/util/NameConvertor.java [deleted file]
util/src/org/aspectj/util/NonLocalExit.java [deleted file]
util/src/org/aspectj/util/StreamPrintWriter.java [deleted file]
util/testsrc/org/aspectj/util/NameConvertorTest.java [deleted file]
util/testsrc/org/aspectj/util/UtilTests.java

diff --git a/util/src/org/aspectj/util/CharOperation.java b/util/src/org/aspectj/util/CharOperation.java
deleted file mode 100644 (file)
index 1fe7ac4..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-/********************************************************************
- * Copyright (c) 2006 Contributors. All rights reserved. 
- * This program and the accompanying materials are made available 
- * under the terms of the Eclipse Public License v1.0 
- * which accompanies this distribution and is available at 
- * http://eclipse.org/legal/epl-v10.html 
- *  
- * Contributors: IBM Corporation - initial API and implementation 
- *                              Helen Hawkins   - initial version
- *******************************************************************/
-package org.aspectj.util;
-
-
-/**
- * Taken from org.aspectj.org.eclipse.jdt.core.compiler.CharOperation
- *
- */
-public class CharOperation {
-       
-       /**
-        * Taken from org.aspectj.org.eclipse.jdt.core.compiler.CharOperation
-        */     
-       public static final char[] subarray(char[] array, int start, int end) {
-               if (end == -1)
-                       end = array.length;
-               if (start > end)
-                       return null;
-               if (start < 0)
-                       return null;
-               if (end > array.length)
-                       return null;
-
-               char[] result = new char[end - start];
-               System.arraycopy(array, start, result, 0, end - start);
-               return result;
-       }
-       
-       /**
-        * Taken from org.aspectj.org.eclipse.jdt.core.compiler.CharOperation
-        */     
-       public static final int lastIndexOf(char toBeFound, char[] array) {
-               for (int i = array.length; --i >= 0;)
-                       if (toBeFound == array[i])
-                               return i;
-               return -1;
-       }
-       
-       /**
-        * Taken from org.aspectj.org.eclipse.jdt.core.compiler.CharOperation
-        */     
-       public static final boolean contains(char character, char[] array) {
-               for (int i = array.length; --i >= 0;)
-                       if (array[i] == character)
-                               return true;
-               return false;
-       }
-
-       /**
-        * Taken from org.aspectj.org.eclipse.jdt.core.compiler.CharOperation
-        */     
-       public static final int indexOf(char toBeFound, char[] array) {
-               for (int i = 0; i < array.length; i++)
-                       if (toBeFound == array[i])
-                               return i;
-               return -1;
-       }
-       
-       /**
-        * Taken from org.aspectj.org.eclipse.jdt.core.compiler.CharOperation
-        */     
-       public static final char[] concat(char[] first, char[] second) {
-               if (first == null)
-                       return second;
-               if (second == null)
-                       return first;
-
-               int length1 = first.length;
-               int length2 = second.length;
-               char[] result = new char[length1 + length2];
-               System.arraycopy(first, 0, result, 0, length1);
-               System.arraycopy(second, 0, result, length1, length2);
-               return result;
-       }
-       
-       /**
-        * Taken from org.aspectj.org.eclipse.jdt.core.compiler.CharOperation
-        */     
-       public static final boolean equals(char[] first, char[] second) {
-               if (first == second)
-                       return true;
-               if (first == null || second == null)
-                       return false;
-               if (first.length != second.length)
-                       return false;
-
-               for (int i = first.length; --i >= 0;)
-                       if (first[i] != second[i])
-                               return false;
-               return true;
-       }
-       
-       /**
-        * Taken from org.aspectj.org.eclipse.jdt.core.compiler.CharOperation
-        */     
-       public static final void replace(
-               char[] array,
-               char toBeReplaced,
-               char replacementChar) {
-               if (toBeReplaced != replacementChar) {
-                       for (int i = 0, max = array.length; i < max; i++) {
-                               if (array[i] == toBeReplaced)
-                                       array[i] = replacementChar;
-                       }
-               }
-       }
-}
diff --git a/util/src/org/aspectj/util/CollectionUtil.java b/util/src/org/aspectj/util/CollectionUtil.java
deleted file mode 100644 (file)
index a8efa59..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/* *******************************************************************
- * Copyright (c) 1999-2001 Xerox Corporation, 
- *               2002 Palo Alto Research Center, Incorporated (PARC).
- * All rights reserved. 
- * This program and the accompanying materials are made available 
- * under the terms of the Eclipse Public License v1.0 
- * which accompanies this distribution and is available at 
- * http://www.eclipse.org/legal/epl-v10.html 
- *  
- * Contributors: 
- *     Xerox/PARC     initial implementation 
- * ******************************************************************/
-
-
-package org.aspectj.util;
-
-
-import java.util.*;
-
-public class CollectionUtil {
-       public static final String[] NO_STRINGS = new String[0];
-       
-       
-    public static List getListInMap(Map map, Object key) {
-        List list = (List)map.get(key);
-        if (list == null) {
-            list = new ArrayList();
-            map.put(key, list);
-        }
-        return list;
-    }
-
-    public static SortedSet getSortedSetInMap(Map map, Object key) {
-        SortedSet list = (SortedSet)map.get(key);
-        if (list == null) {
-            list = new TreeSet();
-            map.put(key, list);
-        }
-        return list;
-    }
-
-    public static Set getSetInMap(Map map, Object key) {
-        Set list = (Set)map.get(key);
-        if (list == null) {
-            list = new HashSet();
-            map.put(key, list);
-        }
-        return list;
-    }
-
-    public static Map getMapInMap(Map map, Object key) {
-        Map list = (Map)map.get(key);
-        if (list == null) {
-            list = new HashMap();
-            map.put(key, list);
-        }
-        return list;
-    }
-    
-}
diff --git a/util/src/org/aspectj/util/ConfigParser.java b/util/src/org/aspectj/util/ConfigParser.java
deleted file mode 100644 (file)
index 0ea1bb6..0000000
+++ /dev/null
@@ -1,311 +0,0 @@
-/* *******************************************************************
- * Copyright (c) 1999-2001 Xerox Corporation, 
- *               2002 Palo Alto Research Center, Incorporated (PARC).
- * All rights reserved. 
- * This program and the accompanying materials are made available 
- * under the terms of the Eclipse Public License v1.0 
- * which accompanies this distribution and is available at 
- * http://www.eclipse.org/legal/epl-v10.html 
- *  
- * Contributors: 
- *     Xerox/PARC     initial implementation 
- * ******************************************************************/
-
-
-
-package org.aspectj.util;
-
-import java.util.*;
-import java.io.*;
-
-public class ConfigParser {
-    Location location;
-    protected File relativeDirectory = null;
-    protected List files = new LinkedList();
-    private boolean fileParsed = false;
-    protected static String CONFIG_MSG = "build config error: ";  
-    
-    public List getFiles() { return files; }
-
-    public void parseCommandLine(String[] argsArray) throws ParseException {
-        location = new CommandLineLocation();
-        LinkedList args = new LinkedList();
-        for (int i = 0; i < argsArray.length; i++) {
-            args.add(new Arg(argsArray[i], location));
-        }
-        parseArgs(args);
-    }
-
-    public void parseConfigFile(File configFile) throws ParseException {
-        if (fileParsed == true) {
-            throw new ParseException(CONFIG_MSG + "The file has already been parsed.", null);
-        } else {
-            parseConfigFileHelper(configFile);
-        }
-    }
-
-    /**
-     * @throws ParseException   if the config file has already been prased.
-     */
-    private void parseConfigFileHelper(File configFile) {
-        if (!configFile.exists()) {
-            showError("file does not exist: " + configFile.getPath());
-            return;
-        }
-
-        LinkedList args = new LinkedList();
-        int lineNum = 0;
-
-        try {
-            BufferedReader stream =
-                new BufferedReader(new FileReader(configFile));
-            String line = null;
-            while ( (line = stream.readLine()) != null) {
-                lineNum += 1;
-                line = stripWhitespaceAndComments(line);
-                if (line.length() == 0) continue;
-                args.add(new Arg(line, new SourceLocation(configFile, lineNum)));
-            }
-            stream.close();
-        } catch (IOException e) {
-            location = new SourceLocation(configFile, lineNum);
-            showError("error reading config file: " + e.toString());
-        }
-        File oldRelativeDirectory = relativeDirectory; // for nested arg files;
-        relativeDirectory = configFile.getParentFile();
-        parseArgs(args);
-        relativeDirectory = oldRelativeDirectory;
-        fileParsed = true;
-    }
-
-    File getCurrentDir() {
-        return location.getDirectory();
-    }
-
-    String stripSingleLineComment(String s, String commentString) {
-        int commentStart = s.indexOf(commentString);
-        if (commentStart == -1) return s;
-        else return s.substring(0, commentStart);
-    }
-
-    String stripWhitespaceAndComments(String s) {
-        s = stripSingleLineComment(s, "//");
-        s = stripSingleLineComment(s, "#");
-        s = s.trim();
-        if (s.startsWith("\"") && s.endsWith("\"")) {
-            s = s.substring(1, s.length()-1);
-        }
-        return s;
-    }
-
-
-    /** ??? We would like to call a showNonFatalError method here
-     *  to show all errors in config files before aborting the compilation
-     */
-    protected void addFile(File sourceFile) {
-        if (!sourceFile.isFile()) {
-            showError("source file does not exist: " + sourceFile.getPath());
-        }
-        
-        files.add(sourceFile);
-    }
-
-    void addFileOrPattern(File sourceFile) {
-        if (sourceFile.getName().equals("*.java")) {
-            addFiles(sourceFile.getParentFile(), new FileFilter() {
-                    public boolean accept(File f) {
-                        return f != null && f.getName().endsWith(".java");
-                    }});
-        } else if (sourceFile.getName().equals("*.aj")) {
-            addFiles(sourceFile.getParentFile(), new FileFilter() {
-                    public boolean accept(File f) {
-                        return f != null && f.getName().endsWith(".aj");
-                    }});
-        } else {
-            addFile(sourceFile);
-        }
-    }
-
-    void addFiles(File dir, FileFilter filter) {
-        if (dir == null) dir = new File(System.getProperty("user.dir"));
-        
-        if (!dir.isDirectory()) {
-            showError("can't find " + dir.getPath());
-        } else {
-
-          File[] files = dir.listFiles(filter);
-          if (files.length == 0) {
-            showWarning("no matching files found in: " + dir);
-          }
-
-          for (int i = 0; i < files.length; i++) {
-            addFile(files[i]);
-          }
-        }
-    }
-
-    protected void parseOption(String arg, LinkedList args) {
-        showWarning("unrecognized option: " + arg);
-    }
-
-    protected void showWarning(String message) {
-        if (location != null) {
-            message += " at " + location.toString();
-        }
-        System.err.println(CONFIG_MSG + message);
-    }
-
-    protected void showError(String message) {
-        throw new ParseException(CONFIG_MSG + message, location);
-    }
-
-    void parseArgs(LinkedList args) {
-        while (args.size() > 0) parseOneArg(args);
-    }
-
-    protected Arg removeArg(LinkedList args) {
-        if (args.size() == 0) {
-            showError("value missing");
-            return null;
-        } else {
-            return (Arg)args.removeFirst();
-        }
-    }
-
-    protected String removeStringArg(LinkedList args) {
-        Arg arg = removeArg(args);
-        if (arg == null) return null;
-        return arg.getValue();
-    }
-
-    boolean isSourceFileName(String s) {
-        if (s.endsWith(".java")) return true;
-        if (s.endsWith(".aj")) return true;
-        if (s.endsWith(".ajava")) {
-            showWarning(".ajava is deprecated, replace with .aj or .java: " + s);
-            return true;
-        }
-        return false;
-    }
-
-    void parseOneArg(LinkedList args) {
-        Arg arg = removeArg(args);
-        String v = arg.getValue();
-        location = arg.getLocation();
-        if (v.startsWith("@")) {
-            parseImportedConfigFile(v.substring(1));
-        } else if (v.equals("-argfile")) {
-            parseConfigFileHelper(makeFile(removeArg(args).getValue()));
-        } else if (isSourceFileName(v)) {
-            addFileOrPattern(makeFile(v));
-        } else {
-            parseOption(arg.getValue(), args);
-        }
-    }
-
-       protected void parseImportedConfigFile(String relativeFilePath) {
-               parseConfigFileHelper(makeFile(relativeFilePath));              
-       }
-
-    public File makeFile(String name) {
-        if (relativeDirectory != null) {
-            return makeFile(relativeDirectory,name);
-        } else {
-            return makeFile(getCurrentDir(), name);
-        }
-    }
-
-    private File makeFile(File dir, String name) {
-        name = name.replace('/', File.separatorChar);
-        File ret = new File(name);
-        boolean isAbsolute = ret.isAbsolute()
-            || (ret.exists() && ret.getPath().startsWith(File.separator));
-        if (!isAbsolute && (dir != null)) { 
-          ret = new File(dir, name);
-        }
-        try {
-               ret = ret.getCanonicalFile();
-        } catch (IOException ioEx) {
-               // proceed without canonicalization
-               // so nothing to do here
-        }
-        return ret;
-    }
-
-
-    protected static class Arg {
-        private Location location;
-        private String value;
-        public Arg(String value, Location location) {
-            this.value = value;
-            this.location = location;
-        }
-       
-               public void setValue(String value) {
-                       this.value = value;     
-               }
-
-               public void setLocation(Location location) {
-                       this.location = location;
-               }
-               
-        public String getValue() { return value; }
-        public Location getLocation() { return location; }
-    }
-    
-    static abstract class Location {
-        public abstract File getFile();
-        public abstract File getDirectory();
-        public abstract int getLine();
-        public abstract String toString();
-    }
-
-    static class SourceLocation extends Location {
-        private int line;
-        private File file;
-        public SourceLocation(File file, int line) {
-            this.line = line;
-            this.file = file;
-        }
-
-        public File getFile() { return file; }
-        public File getDirectory() { return file.getParentFile(); }
-        public int getLine() { return line; }
-
-        public String toString() {
-            return file.getPath()+":"+line;
-        }
-    }
-    
-    static class CommandLineLocation extends Location {
-        public File getFile() {
-            return new File(System.getProperty("user.dir"));
-        }
-        
-        public File getDirectory() {
-            return new File(System.getProperty("user.dir"));
-        }
-        public int getLine() { return -1; }
-        public String toString() {
-            return "command-line";
-        }
-    }
-
-    public static class ParseException extends RuntimeException {
-        private Location location;
-
-        public ParseException(String message, Location location) {
-            super(message);
-            this.location = location;
-        }
-
-        public int getLine() {
-            if (location == null) return -1;
-            return location.getLine();
-        }
-        public File getFile() {
-            if (location == null) return null;
-            return location.getFile();
-        }
-    }
-}
index d7892f6eba194a9ac5d2c87718ba4dd37a4dbd1b..6b76df1b2d47529c505608054767d9f8a1df8d19 100644 (file)
@@ -1188,6 +1188,7 @@ public class FileUtil {
         * @return List of String of the form file:line for each found entry
      *          (never null, might be empty)
         */
+       // OPTIMIZE only used by tests? move it out
        public static List lineSeek(String sought, List sources, boolean listAll,
         PrintStream errorSink) {
         if (LangUtil.isEmpty(sought) || LangUtil.isEmpty(sources)) {
index d9003328b519936ba72941e2d136808c9099b7e3..9ab53cf046daf5e5fe0cbea1fb279e58bcd5e85a 100644 (file)
@@ -16,10 +16,6 @@ package org.aspectj.util;
 
 //import java.awt.event.InvocationEvent;
 import java.io.*;
-import java.io.File;
-import java.io.IOException;
-import java.io.PrintWriter;
-import java.io.StringWriter;
 import java.lang.reflect.Array;
 import java.lang.reflect.InvocationTargetException;
 import java.security.PrivilegedActionException;
@@ -40,6 +36,9 @@ import java.util.StringTokenizer;
  * 
  */
 public class LangUtil {    
+
+       public static final String[] NO_STRINGS = new String[0];
+       
     /** map from String version to String class implemented in that version or later */
     private static final Map VM_CLASSES;
 
@@ -90,6 +89,7 @@ public class LangUtil {
        private static boolean is13VMOrGreater = true;
        private static boolean is14VMOrGreater = true;
        private static boolean is15VMOrGreater = false;
+       private static boolean is16VMOrGreater = false;
        
        static {
         String vm = System.getProperty("java.version"); // JLS 20.18.7
@@ -99,12 +99,14 @@ public class LangUtil {
                        is14VMOrGreater = false;
                } else if (vm.startsWith("1.5") || vm.startsWith("1.6")) {      
                        is15VMOrGreater = true;
+                       is16VMOrGreater = true;
                }
        }
        
        public static boolean is13VMOrGreater() { return is13VMOrGreater;}
        public static boolean is14VMOrGreater() { return is14VMOrGreater;}
        public static boolean is15VMOrGreater() { return is15VMOrGreater;}
+       public static boolean is16VMOrGreater() { return is16VMOrGreater;}
     
     /**
      * Shorthand for "if null, throw IllegalArgumentException"
diff --git a/util/src/org/aspectj/util/NameConvertor.java b/util/src/org/aspectj/util/NameConvertor.java
deleted file mode 100644 (file)
index 2880937..0000000
+++ /dev/null
@@ -1,213 +0,0 @@
-/********************************************************************
- * Copyright (c) 2006 Contributors. All rights reserved. 
- * This program and the accompanying materials are made available 
- * under the terms of the Eclipse Public License v1.0 
- * which accompanies this distribution and is available at 
- * http://eclipse.org/legal/epl-v10.html 
- *  
- * Contributors: IBM Corporation - initial API and implementation 
- *                              Helen Hawkins   - initial version
- *******************************************************************/
-package org.aspectj.util;
-
-public class NameConvertor {
-
-       private static final char BOOLEAN       = 'Z';
-       private static final char BYTE          = 'B';
-       private static final char CHAR          = 'C';
-       private static final char DOUBLE        = 'D';
-       private static final char FLOAT         = 'F';
-       private static final char INT           = 'I';
-       private static final char LONG          = 'J';
-       private static final char SHORT         = 'S';
-       private static final char ARRAY         = '[';
-       private static final char RESOLVED = 'L';
-       private static final char UNRESOLVED = 'Q';
-       
-       public static final char PARAMETERIZED = 'P';
-       
-       private static final char[] BOOLEAN_NAME = new char[]{'b','o','o','l','e','a','n'};
-       private static final char[] BYTE_NAME = new char[]{'b','y','t','e'};
-       private static final char[] CHAR_NAME = new char[]{'c','h','a','r'};
-       private static final char[] DOUBLE_NAME = new char[]{'d','o','u','b','l','e'};
-       private static final char[] FLOAT_NAME = new char[]{'f','l','o','a','t'};
-       private static final char[] INT_NAME = new char[]{'i','n','t'};
-       private static final char[] LONG_NAME = new char[]{'l','o','n','g'};
-       private static final char[] SHORT_NAME = new char[]{'s','h','o','r','t'};
-
-       private static final char[] SQUARE_BRACKETS = new char[]{'[',']'};
-       private static final char[] GREATER_THAN = new char[]{'>'};
-       private static final char[] LESS_THAN = new char[]{'<'};
-       private static final char[] COMMA = new char[]{','};
-       private static final char[] BACKSLASH_LESSTHAN = new char[]{'\\','<'};
-       private static final char[] SEMICOLON = new char[]{';'};
-       
-       
-       /**
-        * Creates a readable name from the given char array, for example, 
-        * given 'I' returns 'int'. Moreover, given 
-        * 'Ljava/lang/String;<Ljava/lang/String;>' returns
-        * 'java.lang.String<java.lang.String>'
-        */
-       public static char[] convertFromSignature(char[] c) {
-               int lt = CharOperation.indexOf('<',c);
-               int sc = CharOperation.indexOf(';',c);
-               int gt = CharOperation.indexOf('>',c);
-               
-               int smallest = 0;
-               if (lt  == -1 && sc == -1 && gt == -1) {
-                       // we have something like 'Ljava/lang/String' or 'I'
-                       return getFullyQualifiedTypeName(c);
-               } else if (lt != -1 && (sc == -1 || lt <= sc) && (gt == -1 || lt <= gt)) {
-                       // we have something like 'Ljava/lang/String<I'
-                       smallest = lt;
-               } else if (sc != -1 && (lt == -1 || sc <= lt) && (gt == -1 || sc <= gt)) {
-                       // we have something like 'Ljava/lang/String;I'
-                       smallest = sc;
-               } else {
-                       // we have something like '>;'
-                       smallest = gt;
-               }
-               char[] first = CharOperation.subarray(c,0,smallest);
-               char[] second = CharOperation.subarray(c,smallest+1,c.length);
-               if (smallest == 0 && first.length == 0 && c[0] == '>') {
-                       // c = {'>',';'} therefore we just want to return '>' to
-                       // close the generic signature
-                       return GREATER_THAN;
-               } else if (first.length == 1 && second.length == 0) {
-                       return first;
-               } else if (second.length == 0 || (second.length == 1 && second[0] == ';')){
-                       // we've reached the end of the array, therefore only care about
-                       // the first part
-                       return convertFromSignature(first);
-               } else if (smallest == lt) {
-                       // if c = 'Ljava/lang/String;<I' then first = 'Ljava/Lang/String;' and
-                       // second = 'I'. Want to end up with 'Ljava.lang.String<I' and so add
-                       // the '<' back.
-                       char[] inclLT = CharOperation.concat(convertFromSignature(first),LESS_THAN);
-                       return CharOperation.concat(inclLT,convertFromSignature(second));
-               } else if (smallest == gt) {
-                       char[] inclLT = CharOperation.concat(convertFromSignature(first),GREATER_THAN);
-                       return CharOperation.concat(inclLT,convertFromSignature(second));                       
-               } else if (second.length != 2) {
-                       // if c = 'Ljava/lang/Sting;LMyClass' then first = 'Ljava/lang/String'
-                       // and second = 'LMyClass'. Want to end up with 'java.lang.String,MyClass
-                       // so want to add a ','. However, only want to do this if we're in the 
-                       // middle of a '<...>'
-                       char[] inclComma = CharOperation.concat(convertFromSignature(first),COMMA);
-                       return CharOperation.concat(inclComma,convertFromSignature(second));
-               }
-               return CharOperation.concat(convertFromSignature(first),convertFromSignature(second));
-       }
-       
-       
-       /**
-        * Given a char array, returns the type name for this. For example
-        * 'I' returns 'int', 'Ljava/lang/String' returns 'java.lang.String' and
-        * '[Ljava/lang/String' returns 'java.lang.String[]'
-        * 
-        * NOTE: Doesn't go any deaper so given 'Ljava/lang/String;<Ljava/lang/String;>' 
-        * it would return 'java.lang.String;<Ljava.lang.String;>', however, only called
-        * with something like 'Ljava/lang/String'
-        */
-       private static char[] getFullyQualifiedTypeName(char[] c) {
-               if (c.length == 0) {
-                       return c;
-               } 
-               if (c[0] == BOOLEAN) {
-                       return BOOLEAN_NAME;
-               } else if (c[0] == BYTE) {
-                       return BYTE_NAME;
-               } else if (c[0] == CHAR) {
-                       return CHAR_NAME;
-               } else if (c[0] == DOUBLE) {
-                       return DOUBLE_NAME;
-               } else if (c[0] == FLOAT) {
-                       return FLOAT_NAME;
-               } else if (c[0] == INT) {
-                       return INT_NAME;
-               } else if (c[0] == LONG) {
-                       return LONG_NAME;
-               } else if (c[0] == SHORT) {
-                       return SHORT_NAME;
-               } else if (c[0] == ARRAY) {
-                       return CharOperation.concat(
-                                       getFullyQualifiedTypeName(CharOperation.subarray(c,1,c.length)),
-                                       SQUARE_BRACKETS);
-               } else {
-                       char[] type = CharOperation.subarray(c,1,c.length);
-                       CharOperation.replace(type,'/','.');
-                       return type;
-               }
-       }
-       
-       /**
-        * Given 'Ppkg/MyGenericClass<Ljava/lang/String;Ljava/lang/Integer;>;'
-        * will return 'QMyGenericClass<QString;QInteger;>;'
-        */
-       public static char[] createShortName(char[] c) {
-               int lt = CharOperation.indexOf('<',c);
-               int sc = CharOperation.indexOf(';',c);
-               int gt = CharOperation.indexOf('>',c);
-               
-               int smallest = 0;
-               if (lt == -1 && sc == -1 && gt == -1) {
-                       // we have something like 'Ljava/lang/String' or 'I'
-                       return getTypeName(c);
-               } else if (lt != -1 && (sc == -1 || lt <= sc) && (gt == -1 || lt <= gt)) {
-                       // we have something like 'Ljava/lang/String<I'
-                       smallest = lt;
-               } else if (sc != -1 && (lt == -1 || sc <= lt) && (gt == -1 || sc <= gt)) {
-                       // we have something like 'Ljava/lang/String;I'
-                       smallest = sc;
-               } else {
-                       // we have something like '>;'
-                       smallest = gt;
-               }
-               char[] first = CharOperation.subarray(c,0,smallest);
-               char[] second = CharOperation.subarray(c,smallest+1,c.length);
-               if (smallest == 0 && first.length == 0 && c[0] == '>') {
-                       // c = {'>',';'} therefore we just want to return c to
-                       // close the generic signature
-                       return c;
-               } else if (first.length == 1 && second.length == 0) {
-                       return first;
-               } else if (second.length == 0 || (second.length == 1 && second[0] == ';')){
-                       // we've reached the end of the array, therefore only care about
-                       // the first part
-                       return createShortName(first);
-               } else if (smallest == lt) {
-                       // if c = 'Ljava/lang/String;<I' then first = 'Ljava/Lang/String;' and
-                       // second = 'I'. Want to end up with 'LString<I' and so add
-                       // the '<' back.
-                       char[] inclLT = CharOperation.concat(createShortName(first),BACKSLASH_LESSTHAN);
-                       return CharOperation.concat(inclLT,createShortName(second));
-               } else if (smallest == gt) {
-                       char[] inclLT = CharOperation.concat(createShortName(first),GREATER_THAN);
-                       return CharOperation.concat(inclLT,createShortName(second));                    
-               } else {
-                       // if c = 'Ljava/lang/Sting;LMyClass;' then first = 'Ljava/lang/String'
-                       // and second = 'LMyClass;'. Want to end up with 'QString;QMyClass;
-                       // so add the ';' back
-                       char[] firstTypeParam = CharOperation.concat(createShortName(first),SEMICOLON);
-                       return CharOperation.concat(firstTypeParam,createShortName(second));
-               }
-       }
-
-       /**
-        * Given 'Qjava/lang/String;' returns 'QString;'
-        */
-       public static char[] getTypeName(char[] name) {
-               int i = CharOperation.lastIndexOf('/',name);
-               if (i != -1) {
-                       if (name[0] == RESOLVED || name[0] == PARAMETERIZED) {
-                               return CharOperation.concat(new char[]{UNRESOLVED},
-                                               CharOperation.subarray(name,i+1,name.length));
-                       } else {
-                               return CharOperation.concat(new char[]{name[0]},
-                                               CharOperation.subarray(name,i+1,name.length));
-                       }
-               }
-               return name;
-       }
-}
diff --git a/util/src/org/aspectj/util/NonLocalExit.java b/util/src/org/aspectj/util/NonLocalExit.java
deleted file mode 100644 (file)
index a3ad026..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-/* *******************************************************************
- * Copyright (c) 2002 Palo Alto Research Center, Incorporated (PARC).
- * All rights reserved. 
- * This program and the accompanying materials are made available 
- * under the terms of the Eclipse Public License v1.0 
- * which accompanies this distribution and is available at 
- * http://www.eclipse.org/legal/epl-v10.html 
- *  
- * Contributors: 
- *     Xerox/PARC     initial implementation 
- * ******************************************************************/
-
-
-package org.aspectj.util;
-
-/**
- * Throw this when a non-local exit is required (suggested for tests only).
- */
-public class NonLocalExit extends RuntimeException {
-
-       public static final int SUCCEESS = 0;
-       public static final int FAULURE = 1;
-
-       private int exitCode;
-
-       public NonLocalExit(int exitCode) {
-               this();
-               this.exitCode = exitCode;               
-       }
-
-       public NonLocalExit() {
-               super();
-       }
-
-       public int getExitCode() {
-               return exitCode;
-       }
-
-}
diff --git a/util/src/org/aspectj/util/StreamPrintWriter.java b/util/src/org/aspectj/util/StreamPrintWriter.java
deleted file mode 100644 (file)
index a8a9b53..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-/* *******************************************************************
- * Copyright (c) 1999-2001 Xerox Corporation, 
- *               2002 Palo Alto Research Center, Incorporated (PARC).
- * All rights reserved. 
- * This program and the accompanying materials are made available 
- * under the terms of the Eclipse Public License v1.0 
- * which accompanies this distribution and is available at 
- * http://www.eclipse.org/legal/epl-v10.html 
- *  
- * Contributors: 
- *     Xerox/PARC     initial implementation 
- * ******************************************************************/
-
-package org.aspectj.util;
-
-import java.io.*;
-
-/**
- * Used for writing converting text written to an output stream into
- * a string.  Deprecated - use StringWriter:
- * <pre>
- * StringWriter sw = new StringWriter();
- * PrintWriter pw = new PrintWriter(sw, true);
- * ... write to pw
- * String result = sw.getBuffer().toString();
- * </pre>
- * @deprecated use StringWriter to construct PrintWriter
- * @author Mik Kersten
- */
-public class StreamPrintWriter extends PrintWriter {
-    private String contents = "";
-
-    public StreamPrintWriter(Writer out) {
-        super(out);
-    }
-
-    public String getContents() {
-        return contents;
-    }
-
-    public void flushBuffer() {
-        contents = "";
-        super.flush();
-    }
-
-    public void print(char x) {
-        contents += x + "\n";
-    }
-
-    public void print(char[] x) {
-        contents += new String( x );
-    }
-
-    public void print(int x) {
-        contents += x;
-    }
-
-    public void print(String x) {
-        contents += x;
-    }
-
-    public void println(char x) {
-        contents += x + "\n";
-    }
-
-    public void println(char[] x) {
-        contents += new String( x ) + "\n";
-    }
-
-    public void println(int x) {
-        contents += x + "\n";
-    }
-
-    public void println(String x) {
-        contents += x + "\n";
-    }
-
-    public void write( byte[] x ) {
-        contents += new String( x );
-    }
-
-    public void write( byte[] x, int i1, int i2 ) {
-        StringWriter writer = new StringWriter();
-        String s = new String( x );
-        writer.write( s.toCharArray(), i1, i2 );
-        contents += writer.getBuffer().toString();
-    }
-
-    public void write( int c ) {
-        contents += c;
-    }
-
-    public void write( String s ) {
-        contents += s;
-    }
-
-    public void write( String s, int i1, int i2 ) {
-        contents += s;
-    }
-}
diff --git a/util/testsrc/org/aspectj/util/NameConvertorTest.java b/util/testsrc/org/aspectj/util/NameConvertorTest.java
deleted file mode 100644 (file)
index e33bf81..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-/********************************************************************
- * Copyright (c) 2006 Contributors. All rights reserved. 
- * This program and the accompanying materials are made available 
- * under the terms of the Eclipse Public License v1.0 
- * which accompanies this distribution and is available at 
- * http://eclipse.org/legal/epl-v10.html 
- *  
- * Contributors: IBM Corporation - initial API and implementation 
- *                              Helen Hawkins   - initial version
- *******************************************************************/
-package org.aspectj.util;
-
-import junit.framework.TestCase;
-
-public class NameConvertorTest extends TestCase {
-
-       public void testBoolean() {
-               checkConversion("Z","boolean");
-       }
-       
-       public void testByte() {
-               checkConversion("B","byte");
-       }
-       
-       public void testChar() {
-               checkConversion("C","char");
-       }       
-       
-       public void testDouble() {
-               checkConversion("D","double");
-       }       
-       
-       public void testFloat() {
-               checkConversion("F","float");
-       }
-       
-       public void testInt() {
-               checkConversion("I","int");
-       }
-       
-       public void testLong() {
-               checkConversion("J","long");
-       }       
-       
-       public void testShort() {
-               checkConversion("S","short");
-       }       
-       
-       public void testString() {
-               checkConversion("Ljava/lang/String;","java.lang.String");
-       }
-
-       public void testType() {
-               checkConversion("LMyClass;","MyClass");
-       }
-
-       public void testListPameterizedWithString() {
-               checkConversion("Pjava/util/List<Ljava/lang/String;>;",
-                               "java.util.List<java.lang.String>");
-       }
-       public void testClassParameterizedWithStringAndType() {
-               checkConversion("PMyGenericClass<Ljava/lang/String;LMyClass;>;",
-                               "MyGenericClass<java.lang.String,MyClass>");
-       }
-       public void testStringArray() {
-               checkConversion("[Ljava/lang/String;","java.lang.String[]");
-       }
-       public void testTwoDimensionalStringArray() {
-               checkConversion("[[Ljava/lang/String;","java.lang.String[][]");
-       }
-       public void testIntArray() {
-               checkConversion("[I","int[]");
-       }
-
-       private void checkConversion(String signature, String expected) {
-               char[] c = NameConvertor.convertFromSignature(signature.toCharArray());
-               assertTrue("converting " + signature + ", expected " + expected + "," +
-                               "but found " + String.valueOf(c),
-                               CharOperation.equals(c,expected.toCharArray()));
-       }
-
-       
-}
index 8d2f183c2121e06e542c31830a7f6542b2898b92..dfc80b220400cacd3952a86cbd7b9a5051557eed 100644 (file)
@@ -23,7 +23,6 @@ public class UtilTests extends TestCase {
         //$JUnit-BEGIN$
         suite.addTestSuite(FileUtilTest.class); 
         suite.addTestSuite(LangUtilTest.class); 
-        suite.addTestSuite(NameConvertorTest.class);
         //$JUnit-END$
         return suite;
     }