# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
# 
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# 
#      http://www.apache.org/licenses/LICENSE-2.0
#  
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------

#============================================================================
# Properties for the AspectWerkz plugin for Maven
# ===========================================================================

# AW supports 2 types of Aspects/Advice/Pointcuts definition: 
# - xmldef   : Advice are defined as extending *Advice classes (BeforeAdvice,
#              AroundAdvice, etc). Custom javadoc attributes can be used to 
#              link code to weave with advices.
# - attribdef: Advices and pcds are defined purely using custom javadoc
#              attributes (@Execute, @Aspect, etc).
# You need to tell the plugin how you have defined your AW 
# Aspects/Advices/Pointcuts. The 2 valid values are "xmldef" and "attribdef".
maven.aspectwerkz.mode = attribdef

# Location where weaved classes will be generated.
maven.aspectwerkz.weave.build.dir = ${maven.build.dest}

# Decide whether definition validation is turned on or off.
maven.aspectwerkz.definition.validate = false

# Verbose mode
maven.aspectwerkz.verbose = false

# Classloader to use for class files weaving
maven.aspectwerkz.classloader.preprocessor = org.codehaus.aspectwerkz.transform.AspectWerkzPreProcessor

# The AW plugin looks for source files in ${pom.sourceDirectory}. 
# It also supports all source directories added to the ${maven.compile.src.set}
# Ant path variable. Moreover, if you wish to keep non-production aspects in a 
# specific directory, you can define the property below.
maven.aspectwerkz.src.dir = ${basedir}/src/aspectwerkz

# Location where non-production aspect classes will be compiled to.
# There are the classes defined by ${maven.aspectwerkz.src.dir}.
maven.aspectwerkz.build.dest = ${maven.build.dir}/aspectwerkz/classes

#----------------------------------------------------------------------------
# attribdef mode properties
# ---------------------------------------------------------------------------

# Location of the XML definition file.
maven.aspectwerkz.definition.file.src = ${basedir}/conf/aspectwerkz.xml

# Location where aspectc results will be generated.
maven.aspectwerkz.aspectc.build.dir = ${maven.build.dir}/aspectwerkz/aspectc

#----------------------------------------------------------------------------
# xmldef mode properties
# ---------------------------------------------------------------------------

# Location of the AW XML definition file that will be created by the
# attribute compilation (when calling <aspectwerkz:attributeC>). This is only
# used in "xmldef" mode.
maven.aspectwerkz.definition.file.build = ${maven.build.dir}/aspectwerkz.xml

# If set to "no", prevents org.codehaus.aspectwerkz and related classes 
# (jexl, trove, dom4j...) from being instrumented.
maven.aspectwerkz.transform.filter = no

# (optional). Definition file to be merged with the main definition file. 
# Used by the <aspectwerkz:attributeC> goal. Only for "xmldef" mode.
# maven.aspectwerkz.definition.file.merge =

# (optional). UUID to use. If not specified a default one will be automatically
# generated. Used by the <aspectwerkz:attributeC> goal. Only for "xmldef" mode.
# maven.aspectwerkz.uuid = 
