Package org.aspectj.weaver.bcel

Examples of org.aspectj.weaver.bcel.BcelWeaver


    bcelWorld.setTargetAspectjRuntimeLevel(buildConfig.getTargetAspectjRuntimeLevel());
    bcelWorld.setXnoInline(buildConfig.isXnoInline());
    bcelWorld.setXlazyTjp(buildConfig.isXlazyTjp());
    bcelWorld.setXHasMemberSupportEnabled(buildConfig.isXHasMemberEnabled());
    bcelWorld.setPinpointMode(buildConfig.isXdevPinpoint());
    BcelWeaver bcelWeaver = new BcelWeaver(bcelWorld);
    state.setWorld(bcelWorld);
    state.setWeaver(bcelWeaver);
    state.binarySourceFiles = new HashMap();
   
    for (Iterator i = buildConfig.getAspectpath().iterator(); i.hasNext();) {
      File f = (File) i.next();
      bcelWeaver.addLibraryJarFile(f);
    }
   
//    String lintMode = buildConfig.getLintMode();
   
    if (buildConfig.getLintMode().equals(AjBuildConfig.AJLINT_DEFAULT)) {
      bcelWorld.getLint().loadDefaultProperties();
    } else {
      bcelWorld.getLint().setAll(buildConfig.getLintMode());
    }
   
    if (buildConfig.getLintSpecFile() != null) {
      bcelWorld.getLint().setFromProperties(buildConfig.getLintSpecFile());
    }
   
    //??? incremental issues
    for (Iterator i = buildConfig.getInJars().iterator(); i.hasNext(); ) {
      File inJar = (File)i.next();
      List unwovenClasses = bcelWeaver.addJarFile(inJar, buildConfig.getOutputDir(),false);
      state.binarySourceFiles.put(inJar.getPath(), unwovenClasses);
    }
   
    for (Iterator i = buildConfig.getInpath().iterator(); i.hasNext(); ) {
      File inPathElement = (File)i.next();
      if (!inPathElement.isDirectory()) {
        // its a jar file on the inpath
        // the weaver method can actually handle dirs, but we don't call it, see next block
        List unwovenClasses = bcelWeaver.addJarFile(inPathElement,buildConfig.getOutputDir(),true);
        state.binarySourceFiles.put(inPathElement.getPath(),unwovenClasses);
      } else {
        // add each class file in an in-dir individually, this gives us the best error reporting
        // (they are like 'source' files then), and enables a cleaner incremental treatment of
        // class file changes in indirs.
        File[] binSrcs = FileUtil.listFiles(inPathElement, binarySourceFilter);
        for (int j = 0; j < binSrcs.length; j++) {
          UnwovenClassFile ucf =
            bcelWeaver.addClassFile(binSrcs[j], inPathElement, buildConfig.getOutputDir());
          List ucfl = new ArrayList();
          ucfl.add(ucf);
          state.binarySourceFiles.put(binSrcs[j].getPath(),ucfl);
        }
      }
    }
   
    bcelWeaver.setReweavableMode(buildConfig.isXNotReweavable());

    //check for org.aspectj.runtime.JoinPoint
    ResolvedType joinPoint = bcelWorld.resolve("org.aspectj.lang.JoinPoint");
    if (joinPoint.isMissing()) {
      IMessage message =
View Full Code Here


//            //org.aspectj.apache.bcel.Repository.setRepository(this);
//            //ie set some static things
//            //==> bogus as Bcel is expected to be
//            org.aspectj.apache.bcel.Repository.setRepository(new ClassLoaderRepository(loader));

        weaver = new BcelWeaver(bcelWorld);

        // register the definitions
        registerDefinitions(weaver, loader, definitions);

        //bcelWorld.setResolutionLoader(loader.getParent());//(ClassLoader)null);//
View Full Code Here

TOP

Related Classes of org.aspectj.weaver.bcel.BcelWeaver

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.