Start of an aspectwerkz plugin. Not working yet.
git-svn-id: https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk@114500 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
6
aspectwerkz/.cvsignore
Normal file
6
aspectwerkz/.cvsignore
Normal file
@@ -0,0 +1,6 @@
|
||||
target
|
||||
maven.log
|
||||
velocity.log
|
||||
build.properties
|
||||
.classpath
|
||||
.project
|
||||
54
aspectwerkz/plugin.jelly
Normal file
54
aspectwerkz/plugin.jelly
Normal file
@@ -0,0 +1,54 @@
|
||||
<?xml version="1.0"?>
|
||||
|
||||
<!--
|
||||
=============================================================================
|
||||
AspectWerkz plugin for Maven.
|
||||
=============================================================================
|
||||
-->
|
||||
<project
|
||||
xmlns:ant="jelly:ant"
|
||||
xmlns:j="jelly:core"
|
||||
xmlns:util="jelly:util">
|
||||
|
||||
<!--
|
||||
========================================================================
|
||||
Compile AW javadoc attributes.
|
||||
========================================================================
|
||||
-->
|
||||
<goal name="aspectwerkz:attributec"
|
||||
description="Compile AspectWerkz javadoc attributes">
|
||||
|
||||
<ant:mkdir dir="${maven.build.dir}"/>
|
||||
|
||||
<ant:java dir="${maven.build.dir}" failonerror="true" fork="true"
|
||||
classname="org.codehaus.aspectwerkz.metadata.AttributeC">
|
||||
|
||||
<ant:arg file="${maven.aspectwerkz.src.dir}"/>
|
||||
<ant:arg file="${maven.aspectwerkz.definition.file}"/>
|
||||
<j:if test="${context.getVariable('maven.aspectwerkz.definition.merge.file') != null}">
|
||||
<ant:arg line="-m ${maven.aspectwerkz.definition.merge.file}"/>
|
||||
</j:if>
|
||||
<j:if test="${context.getVariable('maven.aspectwerkz.uuid') != null}">
|
||||
<ant:arg line="-u ${maven.aspectwerkz.uuid}"/>
|
||||
</j:if>
|
||||
|
||||
<ant:classpath>
|
||||
<ant:pathelement location="${maven.dependency.classpath}"/>
|
||||
<ant:pathelement location="${plugin.getDependencyPath('aspectwerkz:aspectwerkz')}"/>
|
||||
<ant:pathelement location="${plugin.getDependencyPath('qdox:qdox')}"/>
|
||||
<ant:pathelement location="${plugin.getDependencyPath('trove:trove')}"/>
|
||||
<ant:pathelement location="${plugin.getDependencyPath('dom4j:dom4j')}"/>
|
||||
</ant:classpath>
|
||||
|
||||
</ant:java>
|
||||
|
||||
<!--
|
||||
${main.classes}
|
||||
${lib.dir}/piccolo-1.03.jar
|
||||
${lib.dir}/commons-jexl-1.0-beta-2.jar
|
||||
${lib.dir}/jrexx-1.1.1.jar
|
||||
-->
|
||||
|
||||
</goal>
|
||||
|
||||
</project>
|
||||
13
aspectwerkz/plugin.properties
Normal file
13
aspectwerkz/plugin.properties
Normal file
@@ -0,0 +1,13 @@
|
||||
# Location of AW sources
|
||||
maven.aspectwerkz.src.dir = ${basedir}/src/main
|
||||
|
||||
# Location of AW XML definition file
|
||||
maven.aspectwerkz.definition.file = ${basedir}/conf/aspectwerkz.xml
|
||||
|
||||
# (optional). Definition file to be merged with the main definition file.
|
||||
# Used by the <aspectwerkz:attributeC> goal.
|
||||
# maven.aspectwerkz.definition.merge.file =
|
||||
|
||||
# (optional). UUID to use. If not specified a default one will be automatically
|
||||
# generated. Used by the <aspectwerkz:attributeC> goal.
|
||||
# maven.aspectwerkz.uuid =
|
||||
6
aspectwerkz/project.properties
Normal file
6
aspectwerkz/project.properties
Normal file
@@ -0,0 +1,6 @@
|
||||
# -------------------------------------------------------------------
|
||||
# P R O J E C T P R O P E R T I E S
|
||||
# -------------------------------------------------------------------
|
||||
maven.xdoc.date=left
|
||||
maven.xdoc.version=${pom.currentVersion}
|
||||
maven.license.licenseFile=${basedir}/../LICENSE.txt
|
||||
74
aspectwerkz/project.xml
Normal file
74
aspectwerkz/project.xml
Normal file
@@ -0,0 +1,74 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<project>
|
||||
<extend>../project.xml</extend>
|
||||
<pomVersion>3</pomVersion>
|
||||
<id>maven-aspectwerkz-plugin</id>
|
||||
<name>Maven AspectWerkz Plug-in</name>
|
||||
<currentVersion>1.0-SNAPSHOT</currentVersion>
|
||||
<description>Plugin for AspectWerkz</description>
|
||||
<shortDescription>AspectWerkz plugin</shortDescription>
|
||||
<url>http://maven.apache.org/reference/plugins/aspectwerkz/</url>
|
||||
<issueTrackingUrl>http://jira.codehaus.org/BrowseProject.jspa?id=xxxx</issueTrackingUrl>
|
||||
<siteDirectory>/www/maven.apache.org/reference/plugins/aspectwerkz/</siteDirectory>
|
||||
<repository>
|
||||
<connection>scm:cvs:pserver:anoncvs@cvs.apache.org:/home/cvspublic:maven-plugins/aspectwerkz/</connection>
|
||||
<url>http://cvs.apache.org/viewcvs/maven-plugins/aspectwerkz/</url>
|
||||
</repository>
|
||||
<versions>
|
||||
<version>
|
||||
<id>1.0</id>
|
||||
<name>1.0</name>
|
||||
<tag>HEAD</tag>
|
||||
</version>
|
||||
</versions>
|
||||
<developers>
|
||||
<developer>
|
||||
<name>Vincent Massol</name>
|
||||
<id>vmassol</id>
|
||||
<email>vmassol@pivolis.com</email>
|
||||
<organization>Pivolis</organization>
|
||||
<roles>
|
||||
<role>Creator</role>
|
||||
<role>Java Developer</role>
|
||||
<role>Release Manager</role>
|
||||
</roles>
|
||||
</developer>
|
||||
</developers>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>aspectwerkz</groupId>
|
||||
<artifactId>aspectwerkz-core</artifactId>
|
||||
<version>0.9.RC1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>aspectwerkz</groupId>
|
||||
<artifactId>aspectwerkz</artifactId>
|
||||
<version>0.9.RC1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>qdox</groupId>
|
||||
<artifactId>qdox</artifactId>
|
||||
<version>1.3</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>trove</groupId>
|
||||
<artifactId>trove</artifactId>
|
||||
<version>1.0.2</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>dom4j</groupId>
|
||||
<artifactId>dom4j</artifactId>
|
||||
<version>1.4</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<reports>
|
||||
<report>maven-changes-plugin</report>
|
||||
<report>maven-changelog-plugin</report>
|
||||
<report>maven-file-activity-plugin</report>
|
||||
<report>maven-developer-activity-plugin</report>
|
||||
<report>maven-file-activity-plugin</report>
|
||||
<report>maven-license-plugin</report>
|
||||
<report>maven-linkcheck-plugin</report>
|
||||
</reports>
|
||||
</project>
|
||||
2
aspectwerkz/src/plugin-test/.cvsignore
Normal file
2
aspectwerkz/src/plugin-test/.cvsignore
Normal file
@@ -0,0 +1,2 @@
|
||||
gump.xml
|
||||
*.log
|
||||
11
aspectwerkz/src/plugin-test/conf/aspectwerkz.xml
Normal file
11
aspectwerkz/src/plugin-test/conf/aspectwerkz.xml
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE aspectwerkz PUBLIC "-//AspectWerkz//DTD//EN" "http://aspectwerkz.codehaus.org/dtd/aspectwerkz.dtd">
|
||||
|
||||
<aspectwerkz>
|
||||
<system id="test">
|
||||
<advice-def name="org$codehaus$aspectwerkz$advice$CFlowPreAdvice" class="org.codehaus.aspectwerkz.xmldef.advice.CFlowPreAdvice" deployment-model="perThread"/>
|
||||
<advice-def name="org$codehaus$aspectwerkz$advice$CFlowPostAdvice" class="org.codehaus.aspectwerkz.xmldef.advice.CFlowPostAdvice" deployment-model="perThread"/>
|
||||
<advice-def name="org$codehaus$aspectwerkz$advice$CFlowPreAdvice" class="org.codehaus.aspectwerkz.xmldef.advice.CFlowPreAdvice" deployment-model="perThread"/>
|
||||
<aspect name="org/codehaus/aspectwerkz/system"/>
|
||||
</system>
|
||||
</aspectwerkz>
|
||||
8
aspectwerkz/src/plugin-test/maven.xml
Normal file
8
aspectwerkz/src/plugin-test/maven.xml
Normal file
@@ -0,0 +1,8 @@
|
||||
<project xmlns:util="jelly:util" xmlns:j="jelly:core">
|
||||
|
||||
<goal name="testPlugin">
|
||||
<attainGoal name="clean"/>
|
||||
<attainGoal name="aspectwerkz:attributec"/>
|
||||
</goal>
|
||||
|
||||
</project>
|
||||
5
aspectwerkz/src/plugin-test/project.properties
Normal file
5
aspectwerkz/src/plugin-test/project.properties
Normal file
@@ -0,0 +1,5 @@
|
||||
# -------------------------------------------------------------------
|
||||
# P R O J E C T P R O P E R T I E S
|
||||
# -------------------------------------------------------------------
|
||||
|
||||
maven.aspectwerkz.uuid = test
|
||||
39
aspectwerkz/src/plugin-test/project.xml
Normal file
39
aspectwerkz/src/plugin-test/project.xml
Normal file
@@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<project>
|
||||
<pomVersion>3</pomVersion>
|
||||
<id>test-maven-aspectwerkz-plugin</id>
|
||||
<name>Test project for Maven AspectWerkz Plugin</name>
|
||||
<groupId>maven</groupId>
|
||||
<currentVersion>1.0-SNAPSHOT</currentVersion>
|
||||
<organization>
|
||||
<name>Apache Software Foundation</name>
|
||||
<url>http://www.apache.org/</url>
|
||||
<logo>http://maven.apache.org/images/jakarta-logo-blue.gif</logo>
|
||||
</organization>
|
||||
<inceptionYear>2003</inceptionYear>
|
||||
<package>org.apache.maven</package>
|
||||
<logo>http://maven.apache.org/images/maven.jpg</logo>
|
||||
<description>Test for Maven AspectWerkz plugin</description>
|
||||
<shortDescription>Test for Maven AspectWerkz plugin</shortDescription>
|
||||
<url>http://maven.apache.org/reference/plugins/aspectwerkz/</url>
|
||||
<siteDirectory>/www/maven.apache.org/reference/plugins/aspectwerkz/</siteDirectory>
|
||||
<repository>
|
||||
<connection>scm:cvs:pserver:anoncvs@cvs.apache.org:/home/cvspublic:maven/src/plugins-build/aspectwerkz/</connection>
|
||||
<url>http://cvs.apache.org/viewcvs/maven/src/plugins-build/aspectwerkz/</url>
|
||||
</repository>
|
||||
<developers>
|
||||
<developer>
|
||||
<name>Vincent Massol</name>
|
||||
<id>vmassol</id>
|
||||
<email>vmassol@pivolis.com</email>
|
||||
<organization>Pivolis</organization>
|
||||
<roles>
|
||||
<role>Developer</role>
|
||||
</roles>
|
||||
</developer>
|
||||
</developers>
|
||||
<build>
|
||||
<sourceDirectory>src/main</sourceDirectory>
|
||||
</build>
|
||||
</project>
|
||||
@@ -0,0 +1,26 @@
|
||||
package org.apache.maven.aspectwerkz;
|
||||
|
||||
import org.codehaus.aspectwerkz.attribdef.Pointcut;
|
||||
import org.codehaus.aspectwerkz.attribdef.aspect.Aspect;
|
||||
import org.codehaus.aspectwerkz.joinpoint.JoinPoint;
|
||||
|
||||
/**
|
||||
* @Aspect
|
||||
*
|
||||
* @author <a href="mailto:vmassol@apache.org">Vincent Massol</a>
|
||||
*/
|
||||
public class SampleAspect extends Aspect
|
||||
{
|
||||
/**
|
||||
* @Execution * *..Target.someMethod(..)
|
||||
*/
|
||||
Pointcut samplePointcut;
|
||||
|
||||
/**
|
||||
* @Around samplePointcut
|
||||
*/
|
||||
public Object sampleAdvice(final JoinPoint joinPoint) throws Throwable
|
||||
{
|
||||
return joinPoint.proceed();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
package org.apache.maven.aspectwerkz;
|
||||
|
||||
/**
|
||||
* @author <a href="mailto:vmassol@apache.org">Vincent Massol</a>
|
||||
*/
|
||||
public class Target
|
||||
{
|
||||
public static void someMethod()
|
||||
{
|
||||
}
|
||||
}
|
||||
18
aspectwerkz/xdocs/changes.xml
Normal file
18
aspectwerkz/xdocs/changes.xml
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0"?>
|
||||
<document>
|
||||
<properties>
|
||||
<title>Changes</title>
|
||||
<author email="vmassol@apache.org">Vincent Massol</author>
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
|
||||
<release version="1.0" date="in CVS">
|
||||
<action dev="vmassol" type="add">
|
||||
Plugin creation.
|
||||
</action>
|
||||
</release>
|
||||
|
||||
</body>
|
||||
</document>
|
||||
|
||||
18
aspectwerkz/xdocs/goals.xml
Normal file
18
aspectwerkz/xdocs/goals.xml
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<document>
|
||||
<properties>
|
||||
<title>Maven AspectWerkz plugin goals</title>
|
||||
<author email="vmassol@apache.org">Vincent Massol</author>
|
||||
</properties>
|
||||
<body>
|
||||
<goals>
|
||||
<goal>
|
||||
<name>aspectwerkz:attributec</name>
|
||||
<description>
|
||||
Compile AspectWerkz javadoc attributes.
|
||||
</description>
|
||||
</goal>
|
||||
</goals>
|
||||
</body>
|
||||
</document>
|
||||
19
aspectwerkz/xdocs/index.xml
Normal file
19
aspectwerkz/xdocs/index.xml
Normal file
@@ -0,0 +1,19 @@
|
||||
<?xml version="1.0"?>
|
||||
<document>
|
||||
|
||||
<properties>
|
||||
<title>Maven AspectWerkz plugin</title>
|
||||
<author email="vmassol@apache.org">Vincent Massol</author>
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
<section name="Maven AspectWerkz plugin">
|
||||
<p>
|
||||
Offers goals to manipulate
|
||||
<a href="http://aspectwerkz.codehaus.org">AspectWerkz</a>
|
||||
sources: attribute compilation, offline weaving of aspects,
|
||||
execution of weaved application, etc.
|
||||
</p>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
16
aspectwerkz/xdocs/navigation.xml
Normal file
16
aspectwerkz/xdocs/navigation.xml
Normal file
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<project name="Maven AspectWerkz plugin">
|
||||
|
||||
<title>Maven AspectWerkz plugin</title>
|
||||
|
||||
<body>
|
||||
<links>
|
||||
<item name="Maven" href="http://maven.apache.org/"/>
|
||||
<item name="AspectWerkz" href="http://aspectwerkz.codehaus.org/"/>
|
||||
</links>
|
||||
<menu name="Overview">
|
||||
<item name="Goals" href="/goals.html"/>
|
||||
<item name="Properties" href="/properties.html"/>
|
||||
</menu>
|
||||
</body>
|
||||
</project>
|
||||
43
aspectwerkz/xdocs/properties.xml
Normal file
43
aspectwerkz/xdocs/properties.xml
Normal file
@@ -0,0 +1,43 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<document>
|
||||
<properties>
|
||||
<title>AspectWerkz properties</title>
|
||||
<author email="vmassol@apache.org">Vincent Massol</author>
|
||||
</properties>
|
||||
<body>
|
||||
<section name="AspectWerkz properties">
|
||||
<table>
|
||||
<tr>
|
||||
<th>Property</th>
|
||||
<th>Optional?</th>
|
||||
<th>Description</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>maven.aspectwerkz.src.dir</td>
|
||||
<td>Yes</td>
|
||||
<td>
|
||||
Location of aspect sources. Default location is
|
||||
<code>${basedir}/src/aspectwerkz</code>.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>maven.aspectwerkz.definition.merge.file</td>
|
||||
<td>Yes</td>
|
||||
<td>
|
||||
Definition file to be merged with the main definition file.
|
||||
This property is not defined by default.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>maven.aspectwerkz.uuid</td>
|
||||
<td>Yes</td>
|
||||
<td>
|
||||
UUID to use. If not specified a default one will be
|
||||
automatically generated. This property is not defined by default.
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
Reference in New Issue
Block a user