Package com.sun.org.apache.bcel.internal.classfile

Examples of com.sun.org.apache.bcel.internal.classfile.JavaClass


        Enumeration classes = _bcelClasses.elements();
        final String now = (new Date()).toString();
        final java.util.jar.Attributes.Name dateAttr =
            new java.util.jar.Attributes.Name("Date");
        while (classes.hasMoreElements()) {
            final JavaClass clazz = (JavaClass)classes.nextElement();
            final String className = clazz.getClassName().replace('.','/');
            final java.util.jar.Attributes attr = new java.util.jar.Attributes();
            attr.put(dateAttr, now);
            map.put(className+".class", attr);
        }

        final File jarFile = new File(_destDir, _jarFileName);
        final JarOutputStream jos =
            new JarOutputStream(new FileOutputStream(jarFile), manifest);
        classes = _bcelClasses.elements();
        while (classes.hasMoreElements()) {
            final JavaClass clazz = (JavaClass)classes.nextElement();
            final String className = clazz.getClassName().replace('.','/');
            jos.putNextEntry(new JarEntry(className+".class"));
            final ByteArrayOutputStream out = new ByteArrayOutputStream(2048);
            clazz.dump(out); // dump() closes it's output stream
            out.writeTo(jos);
        }
        jos.close();
    }
View Full Code Here


            if( isClass( file ) )
            {
                try
                {
                    ClassParser parser = new ClassParser( zipFile, file );
                    JavaClass javaClass = parser.parse();
                   
                    if( javaClass.isPublic() )
                    {
                        classes.add( javaClass.getClassName() );
                    }                   
                   
                    Method[] methodsArr = javaClass.getMethods();
                    for( Method method : methodsArr )
                    {  
                        if( method.isPublic() )
                        {                           
                            methods.add( method.getName() );
View Full Code Here

    }
    return cd ;
  }
  public static void main(String[] args) throws Exception {
    // Create the java class
    JavaClass jc = GenJavaClass.createJavaClass(makeAddClass()) ;
    // Use a utility loader so we can call our class without saving to disk
    ImmediateClassLoader loader = new ImmediateClassLoader() ;
    loader.defineClass(jc.getClassName(),jc.getBytes()) ;
    // Load the honest to goodness class
    Class<?> cl = loader.loadClass("TestClass") ;
    // Create an instance of the class.
    Object o = cl.newInstance() ;
    // Get the "add" method
View Full Code Here

          classStubs.put(name,stub) ;
          return stub ;
        }
      }
    }
    JavaClass jc = repo.findClass(name.toString()) ;
    if (jc == null) {
      try {
        jc = repo.loadClass(name.toString()) ;
      } catch (ClassNotFoundException e) {
        /* jc = null ; */
 
View Full Code Here

      }
      else {
        packdir = base ;
      }
      for(ClassDef cdef: createClassDef(converter,cp,cd)) {
        final JavaClass jc = GenJavaClass.createJavaClass(cdef) ;
        byte[] bytes = jc.getBytes() ;
        File f = new File(packdir,cdef.name.toString()+".class") ;
        FileOutputStream fw = new FileOutputStream(f) ;
        try {
          fw.write(bytes) ;
        }
View Full Code Here

  public static ClassLoader createLoader(StdJavaExpressions converter,Collection<FileUnit> cdecls) throws CompilerException, GenerationError {
    ClassPool cp = createClassPool(cdecls) ;
    ImmediateClassLoader defcl = new ImmediateClassLoader() ;
    for(FileUnit cd: cdecls) {
      for(ClassDef cdef: createClassDef(converter,cp,cd)) {
        final JavaClass jc = GenJavaClass.createJavaClass(cdef) ;
        byte[] bytes = jc.getBytes() ;
        defcl.defineClass(jc.getClassName(), bytes) ;
      }
    }
    return defcl ;
  }
View Full Code Here

        Enumeration classes = _bcelClasses.elements();
        final String now = (new Date()).toString();
        final java.util.jar.Attributes.Name dateAttr =
            new java.util.jar.Attributes.Name("Date");
        while (classes.hasMoreElements()) {
            final JavaClass clazz = (JavaClass)classes.nextElement();
            final String className = clazz.getClassName().replace('.','/');
            final java.util.jar.Attributes attr = new java.util.jar.Attributes();
            attr.put(dateAttr, now);
            map.put(className+".class", attr);
        }

        final File jarFile = new File(_destDir, _jarFileName);
        final JarOutputStream jos =
            new JarOutputStream(new FileOutputStream(jarFile), manifest);
        classes = _bcelClasses.elements();
        while (classes.hasMoreElements()) {
            final JavaClass clazz = (JavaClass)classes.nextElement();
            final String className = clazz.getClassName().replace('.','/');
            jos.putNextEntry(new JarEntry(className+".class"));
            final ByteArrayOutputStream out = new ByteArrayOutputStream(2048);
            clazz.dump(out); // dump() closes it's output stream
            out.writeTo(jos);
        }
        jos.close();
    }
View Full Code Here

            if( isClass( file ) )
            {
                try
                {
                    ClassParser parser = new ClassParser( zipFile, file );
                    JavaClass javaClass = parser.parse();
                   
                    if( javaClass.isPublic() )
                    {
                        classes.add( javaClass.getClassName() );
                    }                   
                   
                    Method[] methodsArr = javaClass.getMethods();
                    for( Method method : methodsArr )
                    {  
                        if( method.isPublic() )
                        {                           
                            methods.add( method.getName() );
View Full Code Here

      cd = cd.addMethod(md) ;
    }
    return cd ;
  }
  public Class<?> makeClass(ClassDef cd) throws Exception {
    final JavaClass jc = GenJavaClass.createJavaClass(cd) ;
    ImmediateClassLoader loader = new ImmediateClassLoader() ;
    loader.defineClass(jc.getClassName(),jc.getBytes()) ;
    return loader.loadClass(cd.name.toString())
  }
View Full Code Here

TOP

Related Classes of com.sun.org.apache.bcel.internal.classfile.JavaClass

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.