Skip to content

Commit

Permalink
added ajc compile time weaving for inner structure analysis
Browse files Browse the repository at this point in the history
  • Loading branch information
reiner_jung committed Mar 10, 2016
1 parent e8f0ee8 commit f602dbd
Show file tree
Hide file tree
Showing 6 changed files with 257 additions and 25 deletions.
157 changes: 132 additions & 25 deletions cocome-maven-project/cloud-logic-service/cloud-logic-ejb/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -17,31 +17,51 @@
<endorsed.dir>${project.build.directory}/endorsed</endorsed.dir>
</properties>

<dependencies>
<dependency>
<groupId>de.kit.ipd</groupId>
<artifactId>java.utils</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-1.2-api</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
<dependency>
<!-- This dependency is necessary because the standard javaee library doesn't provide javadocs -->
<groupId>org.jboss.spec</groupId>
<artifactId>jboss-javaee-all-6.0</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
</dependency>
</dependencies>
<dependencies>
<dependency>
<groupId>de.kit.ipd</groupId>
<artifactId>java.utils</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-1.2-api</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
<dependency>
<!-- This dependency is necessary because the standard javaee library doesn't provide javadocs -->
<groupId>org.jboss.spec</groupId>
<artifactId>jboss-javaee-all-6.0</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
</dependency>
<dependency>
<groupId>net.kieker-monitoring</groupId>
<artifactId>kieker</artifactId>
<version>1.12</version>
</dependency>
<dependency>
<groupId>org.iobserve</groupId>
<artifactId>monitoring</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.iobserve</groupId>
<artifactId>common</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.8.7</version>
</dependency>
</dependencies>

<build>
<plugins>
Expand All @@ -68,6 +88,93 @@
</clientIncludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerArguments>
<endorseddirs>${endorsed.dir}</endorseddirs>
</compilerArguments>
<excludes>
<!-- These are not needed because they don't use the cloud backend
database -->
<exclude>org/cocome/tradingsystem/inventory/data/store/StoreQueryProvider.java</exclude>
<exclude>org/cocome/tradingsystem/inventory/data/enterprise/EnterpriseQueryProvider.java</exclude>
<exclude>org/cocome/tradingsystem/inventory/data/persistence/*Transaction*.java</exclude>
<exclude>de/kit/ipd/java/tradingsystem/entity/*.java</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
<version>1.8</version>
<configuration>
<complianceLevel>1.7</complianceLevel>
<source>1.7</source>
<target>1.7</target>
<aspectLibraries>
<aspectLibrary>
<groupId>net.kieker-monitoring</groupId>
<artifactId>kieker</artifactId>
</aspectLibrary>
</aspectLibraries>
<xmlConfigured>${basedir}/src/main/resources/META-INF/aop.xml</xmlConfigured>
<sources>
<source>
<basedir>${basedir}/src/main/java</basedir>
<includes>
<include>**</include>
</includes>
<excludes>
<exclude>org/cocome/tradingsystem/inventory/data/store/StoreQueryProvider.java</exclude>
<exclude>org/cocome/tradingsystem/inventory/data/enterprise/EnterpriseQueryProvider.java</exclude>
<exclude>org/cocome/tradingsystem/inventory/data/persistence/*Transaction*.java</exclude>
<exclude>de/kit/ipd/java/tradingsystem/entity/*.java</exclude>
<exclude>org/cocome/tradingsystem/util/**</exclude>
<exclude>org/cocome/tradingsystem/inventory/application/store/ProductMovementTO.java</exclude>
<exclude>org/cocome/tradingsystem/inventory/application/store/StoreServer.java</exclude>
<exclude>org/cocome/tradingsystem/inventory/data/enterprise/CloudEnterpriseQueryProvider.java</exclude>
<exclude>org/cocome/tradingsystem/inventory/data/enterprise/Product.java</exclude>
<exclude>org/cocome/tradingsystem/inventory/data/enterprise/ProductSupplier.java</exclude>
<exclude>org/cocome/tradingsystem/inventory/data/enterprise/TradingEnterprise.java</exclude>
<exclude>org/cocome/tradingsystem/inventory/data/persistence/ServiceAdapterEntityConverter.java</exclude>
<exclude>org/cocome/tradingsystem/inventory/data/store/OrderEntry.java</exclude>
<exclude>org/cocome/tradingsystem/inventory/data/store/ProductOrder.java</exclude>
<exclude>org/cocome/tradingsystem/inventory/data/store/StockItem.java</exclude>
<exclude>org/cocome/tradingsystem/inventory/data/store/Store.java</exclude>
<exclude>org/cocome/tradingsystem/cashdeskline/cashdesk/IllegalCashDeskStateException.java</exclude>
<exclude>org/cocome/tradingsystem/cashdeskline/cashdesk/userdisplay/MessageKind.java</exclude>
<exclude>org/cocome/tradingsystem/cashdeskline/datatypes/*.java</exclude>
<exclude>org/cocome/tradingsystem/cashdeskline/events/*Event.java</exclude>
<exclude>org/cocome/tradingsystem/remote/access/connection/IPersistenceConnection.java</exclude>
</excludes>
</source>
</sources>
</configuration>
<executions>
<execution>
<goals>
<goal>compile</goal> <!-- use this goal to weave all your main classes -->
<goal>test-compile</goal> <!-- use this goal to weave all your test classes -->
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-ejb-plugin</artifactId>
<configuration>
<generateClient>true</generateClient>
<clientIncludes>
<clientInclude>**/I*.class</clientInclude>
<clientInclude>**/*Event.class</clientInclude>
<clientInclude>**/*Exception.class</clientInclude>
<clientInclude>**/scope/CashDeskSessionScoped.class</clientInclude>
<clientInclude>**/datatypes/*.class</clientInclude>
</clientIncludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<!DOCTYPE aspectj PUBLIC "-//AspectJ//DTD//EN" "./aspectj_1_5_0.dtd">
<aspectj>
<weaver options="-verbose -showWeaveInfo">
<!-- Example instrumentation for the myBatis JPetStore -->
<include within="cocome..*"/>
<include within="org.cocome..*"/>
<include within="javax.persistence..*"/>
</weaver>
<aspects>
<!-- Use the aspect directives to specify the aspect(s) to use (typically only one). -->
<!--<aspect name="kieker.monitoring.probe.aspectj.operationExecution.OperationExecutionAspectAnnotation"/>-->
<!--<aspect name="kieker.monitoring.probe.aspectj.operationExecution.OperationExecutionAspectAnnotationServlet"/>-->
<aspect name="kieker.monitoring.probe.aspectj.flow.operationExecutionObject.FullInstrumentation"/>
<!--<aspect name="kieker.monitoring.probe.aspect.JoperationExecution.OperationExecutionAspectFullServlet"/>-->
</aspects>
</aspectj>
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,11 @@
<artifactId>monitoring</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.8.7</version>
</dependency>
</dependencies>

<build>
Expand All @@ -55,6 +60,39 @@
</compilerArguments>
</configuration> -->
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
<version>1.8</version>
<configuration>
<complianceLevel>1.7</complianceLevel>
<source>1.7</source>
<target>1.7</target>
<aspectLibraries>
<aspectLibrary>
<groupId>net.kieker-monitoring</groupId>
<artifactId>kieker</artifactId>
</aspectLibrary>
</aspectLibraries>
<xmlConfigured>${basedir}/src/main/resources/META-INF/aop.xml</xmlConfigured>
<sources>
<source>
<basedir>${basedir}/src/main/java</basedir>
<includes>
<include>**/**.java</include>
</includes>
</source>
</sources>
</configuration>
<executions>
<execution>
<goals>
<goal>compile</goal> <!-- use this goal to weave all your main classes -->
<goal>test-compile</goal> <!-- use this goal to weave all your test classes -->
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<!DOCTYPE aspectj PUBLIC "-//AspectJ//DTD//EN" "./aspectj_1_5_0.dtd">
<aspectj>
<weaver options="-verbose -showWeaveInfo">
<!-- Example instrumentation for the myBatis JPetStore -->
<include within="cocome..*"/>
<include within="org.cocome..*"/>
<include within="javax.persistence..*"/>
</weaver>
<aspects>
<!-- Use the aspect directives to specify the aspect(s) to use (typically only one). -->
<!--<aspect name="kieker.monitoring.probe.aspectj.operationExecution.OperationExecutionAspectAnnotation"/>-->
<!--<aspect name="kieker.monitoring.probe.aspectj.operationExecution.OperationExecutionAspectAnnotationServlet"/>-->
<aspect name="kieker.monitoring.probe.aspectj.flow.operationExecutionObject.FullInstrumentation"/>
<!--<aspect name="kieker.monitoring.probe.aspect.JoperationExecution.OperationExecutionAspectFullServlet"/>-->
</aspects>
</aspectj>
39 changes: 39 additions & 0 deletions cocome-maven-project/cloud-web-frontend/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -49,10 +49,49 @@
<artifactId>monitoring</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.8.7</version>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
<version>1.8</version>
<configuration>
<complianceLevel>1.7</complianceLevel>
<source>1.7</source>
<target>1.7</target>
<aspectLibraries>
<aspectLibrary>
<groupId>net.kieker-monitoring</groupId>
<artifactId>kieker</artifactId>
</aspectLibrary>
</aspectLibraries>
<xmlConfigured>${basedir}/src/main/resources/aop.xml</xmlConfigured>
<sources>
<source>
<basedir>${basedir}/src/main/java</basedir>
<includes>
<include>**/**.java</include>
</includes>
</source>
</sources>
</configuration>
<executions>
<execution>
<goals>
<goal>compile</goal> <!-- use this goal to weave all your main classes -->
<goal>test-compile</goal> <!-- use this goal to weave all your test classes -->
</goals>
</execution>
</executions>
</plugin>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
Expand Down
16 changes: 16 additions & 0 deletions cocome-maven-project/cloud-web-frontend/src/main/resources/aop.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<!DOCTYPE aspectj PUBLIC "-//AspectJ//DTD//EN" "./aspectj_1_5_0.dtd">
<aspectj>
<weaver options="-verbose -showWeaveInfo">
<!-- Example instrumentation for the myBatis JPetStore -->
<include within="cocome..*"/>
<include within="org.cocome..*"/>
<include within="javax.persistence..*"/>
</weaver>
<aspects>
<!-- Use the aspect directives to specify the aspect(s) to use (typically only one). -->
<!--<aspect name="kieker.monitoring.probe.aspectj.operationExecution.OperationExecutionAspectAnnotation"/>-->
<!--<aspect name="kieker.monitoring.probe.aspectj.operationExecution.OperationExecutionAspectAnnotationServlet"/>-->
<aspect name="kieker.monitoring.probe.aspectj.flow.operationExecutionObject.FullInstrumentation"/>
<!--<aspect name="kieker.monitoring.probe.aspect.JoperationExecution.OperationExecutionAspectFullServlet"/>-->
</aspects>
</aspectj>

0 comments on commit f602dbd

Please sign in to comment.