Package org.apache.bcel.classfile

Examples of org.apache.bcel.classfile.ClassParser


*/
public class patchclass {
  public static void main(String[] argv) {
    String[]    file_name = new String[argv.length];
    int         files     = 0;
    ClassParser parser    = null;
    JavaClass   java_class;

    if(argv.length < 3) {
      System.err.println("Usage: patch <oldstring> <newstring> file1.class ...");
      System.exit(-1);
    }

    try {
      for(int i=2; i < argv.length; i++) {
        file_name[files++] = argv[i];
    }
 
      for(int i=0; i < files; i++) {
  parser     = new ClassParser(file_name[i]);
  java_class = parser.parse();
 
  patchIt(argv[0], argv[1],
    java_class.getConstantPool().getConstantPool());

  // Dump the changed class to a new file
View Full Code Here


      for(int i = 0; i < argv.length; i++) {
  String    class_name = argv[i];
  JavaClass java_class = Repository.lookupClass(class_name);

  if(java_class == null) {
        java_class = new ClassParser(class_name).parse();
    }

  ConstantPoolGen cp      = new ConstantPoolGen(java_class.getConstantPool());
     Method[]        methods = java_class.getMethods();
 
View Full Code Here

      if(argv.length == 0) {
        System.err.println("disassemble: No input files specified");
    } else {
  for(int i=0; i < argv.length; i++) {
    if((java_class = Repository.lookupClass(argv[i])) == null) {
        java_class = new ClassParser(argv[i]).parse();
    }

          String class_name = java_class.getClassName();
          int    index      = class_name.lastIndexOf('.');
    String path       = class_name.substring(0, index + 1).replace('.', File.separatorChar);
View Full Code Here

            return;
        }
    }

      if(name.endsWith(".class")) {
        java_class = new ClassParser(name).parse(); // May throw IOException
      } else {
  java_class = Repository.lookupClass(name);
      }

      if(nocontents) {
View Full Code Here

    try {
      if (argv.length == 0) {
        System.err.println("transitive: No input files specified");
      } else {
        if ((java_class = Repository.lookupClass(argv[0])) == null) {
          java_class = new ClassParser(argv[0]).parse();
        }

        TransitiveHull hull = new TransitiveHull(java_class);

        hull.start();
View Full Code Here

public class id {
  public static void main(String[] argv) throws Exception {
    JavaClass clazz = null;

    if((clazz = Repository.lookupClass(argv[0])) == null) {
        clazz = new ClassParser(argv[0]).parse(); // May throw IOException
    }

    ClassGen cg = new ClassGen(clazz);

    Method[] methods = clazz.getMethods();
View Full Code Here

  public static void main(String[] argv) {
    try {
      for(int i=0; i < argv.length; i++) {
  if(argv[i].endsWith(".class")) {
          JavaClass       java_class = new ClassParser(argv[i]).parse();
    ConstantPool    constants  = java_class.getConstantPool();
          String          file_name  = argv[i].substring(0, argv[i].length() - 6) +
      "_hello.class";
    cp = new ConstantPoolGen(constants);
View Full Code Here

     */
    public static final StringBuffer getConstants(byte[] bytes)
        throws IOException {
        final StringBuffer sb = new StringBuffer();
        final ByteArrayInputStream bis = new ByteArrayInputStream(bytes);
        final ClassParser parser = new ClassParser(bis, "");
        final JavaClass javaClass = parser.parse();
        final Field[] fields = javaClass.getFields();
        for (int i = 0; i < fields.length; i++) {
            final Field field = fields[i];
            if (field != null) {
                final ConstantValue cv = field.getConstantValue();
View Full Code Here

     * be satisfied
     */
    public FullAnalyzer() {
        // force BCEL classes to load now
        try {
            new ClassParser("force");
        } catch (IOException e) {
            // ignore
        }
    }
View Full Code Here

                    if (container == null) {
                        continue;
                    }
                    containers.put(container, container);

                    ClassParser parser = null;
                    if (container.getName().endsWith(".class")) {
                        parser = new ClassParser(container.getPath());
                    } else {
                        parser = new ClassParser(container.getPath(),
                            classname.replace('.', '/') + ".class");
                    }

                    JavaClass javaClass = parser.parse();
                    DescendingVisitor traverser
                         = new DescendingVisitor(javaClass, dependencyVisitor);
                    traverser.visit();
                } catch (IOException ioe) {
                    // ignore
View Full Code Here

TOP

Related Classes of org.apache.bcel.classfile.ClassParser

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.