Sfoglia il codice sorgente

fix for 120739

tags/V1_5_2rc1
mwebster 18 anni fa
parent
commit
4513e921c8

+ 16
- 4
loadtime/src/org/aspectj/weaver/loadtime/ClassLoaderWeavingAdaptor.java Vedi File



// register the definitions // register the definitions
registerDefinitions(weaver, loader, definitions); registerDefinitions(weaver, loader, definitions);
if (enabled) {


//bcelWorld.setResolutionLoader(loader.getParent());//(ClassLoader)null);//
// after adding aspects
weaver.prepareForWeave();
//bcelWorld.setResolutionLoader(loader.getParent());//(ClassLoader)null);//
// after adding aspects
weaver.prepareForWeave();
}
else {
bcelWorld = null;
weaver = null;
}
} }


/** /**
} }
} }
} }
/* We didn't register any aspects so disable the adaptor */
if (namespace == null) {
enabled = false;
info("no aspects registered. Disabling weaver for class loader " + getClassLoaderName(loader));
}
} }


/** /**

+ 5
- 0
tests/java5/ataspectj/ataspectj/EmptyAspect.aj Vedi File

package ataspectj;

public aspect EmptyAspect {
}

+ 3
- 0
tests/java5/ataspectj/ataspectj/aop-dump.xml Vedi File

<?xml version="1.0"?> <?xml version="1.0"?>
<aspectj> <aspectj>
<aspects>
<aspect name="ataspectj.EmptyAspect"/>
</aspects>
<weaver options="-XmessageHandlerClass:ataspectj.TestHelper"> <weaver options="-XmessageHandlerClass:ataspectj.TestHelper">
<dump within="ataspectj.DumpTestThe*"/> <dump within="ataspectj.DumpTestThe*"/>
</weaver> </weaver>

+ 3
- 0
tests/java5/ataspectj/ataspectj/aop-dumpbeforeandafter.xml Vedi File

<?xml version="1.0"?> <?xml version="1.0"?>
<aspectj> <aspectj>
<aspects>
<aspect name="ataspectj.EmptyAspect"/>
</aspects>
<weaver options="-XlazyTjp -verbose"> <weaver options="-XlazyTjp -verbose">
<dump within="com.foo.bar..*" beforeandafter="true"/> <dump within="com.foo.bar..*" beforeandafter="true"/>
<include within="com.foo..*"/> <include within="com.foo..*"/>

+ 3
- 0
tests/java5/ataspectj/ataspectj/aop-dumpproxy.xml Vedi File

<?xml version="1.0"?> <?xml version="1.0"?>
<aspectj> <aspectj>
<aspects>
<aspect name="ataspectj.EmptyAspect"/>
</aspects>
<weaver> <weaver>
<!-- <!--
<dump within="*..*Proxy*" beforeandafter="true"/> <dump within="*..*Proxy*" beforeandafter="true"/>

+ 9
- 0
tests/java5/ataspectj/ataspectj/ltwreweavable/EmptyAtAspect.java Vedi File

package ataspectj.ltwreweavable;

import org.aspectj.lang.annotation.Aspect;

@Aspect
public class EmptyAtAspect {

}

+ 1
- 0
tests/java5/ataspectj/ataspectj/ltwreweavable/aop-ltwreweavable-declared.xml Vedi File

<weaver options="-XmessageHandlerClass:ataspectj.ltwlog.MessageHolder"/> <weaver options="-XmessageHandlerClass:ataspectj.ltwlog.MessageHolder"/>
<aspects> <aspects>
<aspect name="ataspectj.ltwreweavable.AspectReweavableLogging"/> <aspect name="ataspectj.ltwreweavable.AspectReweavableLogging"/>
<aspect name="ataspectj.ltwreweavable.EmptyAtAspect"/>
</aspects> </aspects>
</aspectj> </aspectj>

+ 3
- 1
tests/java5/ataspectj/ataspectj/ltwreweavable/aop-ltwreweavable-omitted.xml Vedi File

<aspectj> <aspectj>
<weaver options="-XmessageHandlerClass:ataspectj.ltwlog.MessageHolder"/> <weaver options="-XmessageHandlerClass:ataspectj.ltwlog.MessageHolder"/>
<!--aspect is not declared here so as to produce an error --> <!--aspect is not declared here so as to produce an error -->
<aspects/>
<aspects>
<aspect name="ataspectj.ltwreweavable.EmptyAtAspect"/>
</aspects>
</aspectj> </aspectj>

+ 3
- 0
tests/ltw/aop-optionsonly.xml Vedi File

<aspectj>
<weaver options="-verbose"/>
</aspectj>

+ 11
- 1
tests/src/org/aspectj/systemtest/ajc150/ataspectj/ltw.xml Vedi File

</ajc-test> </ajc-test>


<ajc-test dir="java5/ataspectj" title="LTW DumpTest"> <ajc-test dir="java5/ataspectj" title="LTW DumpTest">
<compile
files="ataspectj/EmptyAspect.aj"
options="-1.5 -Xlint:ignore"/>
<compile <compile
files="ataspectj/DumpTest.java,ataspectj/DumpTestTheDump.java,ataspectj/TestHelper.java" files="ataspectj/DumpTest.java,ataspectj/DumpTestTheDump.java,ataspectj/TestHelper.java"
options="-1.5"/> options="-1.5"/>
</ajc-test> </ajc-test>
<ajc-test dir="java5/ataspectj" title="LTW DumpTest before and after"> <ajc-test dir="java5/ataspectj" title="LTW DumpTest before and after">
<compile
files="ataspectj/EmptyAspect.aj"
options="-1.5 -Xlint:ignore"/>
<compile <compile
files="com/foo/bar/Test.java, com/foo/bar/Test$$EnhancerByCGLIB$$12345.java" files="com/foo/bar/Test.java, com/foo/bar/Test$$EnhancerByCGLIB$$12345.java"
options="-1.5"/> options="-1.5"/>
<line text="info AspectJ Weaver Version"/> <line text="info AspectJ Weaver Version"/>
<line text="info register classloader"/> <line text="info register classloader"/>
<line text="info using"/> <line text="info using"/>
<line text="info register aspect ataspectj.EmptyAspect"/>
<line text="info weaving 'com.foo.bar.Test'"/> <line text="info weaving 'com.foo.bar.Test'"/>
</stderr> </stderr>
</run> </run>
</ajc-test> </ajc-test>


<ajc-test dir="java5/ataspectj" title="LTW DumpTest proxy"> <ajc-test dir="java5/ataspectj" title="LTW DumpTest proxy">
<compile
files="ataspectj/EmptyAspect.aj"
options="-1.5 -Xlint:ignore"/>
<compile <compile
files="ataspectj/TestProxyGenerator.java,ataspectj/TestInterface.java" files="ataspectj/TestProxyGenerator.java,ataspectj/TestInterface.java"
options="-1.5"/> options="-1.5"/>


<ajc-test dir="java5/ataspectj" title="Compile time aspects declared to ltw weaver"> <ajc-test dir="java5/ataspectj" title="Compile time aspects declared to ltw weaver">
<compile <compile
files="ataspectj/ltwlog/MessageHolder.java,ataspectj/ltwreweavable/MainReweavableLogging.java,ataspectj/ltwreweavable/AspectReweavableLogging.java,ataspectj/ltwreweavable/Advisable.java"
files="ataspectj/ltwlog/MessageHolder.java,ataspectj/ltwreweavable/MainReweavableLogging.java,ataspectj/ltwreweavable/AspectReweavableLogging.java,ataspectj/ltwreweavable/Advisable.java,ataspectj/ltwreweavable/EmptyAtAspect.java"
options="-1.5" options="-1.5"
outjar="main1.jar"/> outjar="main1.jar"/>
<ant file="ajc-ant.xml" target="ltw.oldAspectsDeclared" verbose="true"/> <ant file="ajc-ant.xml" target="ltw.oldAspectsDeclared" verbose="true"/>

+ 5
- 1
tests/src/org/aspectj/systemtest/ajc152/Ajc152Tests.java Vedi File



import junit.framework.Test; import junit.framework.Test;


//import org.aspectj.systemtest.ajc150.GenericsTests;
import org.aspectj.asm.AsmManager; import org.aspectj.asm.AsmManager;
import org.aspectj.asm.IHierarchy; import org.aspectj.asm.IHierarchy;
import org.aspectj.asm.IProgramElement; import org.aspectj.asm.IProgramElement;
// // public class Pair<F,S> affected by pertarget aspect // // public class Pair<F,S> affected by pertarget aspect
// GenericsTests.verifyClassSignature(ajc,"Pair","<F:Ljava/lang/Object;S:Ljava/lang/Object;>Ljava/lang/Object;LIdempotentCache$ajcMightHaveAspect;;"); // GenericsTests.verifyClassSignature(ajc,"Pair","<F:Ljava/lang/Object;S:Ljava/lang/Object;>Ljava/lang/Object;LIdempotentCache$ajcMightHaveAspect;;");
// } // }
public void testNoAspects(){
// setSystemProperty(WeavingAdaptor.WEAVING_ADAPTOR_VERBOSE,"true");
runTest("Ensure no weaving without included aspects");
}


// tests that can't be included for some reason // tests that can't be included for some reason



+ 22
- 0
tests/src/org/aspectj/systemtest/ajc152/ajc152.xml Vedi File

<!-- should check for expected stderr output here --> <!-- should check for expected stderr output here -->
</run> </run>
</ajc-test> </ajc-test>

<ajc-test dir="ltw"
title="Ensure no weaving without included aspects"
keywords="reweavable">
<compile
files="TestMain.java, Main.java"
>
</compile>
<run class="TestMain" ltw="aop-optionsonly.xml">
<stdout>
<line text="Main.main"/>
<line text="Main.test1"/>
<line text="Main.test2"/>
</stdout>
<stderr>
<line text="info AspectJ Weaver Version"/>
<line text="info register classloader org.aspectj.weaver.loadtime.WeavingURLClassLoader"/>
<line text="info using"/>
<line text="info no aspects registered. Disabling weaver for class loader org.aspectj.weaver.loadtime.WeavingURLClassLoader"/>
</stderr>
</run>
</ajc-test>
</suite> </suite>

Loading…
Annulla
Salva