Package org.apache.bcel.classfile

Examples of org.apache.bcel.classfile.ClassParser


    public void testImportsAnt()
        throws ClassFormatException, IOException
    {
        File jxrjar = getSampleJar( "ant.jar" );
        String classname = "org/apache/tools/ant/Target.class";
        ClassParser classParser = new ClassParser( jxrjar.getAbsolutePath(), classname );
        JavaClass javaClass = classParser.parse();

        ImportVisitor importVisitor = new ImportVisitor( javaClass );
        DescendingVisitor descVisitor = new DescendingVisitor( javaClass, importVisitor );
        javaClass.accept( descVisitor );
View Full Code Here


        String newName = null;
        InputStream is = new ByteArrayInputStream(byteCode);
        Class cls = null;

        try {
            _javaClass = new ClassParser(is, className).parse();

            _derivedClassGen = new ClassGen(_javaClass.copy());

            String oldClassName = _derivedClassGen.getClassName();
            newName = getDerivedName();
View Full Code Here

                warn("LastModified should be positive: "+lastModified);
            }
            if (lastModified > _classFileTimeStamp)
            {
                _classFileTimeStamp = lastModified;
                _javaClass = new ClassParser(path).parse();

                if (!_javaClass.isFinal()){
                    // only factor "final" classes because
                    // we need the guarantee that the class is a leaf
                    _classShouldBeSplit = false;
View Full Code Here

     */
    public void initialize(final String className, final ClassLoader loader) {
        String classFileName = className.replace('.', '/') + ".class";
        try {
            InputStream classStream = loader.getResourceAsStream(classFileName);
            ClassParser classParser = new ClassParser(classStream, classFileName);
            m_javaClass = classParser.parse();
        }
        catch (IOException e) {
            throw new WrappedRuntimeException(e);
        }
    }
View Full Code Here

    private String className = "";

    private void verifyClassAdheresToDesign(Design d, InputStream in, String name, File originalClassOrJarFile) throws ClassFormatException, IOException {
        try {
            verifiedAtLeastOne = true;
            ClassParser parser = new ClassParser(in, name);
            JavaClass javaClass = parser.parse();
            className = javaClass.getClassName();
           
            if(!d.needEvalCurrentClass(className))
                return;
   
View Full Code Here

  {
    this.libgcjDotJar = libgcjDotJar;

    String fileName = className.replaceAll("\\.", "/") + ".class";
    //System.err.println("loading " + fileName);
    jc = (new ClassParser(libgcjDotJar.toString(), fileName)).parse();

    simpleClassName = jc.getClassName();
    int index = Math.max(simpleClassName.lastIndexOf('.'), simpleClassName.lastIndexOf('$'));
    simpleClassName = simpleClassName.substring(index+1);
  }
View Full Code Here

    return (m.find()) ? m.group(1).replaceAll("\\s", "") : null;
  }

  private static String getPackageFromClass(File f) throws IOException
  {
    JavaClass javaClass = (new ClassParser(f.toString())).parse();
    String thePackage = javaClass.getPackageName();
    return (thePackage == null || thePackage.length() == 0) ? null : thePackage;
  }
View Full Code Here

      if(superClassName.startsWith(missingClass.getClassName())) return null;
    }
   
    // otherwise, get a constructor from the real class
    String fileName = superClassName.replaceAll("\\.", "/") + ".class";
    JavaClass jcSuper = (new ClassParser(libgcjDotJar.toString(), fileName)).parse();

    // search default constructor
    for(Method m : jcSuper.getMethods())
    {
      if(m.isPrivate() || !m.getName().equals("<init>")) continue;
View Full Code Here

    {
      String superClassName = superClassNames.remove(0);
      if(superClassName.equals("java.lang.Object")) continue;

      String fileName = superClassName.replaceAll("\\.", "/") + ".class";
      JavaClass jcSuper = (new ClassParser(libgcjDotJar.toString(), fileName)).parse();
     
      superClassNames.add(jcSuper.getSuperclassName());
      for(String interfaceClassName : jcSuper.getInterfaceNames()) superClassNames.add(interfaceClassName);
     
      for(Method mSuper : jcSuper.getMethods())
View Full Code Here

     * @throws IOException
     */
    public static JavaClass getBcelClass( String filename )
        throws IOException
    {
        ClassParser parser = new ClassParser( filename );
        return parser.parse();
    }
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.