ClassGraphListenerFactory { {{ public static ClassGraphListener getNew(){ return new MyClassGraphListener(); } }} } ClassGraphListener { {{ public abstract void ClassGraphEvent(String [] args, ClassGraph cg); }} } MyClassGraphListener { {{ public void ClassGraphEvent(String [] args, ClassGraph cg) { File dir = null; boolean generateStubs = false; for (int x = 0; x < args.length; x++) { try { if (args[x].equals("-d")) { dir = new File(args[++x]); } else if (args[x].equals("-stub")) { generateStubs = true; } else if (args[x].equals("-gpa")) { AspectJTraversal.addPrintingAdvice = true; } else if (args[x].equals("-ajtdebug")) { AspectJTraversal.debug = true; AspectJTraversal.debug2 = true; } else { Reader in = new BufferedReader(new FileReader(args[x])); TraversalAspectList tal = TraversalAspectList.parse(in); if (generateStubs) { tal.generateStubs(dir, DAJ.getRootName(args[x])); } else { tal.processClassGraphTraversals(cg, dir); } } } catch (ParseException ex) { System.out.println(ex); ex.printStackTrace(System.out); } catch (IOException ex) { System.out.println(ex); ex.printStackTrace(System.out); } } } }} }