Author: julien(a)jboss.com
Date: 2007-08-14 06:47:21 -0400 (Tue, 14 Aug 2007)
New Revision: 7913
Added:
modules/web/
modules/web/trunk/
modules/web/trunk/build/
modules/web/trunk/build/.cvsignore
modules/web/trunk/build/.project
modules/web/trunk/build/build-thirdparty.xml
modules/web/trunk/build/build.bat
modules/web/trunk/build/build.sh
modules/web/trunk/build/build.xml
modules/web/trunk/build/distrib.xml
modules/web/trunk/build/etc/
modules/web/trunk/build/etc/clustered.properties
modules/web/trunk/build/etc/hsqldb.properties
modules/web/trunk/build/etc/local.properties-example
modules/web/trunk/build/etc/mysql.properties
modules/web/trunk/build/etc/mysql5.properties
modules/web/trunk/build/etc/oracle.properties
modules/web/trunk/build/etc/oracle10gXE.properties
modules/web/trunk/build/etc/postgresql.properties
modules/web/trunk/build/etc/resources/
modules/web/trunk/build/etc/resources/jboss-log4j.xml.diff
modules/web/trunk/build/etc/single.properties
modules/web/trunk/build/etc/sqlserver.properties
modules/web/trunk/build/ide/
modules/web/trunk/build/ide/eclipse/
modules/web/trunk/build/ide/eclipse/3.1/
modules/web/trunk/build/ide/eclipse/3.1/config/
modules/web/trunk/build/ide/eclipse/3.1/config/jboss-format.xml
modules/web/trunk/build/ide/eclipse/3.2/
modules/web/trunk/build/ide/eclipse/3.2/team/
modules/web/trunk/build/ide/eclipse/3.2/team/anonymous-projectSet.psf
modules/web/trunk/build/ide/eclipse/3.2/team/commiter-projectSet.psf
modules/web/trunk/build/ide/intellij/
modules/web/trunk/build/ide/intellij/idea60/
modules/web/trunk/build/ide/intellij/idea60/config/
modules/web/trunk/build/ide/intellij/idea60/config/codestyles/
modules/web/trunk/build/ide/intellij/idea60/config/codestyles/jboss.xml
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/StandartTestCasePortlet.java
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/includes/
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/includes/Body
Header.java
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/includes/File
Header.java
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/AnnotationType.java
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/Class.java
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/Enum.java
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/Interface.java
modules/web/trunk/build/ide/intellij/idea60/jboss-portal-web.ipr
modules/web/trunk/build/ide/intellij/idea60/modules/
modules/web/trunk/build/ide/intellij/idea60/modules/testsuite/
modules/web/trunk/build/ide/intellij/idea60/modules/testsuite/testsuite.iml
modules/web/trunk/build/ide/intellij/idea60/modules/thirdparty/
modules/web/trunk/build/ide/intellij/idea60/modules/thirdparty/thirdparty.iml
modules/web/trunk/build/ide/intellij/idea60/modules/tools/
modules/web/trunk/build/ide/intellij/idea60/modules/tools/tools.iml
modules/web/trunk/build/ide/intellij/idea60/modules/web/
modules/web/trunk/build/ide/intellij/idea60/modules/web/web.iml
modules/web/trunk/build/ide/intellij/idea60/readme.txt
modules/web/trunk/build/licences/
modules/web/trunk/build/licences/JBossEULA.txt
modules/web/trunk/build/local.properties
modules/web/trunk/testsuite/
modules/web/trunk/testsuite/.project
modules/web/trunk/testsuite/build.bat
modules/web/trunk/testsuite/build.sh
modules/web/trunk/testsuite/build.xml
modules/web/trunk/testsuite/imports/
modules/web/trunk/testsuite/imports/server-config.xml
modules/web/trunk/tools/
modules/web/trunk/tools/.donotremove
modules/web/trunk/tools/.project
modules/web/trunk/tools/bin/
modules/web/trunk/tools/bin/ant
modules/web/trunk/tools/bin/ant.bat
modules/web/trunk/tools/bin/antRun
modules/web/trunk/tools/bin/antRun.bat
modules/web/trunk/tools/bin/antRun.pl
modules/web/trunk/tools/bin/antx.bat
modules/web/trunk/tools/bin/build.bat
modules/web/trunk/tools/bin/build.sh
modules/web/trunk/tools/bin/common.shlib
modules/web/trunk/tools/bin/complete-ant-cmd.pl
modules/web/trunk/tools/bin/lcp.bat
modules/web/trunk/tools/bin/runant.pl
modules/web/trunk/tools/bin/runant.py
modules/web/trunk/tools/bin/ubuild.bat
modules/web/trunk/tools/build.xml
modules/web/trunk/tools/etc/
modules/web/trunk/tools/etc/buildfragments/
modules/web/trunk/tools/etc/buildfragments/autoload.properties
modules/web/trunk/tools/etc/buildfragments/buildmagic.ent
modules/web/trunk/tools/etc/buildfragments/common.properties
modules/web/trunk/tools/etc/buildfragments/defaults.ent
modules/web/trunk/tools/etc/buildfragments/modules.ent
modules/web/trunk/tools/etc/buildfragments/targets.ent
modules/web/trunk/tools/etc/buildfragments/task.properties
modules/web/trunk/tools/etc/buildfragments/tools.ent
modules/web/trunk/tools/etc/buildmagic/
modules/web/trunk/tools/etc/buildmagic/aliases.ent
modules/web/trunk/tools/etc/changelog.xsl
modules/web/trunk/tools/etc/checkstyle-frames.xsl
modules/web/trunk/tools/etc/checkstyle/
modules/web/trunk/tools/etc/checkstyle/checkstyle-frames.xsl
modules/web/trunk/tools/etc/checkstyle/checkstyle-text.xsl
modules/web/trunk/tools/etc/checkstyle/checkstyle-xdoc.xsl
modules/web/trunk/tools/etc/coverage-frames.xsl
modules/web/trunk/tools/etc/jbossbuild/
modules/web/trunk/tools/etc/jbossbuild/tasks.xml
modules/web/trunk/tools/etc/jdepend-frames.xsl
modules/web/trunk/tools/etc/jdepend.xsl
modules/web/trunk/tools/etc/junit-frames.xsl
modules/web/trunk/tools/etc/junit-noframes.xsl
modules/web/trunk/tools/etc/log.xsl
modules/web/trunk/tools/etc/maudit-frames.xsl
modules/web/trunk/tools/etc/mmetrics-frames.xsl
modules/web/trunk/tools/etc/tagdiff.xsl
modules/web/trunk/tools/examples/
modules/web/trunk/tools/examples/build.bat
modules/web/trunk/tools/examples/build.sh
modules/web/trunk/tools/lib/
modules/web/trunk/tools/lib/ant-junit.jar
modules/web/trunk/tools/lib/ant-launcher.jar
modules/web/trunk/tools/lib/ant-nodeps.jar
modules/web/trunk/tools/lib/ant.jar
modules/web/trunk/tools/lib/bsf.jar
modules/web/trunk/tools/lib/buildmagic-tasks.jar
modules/web/trunk/tools/lib/cargo-core-uberjar-0.8.jar
modules/web/trunk/tools/lib/crimson.jar
modules/web/trunk/tools/lib/explode.jar
modules/web/trunk/tools/lib/jboss-test.jar
modules/web/trunk/tools/lib/jbossbuild.jar
modules/web/trunk/tools/lib/junit.jar
modules/web/trunk/tools/lib/saxon.jar
modules/web/trunk/tools/lib/xalan.jar
modules/web/trunk/tools/lib/xercesImpl.jar
modules/web/trunk/tools/lib/xml-apis.jar
modules/web/trunk/tools/src/
modules/web/trunk/tools/src/main/
modules/web/trunk/tools/src/main/org/
modules/web/trunk/tools/src/main/org/jboss/
modules/web/trunk/tools/src/main/org/jboss/portal/
modules/web/trunk/tools/src/main/org/jboss/portal/tools/
modules/web/trunk/tools/src/main/org/jboss/portal/tools/dtd/
modules/web/trunk/tools/src/main/org/jboss/portal/tools/dtd/DTDToDocbook.java
modules/web/trunk/tools/src/main/org/jboss/portal/tools/dtd/Test.java
modules/web/trunk/web/
modules/web/trunk/web/.classpath
modules/web/trunk/web/.project
modules/web/trunk/web/build.bat
modules/web/trunk/web/build.sh
modules/web/trunk/web/build.xml
modules/web/trunk/web/src/
modules/web/trunk/web/src/main/
modules/web/trunk/web/src/main/org/
modules/web/trunk/web/src/main/org/jboss/
modules/web/trunk/web/src/main/org/jboss/portal/
modules/web/trunk/web/src/main/org/jboss/portal/web/
modules/web/trunk/web/src/main/org/jboss/portal/web/RequestDispatchCallback.java
modules/web/trunk/web/src/main/org/jboss/portal/web/ServletContextDispatcher.java
modules/web/trunk/web/src/main/org/jboss/portal/web/spi/
modules/web/trunk/web/src/main/org/jboss/portal/web/spi/ServletContainerContext.java
modules/web/trunk/web/src/resources/
Log:
importing web module based on 2.6 branch rev number 7910
Added: modules/web/trunk/build/.cvsignore
===================================================================
--- modules/web/trunk/build/.cvsignore (rev 0)
+++ modules/web/trunk/build/.cvsignore 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,3 @@
+build.log
+local.properties
+build.iml
Property changes on: modules/web/trunk/build/.cvsignore
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/.project
===================================================================
--- modules/web/trunk/build/.project (rev 0)
+++ modules/web/trunk/build/.project 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>build</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ </buildSpec>
+ <natures>
+ </natures>
+</projectDescription>
Property changes on: modules/web/trunk/build/.project
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/build-thirdparty.xml
===================================================================
--- modules/web/trunk/build/build-thirdparty.xml (rev 0)
+++ modules/web/trunk/build/build-thirdparty.xml 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,71 @@
+<?xml version="1.0"?>
+<project name="main.build"
+ default="synchronize"
+ basedir=".">
+
+ <!-- Property File definitions -->
+ <!--<property file="local.properties"/>
+ <property file="synchronize.properties"/>-->
+ <property environment="env"/>
+
+ <!-- Property Definitions -->
+ <property name="generatedLibrariesFiles"
value="../thirdparty/libraries.ent"/>
+
+
+ <property name="jboss.tasks.path"
+ value="../tools/lib/jbossbuild.jar"/>
+
+ <!-- Allow jbossbuild.repository to be set from (in order or priority)
+ + Command line -Djbossbuild.repository=...
+ + synchronize.properties jbossbuild.repository setting
+ + JBOSS_REPOSITORY environment variable
+ -->
+ <condition property="jbossbuild.repository"
value="${env.JBOSS_REPOSITORY}">
+ <isset property="env.JBOSS_REPOSITORY"/>
+ </condition>
+ <!-- Fall back to default -->
+ <property name="jbossbuild.repository"
value="http://repository.jboss.com"/>
+
+ <!-- File Imports -->
+ <import file="../tools/etc/jbossbuild/tasks.xml"/>
+
+
+ <!-- Main Definition of dependencies -->
+ <build id="jbossportal-thirdparty"
+ impltitle="JBossPortal"
+ implversion="jboss-portal-2.6.1.CR1"
+ implvendor="JBoss, a division of Red Hat Inc."
+ implurl="http://www.jboss.org"
+ description="JBoss Portal"
+ cvsroot="${cvs.prefix}@cvs.forge.jboss.com:/cvsroot/jboss"
+ thirdpartypath="../thirdparty/"
+ location="${jbossbuild.repository}"
+ targetdefs="targets">
+
+ <!--
+ The repository is in CVS under the module
repository.jboss.com whose contents
+ are pushed to the
http://repository.jboss.com site.
+ -->
+
+ <componentref name="jboss-portal/modules/common"
version="1.0.0-SNAPSHOT"/>
+ <componentref name="apache-log4j" version="1.2.8"/>
+ <componentref name="junit" version="3.8.1"/>
+ <componentref name="sun-servlet" version="2.4"/>
+ </build>
+
+ <synchronizeinfo/>
+
+ <target name="generate-lib-file"
+ description="generate libraries.ent and thirdparty license info"
+ depends="synchronize">
+ <gen-lib-file filename="${generatedLibrariesFiles}"/>
+ <visit-componentref-graph
+
componentVisitor="org.jboss.ant.util.graph.ComponentRefGraphLicenseVisitor"/>
+ </target>
+
+ <!-- Generate the targets -->
+ <generate generate="jbossportal-thirdparty"/>
+
+
+
+</project>
Property changes on: modules/web/trunk/build/build-thirdparty.xml
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/build.bat
===================================================================
--- modules/web/trunk/build/build.bat (rev 0)
+++ modules/web/trunk/build/build.bat 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,54 @@
+@echo off
+rem
+rem Invokes a script of the same name in the 'tools' module.
+rem
+rem The 'tools' module is expected to be a peer directory of the directory
+rem in which this script lives.
+rem
+rem @author Jason Dillon <jason(a)planet57.com>
+rem
+
+rem $Id: build.bat 2 2005-01-14 23:01:32Z vietj $
+
+setlocal
+
+set PROGNAME=%~nx0
+set DIRNAME=%~dp0
+
+rem Legacy shell support
+if x%PROGNAME%==x set PROGNAME=build.bat
+if x%DIRNAME%==x set DIRNAME=.\
+
+set MODULE_ROOT=%DIRNAME%
+if x%TOOLS_ROOT%==x set TOOLS_ROOT=%DIRNAME%..\tools
+set TARGET=%TOOLS_ROOT%\bin\build.bat
+set ARGS=%*
+
+rem Start'er up yo
+goto main
+
+:debug
+if not x%DEBUG%==x echo %PROGNAME%: %*
+goto :EOF
+
+:main
+call :debug PROGNAME=%PROGNAME%
+call :debug DIRNAME=%DIRNAME%
+call :debug TOOLS_ROOT=%TOOLS_ROOT%
+call :debug TARGET=%TARGET%
+
+if exist %TARGET% call :call-script & goto :EOF
+rem else fail, we can not go on
+
+echo %PROGNAME%: *ERROR* The target executable does not exist:
+echo %PROGNAME%:
+echo %PROGNAME%: %TARGET%
+echo %PROGNAME%:
+echo %PROGNAME%: Please make sure you have checked out the 'tools' module
+echo %PROGNAME%: and make sure it is up to date.
+goto :EOF
+
+:call-script
+call :debug Executing %TARGET% %ARGS%
+call %TARGET% %ARGS%
+goto :EOF
Property changes on: modules/web/trunk/build/build.bat
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/build.sh
===================================================================
--- modules/web/trunk/build/build.sh (rev 0)
+++ modules/web/trunk/build/build.sh 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,49 @@
+#!/bin/sh
+##
+## Invokes a script of the same name in the 'tools' module.
+##
+## The 'tools' module is expected to be a peer directory of the directory
+## in which this script lives.
+##
+## @author Jason Dillon <jason(a)planet57.com>
+##
+
+# $Id: build.sh 2 2005-01-14 23:01:32Z vietj $
+
+PROGNAME=`basename $0`
+DIRNAME=`dirname $0`
+
+# Buss it yo
+main() {
+ if [ "x$TOOLS_ROOT" = "x" ]; then
+ TOOLS_ROOT=`cd $DIRNAME/../tools && pwd`
+ fi
+
+ MODULE_ROOT=`cd $DIRNAME; pwd`
+ export TOOLS_ROOT MODULE_ROOT DEBUG TRACE
+
+ # Where is the target script?
+ target="$TOOLS_ROOT/bin/$PROGNAME"
+ if [ ! -f "$target" ]; then
+ echo "${PROGNAME}: *ERROR* The target executable does not exist:"
+ echo "${PROGNAME}:"
+ echo "${PROGNAME}: $target"
+ echo "${PROGNAME}:"
+ echo "${PROGNAME}: Please make sure you have checked out the 'tools'
module"
+ echo "${PROGNAME}: and make sure it is up to date."
+ exit 2
+ fi
+
+ # Get busy yo!
+ if [ "x$DEBUG" != "x" ]; then
+ echo "${PROGNAME}: Executing: /bin/sh $target $@"
+ fi
+ if [ "x$TRACE" = "x" ]; then
+ exec /bin/sh $target "$@"
+ else
+ exec /bin/sh -x $target "$@"
+ fi
+}
+
+# Lets get ready to rumble!
+main "$@"
Property changes on: modules/web/trunk/build/build.sh
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/build.xml
===================================================================
--- modules/web/trunk/build/build.xml (rev 0)
+++ modules/web/trunk/build/build.xml 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,409 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE project [
+
+ <!ENTITY buildmagic SYSTEM
"../tools/etc/buildfragments/buildmagic.ent">
+ <!ENTITY modules SYSTEM "../tools/etc/buildfragments/modules.ent">
+ <!ENTITY defaults SYSTEM
"../tools/etc/buildfragments/defaults.ent">
+
+
+ ]>
+
+<!-- $Id: build.xml 7880 2007-08-09 12:38:58Z thomas.heute(a)jboss.com $ -->
+
+<!--+======================================================================+-->
+<!--| JBoss Portal: The OpenSource Portal |-->
+<!--| |-->
+<!--| Distributable under LGPL license. |-->
+<!--| See terms of license at
http://www.gnu.org. |-->
+<!--| |-->
+<!--| This file has been designed to work with the 'tools' module and
|-->
+<!--| Buildmagic extentions. |-->
+<!--+======================================================================+-->
+
+<project default="main" name="JBoss Portal">
+
+ <!--+====================================================================+-->
+ <!--| Setup |-->
+ <!--| |-->
+ <!--| Include the common build elements. |-->
+ <!--| |-->
+ <!--| This defines several different targets, properties and paths. |-->
+ <!--| It also sets up the basic extention tasks amoung other things. |-->
+ <!--+====================================================================+-->
+
+ &buildmagic;
+ &modules;
+ &defaults;
+
+ <!--+====================================================================+-->
+ <!--| Initialization |-->
+ <!--| |-->
+ <!--| Initialize the build system. Other targets should depend on |-->
+ <!--| 'init'.
|-->
+ <!--+====================================================================+-->
+
+ <target name="init" unless="init.disable"
depends="_buildmagic:init">
+ </target>
+
+
+ <!--+====================================================================+-->
+ <!--| Configuration |-->
+ <!--| |-->
+ <!--| This target is invoked by the Buildmagic initialization logic |-->
+ <!--| and should contain module specific configuration elements. |-->
+ <!--+====================================================================+-->
+
+ <target name="configure" unless="configure.disable">
+
+ <!--+==============================+-->
+ <!--| Project version information. |-->
+ <!--+==============================+-->
+
+ <property name="version.major" value="2"/>
+ <property name="version.minor" value="6"/>
+ <property name="version.revision" value="0"/>
+ <property name="version.tag" value="A"/>
+ <property name="version.name" value="Ninja"/>
+
+ <!-- This must be set to the CVS tag for any release -->
+ <property name="version.cvstag" value="HEAD"/>
+
+ <!-- Module name(s) & version -->
+ <property name="module.version"
+
value="${version.major}.${version.minor}.${version.revision}${version.tag}"/>
+
+ <!-- ========= -->
+ <!-- Libraries -->
+ <!-- ========= -->
+
+ <!-- The combined library classpath -->
+
+ <path id="library.classpath">
+ </path>
+
+ <!-- Configure modules -->
+ <call target="configure-modules"/>
+ <path id="dependentmodule.classpath">
+ <!-- Add dependent module classpath elements here. -->
+ </path>
+
+ <!--+=======================================+-->
+ <!--| Override any default properties here. |-->
+ <!--+=======================================+-->
+
+ <!-- Configure defaults & build tools -->
+
+ <call target="configure-defaults"/>
+
+ <!--+=======================================+-->
+ <!--| Define module specific elements here. |-->
+ <!--+=======================================+-->
+
+ <!--+================================+-->
+ <!--| Define project structure here. |-->
+ <!--+================================+-->
+
+ <!-- The group to use by default -->
+ <property name="groups" value="default"/>
+
+ <!-- Sets up the module configuration. -->
+ <moduleconfig property="modules" selected="${groups}">
+
+ <!-- Modules -->
+
+ <module name="web"/>
+
+ <!-- Module groups -->
+
+ <group name="web">
+ <include
+ modules="web"/>
+ </group>
+
+ <group name="default">
+ <include groups="web"/>
+ </group>
+
+ </moduleconfig>
+
+ <!-- Configure project defaults -->
+ <call target="configure-project"/>
+
+ </target>
+ <target name="modules-all"
depends="_buildmagic:modules:all"/>
+ <target name="modules-most"
depends="_buildmagic:modules:most"/>
+ <target name="modules-main"
depends="_buildmagic:modules:main"/>
+ <target name="modules-release"
depends="_buildmagic:modules:release"/>
+ <target name="modules-tests"
depends="_buildmagic:modules:tests"/>
+ <target name="modules-clean"
depends="_buildmagic:modules:clean"/>
+ <target name="modules-clobber"
depends="_buildmagic:modules:clobber"/>
+ <target name="modules-package-tests"
depends="_buildmagic:modules:package-tests"/>
+
+ <!--+====================================================================+-->
+ <!--| Module Pass-through Hooks |-->
+ <!--| |-->
+ <!--| These hooks are executed after the above pass-through targets have |-->
+ <!--| finished with a given module. |-->
+ <!--+====================================================================+-->
+
+ <!-- Add module pass-through hooks here. -->
+
+
+ <!--+====================================================================+-->
+ <!--| Compile |-->
+ <!--| |-->
+ <!--| This target should depend on other compile-* targets for each |-->
+ <!--| different type of compile that needs to be performed, short of |-->
+ <!--| documentation compiles. |-->
+ <!--+====================================================================+-->
+
+ <target name="compile"/>
+
+ <!--+====================================================================+-->
+ <!--| Generate Output |-->
+ <!--| |-->
+ <!--| Generates the target output for this module. Target output is |-->
+ <!--| the output which is ment to be released or used by external |-->
+ <!--| modules. |-->
+ <!--+====================================================================+-->
+
+ <target name="output"
+ description="Generate all target output."
+ depends="init">
+ <!-- Add module specific elements here. -->
+ </target>
+
+ <!--+====================================================================+-->
+ <!--| Documents |-->
+ <!--| |-->
+ <!--| Generate all documentation for this module. |-->
+ <!--+====================================================================+-->
+
+ <target name="docs">
+ <ant antfile="build-targets.xml"
target="_default:docs"/>
+ <!-- Add module specific elements here. -->
+ </target>
+
+ <!--+====================================================================+-->
+ <!--| Install & Release
|-->
+ <!--+====================================================================+-->
+
+ <target name="release"
+ description="Builds the default release structure."
+ depends="modules-most, output"/>
+
+ <target name="release-full"
+ description="Builds the full release structure."
+ depends="modules-all, release"/>
+
+ <!--+====================================================================+-->
+ <!--| Misc. |-->
+ <!--| |-->
+ <!--| Standard targets and pseudo-targets. |-->
+ <!--+====================================================================+-->
+
+ <target name="clean" depends="createthirdparty, modules-clean,
_buildmagic:clean"
+ description="Cleans up most generated files.">
+ <!-- Add module specific elements here. -->
+ </target>
+
+ <target name="clobber" depends="_buildmagic:clobber, clean,
modules-clobber"
+ description="Cleans up all generated files.">
+ <!-- Add module specific elements here. -->
+ </target>
+
+ <target name="main" depends="most"
+ description="Executes the default target (most)."/>
+
+ <target name="all" depends="createthirdparty, modules-all"
+ description="Executes all modules and builds everything."/>
+
+ <target name="most" depends="createthirdparty, modules-most"
+ description="Executes all modules and builds most everything."/>
+
+ <target name="help" depends="_buildmagic:help:build"
+ description="Show this help message."/>
+
+ <!--
+ | Deploy the application
+ -->
+
+ <!--<target name="initsetup">-->
+ <!--<available property="cmsdata"
file="${jboss.home}/server/${portal.deploy.dir}/data/portal"/>
-->
+ <!--</target>-->
+
+ <!--<target name="setup" depends="initsetup"
unless="cmsdata">-->
+ <!--<unzip src="../core/src/bin/setup/cms-content.zip"
dest="${jboss.home}/server/${portal.deploy.dir}/data"/>-->
+ <!--</target>-->
+
+ <target name="deploy"
+ description="Deploy."
+ depends="main">
+ <require file="${jboss.home}/server/${portal.deploy.dir}"/>
+ <copy file="../core/output/lib/jboss-portal.sar"
todir="${jboss.home}/server/${portal.deploy.dir}"
+ overwrite="true"/>
+ </target>
+
+ <target name="undeploy"
+ description="Undeploy."
+ depends="init">
+ <require file="${jboss.home}/server/${portal.deploy.dir}"/>
+ <delete
file="${jboss.home}/server/${portal.deploy.dir}/jboss-portal.sar"/>
+ </target>
+
+ <target name="deploy-all"
+ description="Deploy all archives."
+ depends="most">
+ <require file="${jboss.home}/server/${portal.deploy.dir}"/>
+ <copy file="../core/output/lib/jboss-portal.sar"
todir="${jboss.home}/server/${portal.deploy.dir}"
overwrite="true"/>
+ <copy file="../core-admin/output/lib//portal-admin.sar"
todir="${jboss.home}/server/${portal.deploy.dir}"
overwrite="true"/>
+ <copy file="../core-cms/output/lib/portal-cms.sar"
todir="${jboss.home}/server/${portal.deploy.dir}"
overwrite="true"/>
+ <copy file="../core-management/output/lib/portal-management.sar"
todir="${jboss.home}/server/${portal.deploy.dir}"
overwrite="true"/>
+ <copy file="../core-samples/output/lib/portal-basic-samples.sar"
todir="${jboss.home}/server/${portal.deploy.dir}"
overwrite="true"/>
+ <copy file="../core-samples/output/lib/portal-news-samples.war"
todir="${jboss.home}/server/${portal.deploy.dir}"
overwrite="true"/>
+ <copy file="../core-samples/output/lib/portal-jsp-samples.war"
todir="${jboss.home}/server/${portal.deploy.dir}"
overwrite="true"/>
+ <copy file="../core-samples/output/lib/portal-weather-samples.war"
todir="${jboss.home}/server/${portal.deploy.dir}"
overwrite="true"/>
+ <!--<copy file="../core-search/output/lib/portal-search.sar"
todir="${jboss.home}/server/${portal.deploy.dir}"
overwrite="true"/>-->
+ <copy file="../widget/output/lib/widget.war"
todir="${jboss.home}/server/${portal.deploy.dir}"
overwrite="true"/>
+ <copy file="../wsrp/output/lib/portal-wsrp.sar"
todir="${jboss.home}/server/${portal.deploy.dir}"
overwrite="true"/>
+ </target>
+
+ <target name="undeploy-all"
+ description="Undeploy all archives."
+ depends="init">
+ <require file="${jboss.home}/server/${portal.deploy.dir}"/>
+ <delete
file="${jboss.home}/server/${portal.deploy.dir}/jboss-portal.sar"/>
+ <delete
file="${jboss.home}/server/${portal.deploy.dir}/portal-admin.sar"/>
+ <delete
file="${jboss.home}/server/${portal.deploy.dir}/portal-cms.sar"/>
+ <delete
file="${jboss.home}/server/${portal.deploy.dir}/portal-management.sar"/>
+ <delete
file="${jboss.home}/server/${portal.deploy.dir}/portal-basic-samples.sar"/>
+ <delete
file="${jboss.home}/server/${portal.deploy.dir}/portal-news-samples.war"/>
+ <delete
file="${jboss.home}/server/${portal.deploy.dir}/portal-jsp-samples.war"/>
+ <delete
file="${jboss.home}/server/${portal.deploy.dir}/portal-weather-samples.war"/>
+ <!--<delete
file="${jboss.home}/server/${portal.deploy.dir}/portal-search.sar"/>-->
+ <delete
file="${jboss.home}/server/${portal.deploy.dir}/widget.war"/>
+ <delete
file="${jboss.home}/server/${portal.deploy.dir}/portal-wsrp.sar"/>
+ </target>
+
+ <target name="exploded-deploy"
+ description="Deploy exploded sar."
+ depends="main">
+ <require file="${jboss.home}/server/${portal.deploy.dir}"/>
+ <delete
dir="${jboss.home}/server/${portal.deploy.dir}/jboss-portal-exploded.sar"/>
+ <mkdir
dir="${jboss.home}/server/${portal.deploy.dir}/jboss-portal-exploded.sar"/>
+ <copy
todir="${jboss.home}/server/${portal.deploy.dir}/jboss-portal-exploded.sar">
+ <fileset dir="../core/output/resources/jboss-portal.sar"/>
+ </copy>
+ </target>
+
+ <target name="javadoc">
+ <mkdir dir="javadoc"/>
+ <javadoc destdir="javadoc">
+ <classpath>
+ <fileset dir="../thirdparty" includes="**/*.jar"/>
+ </classpath>
+ <packageset dir="../common/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../web/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../server/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../api/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../portlet/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../portlet-server/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../jems/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../identity/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../bridge/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../faces/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../portlet-federation/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../format/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../theme/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../cms/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../core/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../core-admin/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../core-cms/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../core-management/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../security/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../wsrp/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../wsrp/src/generated">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../registration/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../widget/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../workflow/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../search/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../core-samples/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ <packageset dir="../core-search/src/main">
+ <exclude name="org/jboss/portal/test/**"/>
+ </packageset>
+ </javadoc>
+ </target>
+
+ <!-- create the thirdparty folder from items in the repository -->
+ <!-- then generate a new libraries.ent file and include it in -->
+ <!-- the build -->
+ <target name="createthirdparty" unless="inhibit.downloads"
+ depends="check.inhibit.downloads">
+ <ant antfile="build-thirdparty.xml"
target="generate-lib-file"/>
+ </target>
+
+ <!-- check if thirdparty libraries are to be downloaded -->
+ <target name="check.inhibit.downloads">
+ <condition property="inhibit.downloads">
+ <or>
+ <uptodate property="dependencies.current"
+ srcfile="build-thirdparty.xml"
+ targetfile="../thirdparty/libraries.ent"/>
+ <istrue value="${nodownload}"/>
+ </or>
+ </condition>
+ </target>
+
+</project>
Property changes on: modules/web/trunk/build/build.xml
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/distrib.xml
===================================================================
--- modules/web/trunk/build/distrib.xml (rev 0)
+++ modules/web/trunk/build/distrib.xml 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,398 @@
+<project default="main" name="JBoss Portal">
+
+ <property name="source.dir"
value="../../jboss-portal-2.6"/>
+ <property name="docs.dir" value="${source.dir}-docs"/>
+ <property name="release.version" value="2.6.1.GA"/>
+
+ <!-- -->
+ <property name="portal.release.normal.name"
value="jboss-portal-${release.version}"/>
+ <property name="portal.release.ha.name"
value="jboss-portal-ha-${release.version}"/>
+
+ <!-- -->
+ <property name="portal.build.src"
value="output/${portal.release.normal.name}-src"/>
+ <property name="portal.build.normal.bin"
value="output/${portal.release.normal.name}"/>
+ <property name="portal.build.ha.bin"
value="output/${portal.release.ha.name}"/>
+ <property name="portal.build.normal.bundled"
value="output/${portal.release.normal.name}-bundled"/>
+ <property name="portal.build.ha.bundled"
value="output/${portal.release.ha.name}-bundled"/>
+
+ <property environment="env"/>
+
+ <target name="init" unless="jboss.home">
+ <property name="jboss.home" value="${env.JBOSS_HOME}"/>
+ <echo message="Using JBoss install from $JBOSS_HOME:
${jboss.home}"/>
+ </target>
+
+ <!--
+ <property name="forums.release.name"
value="jboss-forums-${release.version}"/>
+ <property name="forums.build.bin"
value="output/${forums.release.name}"/>
+ <property name="forums.build.src"
value="output/${forums.release.name}-src"/>
+ -->
+ <!-- Licenses -->
+ <target name="licenses">
+ <fileset id="thirdparty-licenses"
dir="../thirdparty/licenses">
+ <include name="antlr.txt"/>
+ <include name="apache-2.0.txt"/>
+ <include name="bsd.txt"/>
+ <include name="cddl.txt"/>
+ <include name="cpl-1.0/txt"/>
+ <include name="day-jcr.txt"/>
+ <include name="dom4j.txt"/>
+ <include name="ehcache.txt"/>
+ <include name="gpl.txt"/>
+ <include name="hsqldb.txt"/>
+ <include name="httpunit.txt"/>
+ <include name="ironsmith.txt"/>
+ <include name="lgpl.txt"/>
+ <include name="nekohtml.txt"/>
+ <include name="oswego.txt"/>
+ <include name="public-domain.txt"/>
+ <include name="slf4j.txt"/>
+ <include name="sun-jaf.txt"/>
+ <include name="sun-javamail.txt"/>
+ <include name="xdoclet.txt"/>
+ </fileset>
+ <mkdir dir="output/docs/licenses"/>
+ <concat destfile="output/docs/licenses/thirdparty-licenses.txt">
+ <fileset refid="thirdparty-licenses"/>
+ </concat>
+ <copy todir="output/docs/licenses">
+ <fileset refid="thirdparty-licenses"/>
+ <fileset dir="licences" includes="JBossEULA.txt"/>
+ </copy>
+ </target>
+
+ <!-- Normal build -->
+ <target name="_normal.build" depends="init"
unless="normal.build.done">
+ <ant dir="${source.dir}/build" antfile="build.xml"/>
+
+ <!-- to prevent building several times -->
+ <property name="normal.build.done" value="true"/>
+ </target>
+
+ <!-- Build JBoss Portal artifacts -->
+ <target name="source.build" depends="_normal.build">
+ <!-- HA specific targets -->
+ <ant dir="${source.dir}/core" antfile="build.xml"
target="output-ha"/>
+ <ant dir="${source.dir}/core-cms" antfile="build.xml"
target="output-ha"/>
+
+ <!-- Datasource files -->
+ <ant dir="${source.dir}/core" antfile="build.xml"
target="datasource">
+ <!-- Hack because invoking the datasource generation from another build file
replace ${/} -->
+ <property name="/" value="${/}"/>
+ </ant>
+
+ <ant dir="${source.dir}/wsrp" antfile="build.xml"
target="output"/>
+ <ant dir="${source.dir}/wsrp" antfile="build.xml"
target="explode"/>
+ </target>
+
+ <!-- Build JBoss Portal documentation -->
+ <target name="doc.build" depends="_normal.build"
unless="no-doc">
+ <ant dir="${docs.dir}/referenceGuide"
antfile="build.xml"/>
+ <ant dir="${docs.dir}/userGuide" antfile="build.xml"/>
+ <ant dir="${docs.dir}/quickstartuser"
antfile="build.xml"/>
+ </target>
+
+ <!-- Build JBoss Portal -->
+ <target name="build" depends="source.build,doc.build"/>
+
+
+ <!--<macrodef name="package-doc">
+ <attribute name="todir"/>
+ <sequential>
+ <mkdir dir="${todir}"/>
+ <mkdir dir="${todir}/referenceGuide"/>
+ <copy todir="${todir}/referenceGuide">
+ <fileset dir="${docs.dir}/referenceGuide/build/en/"/>
+ </copy>
+ <mkdir dir="${todir}/userGuide"/>
+ <copy todir="${todir}/userGuide">
+ <fileset dir="${docs.dir}/userGuide/build/en/"/>
+ </copy>
+ <mkdir dir="${todir}/quickstartuser"/>
+ <copy todir="${todir}/quickstartuser">
+ <fileset dir="${docs.dir}/quickstartuser/build/en/"/>
+ </copy>
+ </sequential>
+ </macrodef>-->
+
+ <target name="package-doc">
+ <sequential>
+ <mkdir dir="${todir}"/>
+ <mkdir dir="${todir}/referenceGuide"/>
+ <copy todir="${todir}/referenceGuide">
+ <fileset dir="${docs.dir}/referenceGuide/build/en/"/>
+ </copy>
+ <mkdir dir="${todir}/userGuide"/>
+ <copy todir="${todir}/userGuide">
+ <fileset dir="${docs.dir}/userGuide/build/en/"/>
+ </copy>
+ <mkdir dir="${todir}/quickstartuser"/>
+ <copy todir="${todir}/quickstartuser">
+ <fileset dir="${docs.dir}/quickstartuser/build/en/"/>
+ </copy>
+ </sequential>
+ </target>
+
+ <target name="package-ds">
+ <sequential>
+ <mkdir dir="${todir}"/>
+ <copy todir="${todir}">
+ <fileset dir="${source.dir}/core/output/resources/setup"
includes="portal-*-ds.xml"/>
+ </copy>
+ </sequential>
+ </target>
+
+ <target name="package-samples">
+ <sequential>
+ <mkdir dir="${todir}"/>
+ <copy todir="${todir}">
+ <fileset dir="${source.dir}/core-samples/output/resources"
includes="portal-basic-samples.sar/**"/>
+ </copy>
+ <copy file="${docs.dir}/readmeFiles/samples-readme.txt"
tofile="${todir}/readme.txt"/>
+ </sequential>
+ </target>
+
+ <target name="patch-log4j">
+ <patch
patchfile="${source.dir}/build/etc/resources/jboss-log4j.xml.diff"
+ originalfile="${todir}/conf/jboss-log4j.xml"
strip="1"/>
+ </target>
+
+ <!-- use -Dno-doc=true if you simply want jboss-portal.sar without licenses
etc-->
+ <target name="package-bin" unless="no-doc">
+ <sequential>
+ <mkdir dir="${todir}"/>
+ <antcall target="package-doc">
+ <param name="todir" value="${todir}/docs"/>
+ </antcall>
+ <antcall target="package-ds">
+ <param name="todir" value="${todir}/setup"/>
+ </antcall>
+ <antcall target="package-samples">
+ <param name="todir" value="${todir}/samples"/>
+ </antcall>
+ <copy file="${docs.dir}/readmeFiles/jboss-portal-bin.README"
todir="${todir}"/>
+ <copy todir="${todir}/docs/portal/licenses">
+ <fileset dir="output/docs/licenses"/>
+ </copy>
+ </sequential>
+ </target>
+
+ <target name="package-bundled" unless="no-doc">
+ <sequential>
+ <mkdir dir="${todir}"/>
+ <antcall target="package-doc">
+ <param name="todir" value="${todir}/docs/portal"/>
+ </antcall>
+ <antcall target="package-ds">
+ <param name="todir" value="${todir}/setup"/>
+ </antcall>
+ <antcall target="package-samples">
+ <param name="todir" value="${todir}/samples"/>
+ </antcall>
+ <copy file="${docs.dir}/readmeFiles/jboss-portal-bin.README"
todir="${todir}"/>
+ <copy todir="${todir}/docs/portal/licenses">
+ <fileset dir="output/docs/licenses"/>
+ </copy>
+ </sequential>
+ </target>
+
+ <!-- -->
+ <target name="package">
+
+ <!-- Create the output directory -->
+ <mkdir dir="output"/>
+
+ <!--
+ | JBoss Portal source distribution
+ -->
+
+ <mkdir dir="${portal.build.src}"/>
+ <antcall target="package-doc">
+ <param name="todir"
value="${portal.build.src}/docs"/>
+ </antcall>
+ <copy file="${docs.dir}/readmeFiles/jboss-portal-src.README"
todir="${portal.build.src}"/>
+ <copy todir="${portal.build.src}">
+ <fileset dir="${source.dir}" includes="**/*"
+
excludes="*/output/**,**/CVS/*,**/build.log,build/local.properties,forums/**,thirdparty/**"/>
+ </copy>
+ <copy todir="${portal.build.src}/docs/portal/licenses">
+ <fileset dir="output/docs/licenses"/>
+ </copy>
+ <fixcrlf srcdir="${portal.build.src}" includes="**/*.sh"
eol="lf" eof="remove"/>
+ <fixcrlf srcdir="${portal.build.src}" includes="**/*.bat"
eol="crlf"/>
+
+ <!--
+ | JBoss Portal binaries distribution
+ -->
+
+ <antcall target="package-normal"/>
+ <antcall target="package-ha"/>
+ <antcall target="package-normal-bundled"/>
+ <antcall target="package-ha-bundled"/>
+ </target>
+
+ <!--
+ | JBoss Portal binary distribution
+ -->
+
+ <target name="package-normal" description="package
jboss-portal.sar">
+ <mkdir dir="${portal.build.normal.bin}"/>
+ <antcall target="package-bin">
+ <param name="todir"
value="${portal.build.normal.bin}"/>
+ </antcall>
+ <copy todir="${portal.build.normal.bin}/jboss-portal.sar">
+ <fileset
dir="${source.dir}/core/output/resources/jboss-portal.sar"/>
+ </copy>
+ <copy
todir="${portal.build.normal.bin}/jboss-portal.sar/portal-cms.sar">
+ <fileset
dir="${source.dir}/core-cms/output/resources/portal-cms.sar"
includes="**"/>
+ </copy>
+ <copy todir="${portal.build.normal.bin}/jboss-portal.sar">
+ <fileset dir="${source.dir}/widget/output/resources"
includes="widget.war/**"/>
+ <fileset dir="${source.dir}/core-management/output/resources"
includes="portal-management.sar/**"/>
+ <fileset dir="${source.dir}/core-admin/output/resources"
includes="portal-admin.sar/**"/>
+ </copy>
+ <copy todir="${portal.build.normal.bin}/jboss-portal.sar/samples">
+ <fileset dir="${source.dir}/core-samples/output/resources"
includes="portal-jsp-samples.war/**"/>
+ <fileset dir="${source.dir}/core-samples/output/resources"
includes="portal-news-samples.war/**"/>
+ <fileset dir="${source.dir}/core-samples/output/resources"
includes="portal-weather-samples.war/**"/>
+ </copy>
+ <mkdir
dir="${portal.build.normal.bin}/jboss-portal.sar/portal-wsrp.sar"/>
+ <copy
todir="${portal.build.normal.bin}/jboss-portal.sar/portal-wsrp.sar">
+ <fileset
dir="${source.dir}/wsrp/output/lib/portal-wsrp-exploded.sar"/>
+ </copy>
+ </target>
+
+ <!--
+ | JBoss Portal ha binaries distribution
+ -->
+ <target name="package-ha" description="package
jboss-portal-ha.sar">
+ <mkdir dir="${portal.build.ha.bin}"/>
+ <antcall target="package-bin">
+ <param name="todir" value="${portal.build.ha.bin}"/>
+ </antcall>
+ <copy todir="${portal.build.ha.bin}/jboss-portal-ha.sar">
+ <fileset
dir="${source.dir}/core/output/resources/jboss-portal-ha.sar"/>
+ </copy>
+ <copy
todir="${portal.build.ha.bin}/jboss-portal-ha.sar/portal-cms.sar">
+ <fileset
dir="${source.dir}/core-cms/output/resources/portal-cms-ha.sar"
includes="**"/>
+ </copy>
+ <copy todir="${portal.build.ha.bin}/jboss-portal-ha.sar">
+ <fileset dir="${source.dir}/widget/output/resources"
includes="widget.war/**"/>
+ <fileset dir="${source.dir}/core-management/output/resources"
includes="portal-management.sar/**"/>
+ <fileset dir="${source.dir}/core-admin/output/resources"
includes="portal-admin.sar/**"/>
+ </copy>
+ <copy todir="${portal.build.ha.bin}/jboss-portal-ha.sar/samples">
+ <fileset dir="${source.dir}/core-samples/output/resources"
includes="portal-jsp-samples.war/**"/>
+ <fileset dir="${source.dir}/core-samples/output/resources"
includes="portal-news-samples.war/**"/>
+ <fileset dir="${source.dir}/core-samples/output/resources"
includes="portal-weather-samples.war/**"/>
+ </copy>
+ <mkdir
dir="${portal.build.ha.bin}/jboss-portal-ha.sar/portal-wsrp.sar"/>
+ <copy
todir="${portal.build.ha.bin}/jboss-portal-ha.sar/portal-wsrp.sar">
+ <fileset
dir="${source.dir}/wsrp/output/lib/portal-wsrp-exploded.sar"/>
+ </copy>
+ <copy file="${docs.dir}/readmeFiles/jboss-portal-ha-bin.README"
todir="${portal.build.ha.bin}"/>
+ </target>
+
+
+ <!--
+ | JBoss Portal bundled distribution
+ -->
+ <target name="package-normal-bundled" depends="package-normal"
if="jboss.home"
+ description="package jboss-portal bundled with JBoss AS">
+ <mkdir dir="${portal.build.normal.bundled}"/>
+ <antcall target="package-bundled">
+ <param name="todir"
value="${portal.build.normal.bundled}"/>
+ </antcall>
+ <copy
todir="${portal.build.normal.bundled}/server/default/deploy/jboss-portal.sar">
+ <fileset dir="${portal.build.normal.bin}/jboss-portal.sar"/>
+ </copy>
+ <copy
todir="${portal.build.normal.bundled}/server/default/deploy">
+ <fileset dir="${portal.build.normal.bin}/setup"
includes="portal-hsqldb-ds.xml"/>
+ </copy>
+ <copy todir="${portal.build.normal.bundled}">
+ <fileset dir="${jboss.home}">
+ <include name="bin/**"/>
+ <include name="client/**"/>
+ <include name="docs/**"/>
+ <include name="lib/**"/>
+ <include name="server/default/**"/>
+ </fileset>
+ </copy>
+ <copy file="${docs.dir}/readmeFiles/jboss-portal-bin.README"
todir="${portal.build.normal.bundled}"/>
+ <antcall target="patch-log4j">
+ <param name="todir"
value="${portal.build.normal.bundled}/server/default"/>
+ </antcall>
+ </target>
+
+ <!--
+ | JBoss Portal ha bundled distribution
+ -->
+
+ <target name="package-ha-bundled" depends="package-ha"
if="jboss.home"
+ description="package jboss-portal-ha bundled with JBoss AS">
+ <mkdir dir="${portal.build.ha.bundled}"/>
+ <antcall target="package-bundled">
+ <param name="todir"
value="${portal.build.ha.bundled}"/>
+ </antcall>
+ <copy
todir="${portal.build.ha.bundled}/server/all/deploy/jboss-portal-ha.sar">
+ <fileset dir="${portal.build.ha.bin}/jboss-portal-ha.sar"/>
+ </copy>
+ <copy todir="${portal.build.ha.bundled}">
+ <fileset dir="${jboss.home}">
+ <include name="bin/**"/>
+ <include name="client/**"/>
+ <include name="docs/**"/>
+ <include name="lib/**"/>
+ <include name="server/all/**"/>
+ </fileset>
+ </copy>
+ <copy file="${docs.dir}/readmeFiles/jboss-portal-ha-bin.README"
todir="${portal.build.ha.bundled}"/>
+ <antcall target="patch-log4j">
+ <param name="todir"
value="${portal.build.normal.bundled}/server/default"/>
+ </antcall>
+
+ </target>
+
+ <!-- Create packages -->
+ <target name="zip">
+
+ <tar destfile="${portal.build.src}.tar.gz"
+ compression="gzip">
+ <tarfileset prefix="${portal.release.normal.name}-src"
filemode="775" dir="${portal.build.src}"/>
+ </tar>
+ <checksum file="${portal.build.src}.tar.gz"/>
+
+ <zip destfile="${portal.build.normal.bin}.zip">
+ <zipfileset prefix="${portal.release.normal.name}"
dir="${portal.build.normal.bin}"/>
+ </zip>
+ <checksum file="${portal.build.normal.bin}.zip"/>
+
+ <zip destfile="${portal.build.ha.bin}.zip">
+ <zipfileset prefix="${portal.release.ha.name}"
dir="${portal.build.ha.bin}"/>
+ </zip>
+ <checksum file="${portal.build.ha.bin}.zip"/>
+
+ <zip destfile="${portal.build.normal.bundled}.zip">
+ <zipfileset prefix="${portal.release.normal.name}"
dir="${portal.build.normal.bundled}"/>
+ </zip>
+ <checksum file="${portal.build.normal.bin}.zip"/>
+
+ <zip destfile="${portal.build.ha.bundled}.zip">
+ <zipfileset prefix="${portal.release.ha.name}"
dir="${portal.build.ha.bundled}"/>
+ </zip>
+ <checksum file="${portal.build.ha.bundled}.zip"/>
+
+ <!--
+ <tar destfile="${forums.build.src}.tar.gz"
+ compression="gzip">
+ <tarfileset dir="output/${forums.release.name}-src"
+ prefix="${forums.release.name}-src"/>
+ </tar>
+ <zip destfile="${forums.build.bin}.zip"
+ basedir="output/${forums.release.name}"/>
+ -->
+ </target>
+
+ <!-- Build and compress everything -->
+ <target name="main" depends="licenses,build,package,zip"
description="do everything - build source, doc, distro"/>
+</project>
Property changes on: modules/web/trunk/build/distrib.xml
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/etc/clustered.properties
===================================================================
--- modules/web/trunk/build/etc/clustered.properties (rev 0)
+++ modules/web/trunk/build/etc/clustered.properties 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,10 @@
+portal.single=false
+portal.single.xml.open=<!--
+portal.single.xml.close=-->
+portal.clustered.xml.open=
+portal.clustered.xml.close=
+portal.web.predistributable=-->
+portal.web.postdistributable=<!--
+portal.cache.config=replicated
+portal.hibernate.cache.usage=transactional
+cms.service.code=org.jboss.portal.cms.impl.jcr.ha.HAJCRCMS
Property changes on: modules/web/trunk/build/etc/clustered.properties
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/etc/hsqldb.properties
===================================================================
--- modules/web/trunk/build/etc/hsqldb.properties (rev 0)
+++ modules/web/trunk/build/etc/hsqldb.properties 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,5 @@
+# the cdata section is a trick because the empty chars has issues when using filtered
copy
+portal.datasource.driver=org.hsqldb.jdbcDriver
+portal.datasource.url=jdbc:hsqldb:${jboss.server.data.dir}${/}portal${/}hypersonic${/}database
+portal.datasource.username=sa
+portal.datasource.password=<![CDATA[]]>
Property changes on: modules/web/trunk/build/etc/hsqldb.properties
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/etc/local.properties-example
===================================================================
--- modules/web/trunk/build/etc/local.properties-example (rev 0)
+++ modules/web/trunk/build/etc/local.properties-example 2007-08-14 10:47:21 UTC (rev
7913)
@@ -0,0 +1,48 @@
+### ====================================================================== ###
+## ##
+## Local project properties. ##
+## ##
+## Define properties that are local to your environment here. This ##
+## file (local.properties) should not be checked in. Modify the ##
+## example to affect all users. ##
+## ##
+### ====================================================================== ###
+
+### General compiler configuration ###
+
+#build.compiler=jikes
+#build.warnings=true
+#build.pedantic=true
+#javac.depend=on
+
+### Javac/Jikes compiler configuration ###
+
+javac.optimize=off
+javac.debug=on
+javac.deprecation=on
+
+### Enable verbose build output ###
+
+#init.verbose=true
+
+### JavaDoc ###
+#docs-javadocs.disable=true
+
+### Do we build xdoclet or get it from thirdparty ###
+### uncomment for thirdparty: comment to use xdoclet module.
+### To use xdoclet module also uncomment the xdoclet line in groups in build/build.xml
+#xdoclet.xdoclet.root=${project.root}/thirdparty/xdoclet
+
+# Portal database, for now : hsqldb, mysql, postgresql are the possible values
+portal.database=mysql
+# The datasource name used in the JNDI binding
+portal.datasource.name=PortalDS
+# Context root for the portal main servlet
+portal.web.context-root=/portal
+# JBoss server/<xxx> directory for JBoss Portal, ie: $JBOSS_HOME/server/default
+portal.deploy.dir=default/deploy
+portal-ha.deploy.dir=all/deploy
+# Show SQL or not
+portal.sql.show=false
+# Uncomment if you want to use a specific JBoss home path otherwise the build will use
the JBOSS_HOME env variable
+#jboss.home=
Property changes on: modules/web/trunk/build/etc/local.properties-example
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/etc/mysql.properties
===================================================================
--- modules/web/trunk/build/etc/mysql.properties (rev 0)
+++ modules/web/trunk/build/etc/mysql.properties 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,4 @@
+portal.datasource.driver=org.gjt.mm.mysql.Driver
+portal.datasource.url=jdbc:mysql://localhost:3306/jbossportal?useServerPrepStmts=false
+portal.datasource.username=portal
+portal.datasource.password=portalpassword
Property changes on: modules/web/trunk/build/etc/mysql.properties
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/etc/mysql5.properties
===================================================================
--- modules/web/trunk/build/etc/mysql5.properties (rev 0)
+++ modules/web/trunk/build/etc/mysql5.properties 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,4 @@
+portal.datasource.driver=com.mysql.jdbc.Driver
+portal.datasource.url=jdbc:mysql://localhost:3306/jbossportal?useServerPrepStmts=false&jdbcCompliantTruncation=false
+portal.datasource.username=portal
+portal.datasource.password=portalpassword
Property changes on: modules/web/trunk/build/etc/mysql5.properties
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/etc/oracle.properties
===================================================================
--- modules/web/trunk/build/etc/oracle.properties (rev 0)
+++ modules/web/trunk/build/etc/oracle.properties 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,4 @@
+portal.datasource.driver=oracle.jdbc.driver.OracleDriver
+portal.datasource.url=jdbc:oracle:thin:SYSTEM/password@localhost:1521:orcl
+portal.datasource.username=SYSTEM
+portal.datasource.password=password
Property changes on: modules/web/trunk/build/etc/oracle.properties
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/etc/oracle10gXE.properties
===================================================================
--- modules/web/trunk/build/etc/oracle10gXE.properties (rev 0)
+++ modules/web/trunk/build/etc/oracle10gXE.properties 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,4 @@
+portal.datasource.driver=oracle.jdbc.driver.OracleDriver
+portal.datasource.url=jdbc:oracle:thin:@localhost:1521:xe
+portal.datasource.username=portal
+portal.datasource.password=portalpassword
Property changes on: modules/web/trunk/build/etc/oracle10gXE.properties
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/etc/postgresql.properties
===================================================================
--- modules/web/trunk/build/etc/postgresql.properties (rev 0)
+++ modules/web/trunk/build/etc/postgresql.properties 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,5 @@
+portal.datasource.driver=org.postgresql.Driver
+portal.datasource.url=jdbc:postgresql:jbossportal
+portal.datasource.username=portal
+portal.datasource.password=portalpassword
+
Property changes on: modules/web/trunk/build/etc/postgresql.properties
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/etc/resources/jboss-log4j.xml.diff
===================================================================
--- modules/web/trunk/build/etc/resources/jboss-log4j.xml.diff
(rev 0)
+++ modules/web/trunk/build/etc/resources/jboss-log4j.xml.diff 2007-08-14 10:47:21 UTC
(rev 7913)
@@ -0,0 +1,22 @@
+diff -u conf.orig/jboss-log4j.xml conf/jboss-log4j.xml
+--- conf.orig/jboss-log4j.xml 2007-07-16 23:56:32.000000000 +0200
++++ conf/jboss-log4j.xml 2007-07-17 09:26:16.000000000 +0200
+@@ -164,6 +164,16 @@
+ <priority value="INFO"/>
+ </category>
+
++ <!-- Hibernate got a bit too verbose in JBoss AS 4.2.1.GA -->
++ <category name="org.hibernate.engine.loading.LoadContexts">
++ <priority value="ERROR"/>
++ </category>
++
++ <!-- JBoss Cache likes to talk a lot -->
++ <category
name="org.jboss.cache.interceptors.CacheLoaderInterceptor">
++ <priority value="ERROR"/>
++ </category>
++
+ <!-- Limit the org.jboss.serial (jboss-serialization) to INFO as its DEBUG is
verbose -->
+ <category name="org.jboss.serial">
+ <priority value="INFO"/>
+Common subdirectories: conf.orig/props and conf/props
+Common subdirectories: conf.orig/xmdesc and conf/xmdesc
Added: modules/web/trunk/build/etc/single.properties
===================================================================
--- modules/web/trunk/build/etc/single.properties (rev 0)
+++ modules/web/trunk/build/etc/single.properties 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,10 @@
+portal.single=true
+portal.single.xml.open=
+portal.single.xml.close=
+portal.clustered.xml.open=<!--
+portal.clustered.xml.close=-->
+portal.web.predistributable=\u0020Comment/Uncomment to enable portal session replication
+portal.web.postdistributable=
+portal.cache.config=local
+portal.hibernate.cache.usage=read-write
+cms.service.code=org.jboss.portal.cms.impl.jcr.JCRCMS
\ No newline at end of file
Property changes on: modules/web/trunk/build/etc/single.properties
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/etc/sqlserver.properties
===================================================================
--- modules/web/trunk/build/etc/sqlserver.properties (rev 0)
+++ modules/web/trunk/build/etc/sqlserver.properties 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,7 @@
+# This file uses a URL for the jTDS Type 4 JDBC driver (
http://jtds.sourceforge.net/)
+# Documentation for the driver URL can be found at
(
http://jtds.sourceforge.net/faq.html#urlFormat)
+hibernate.dialect=net.sf.hibernate.dialect.SQLServerDialect
+portal.datasource.driver=net.sourceforge.jtds.jdbc.Driver
+portal.datasource.url=jdbc:jtds:sqlserver://localhost:1433;tds=8.0;lastupdatecount=true
+portal.datasource.username=portal
+portal.datasource.password=portalpassword
Property changes on: modules/web/trunk/build/etc/sqlserver.properties
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/ide/eclipse/3.1/config/jboss-format.xml
===================================================================
--- modules/web/trunk/build/ide/eclipse/3.1/config/jboss-format.xml
(rev 0)
+++ modules/web/trunk/build/ide/eclipse/3.1/config/jboss-format.xml 2007-08-14 10:47:21
UTC (rev 7913)
@@ -0,0 +1,244 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<profiles version="8">
+<profile name="JBoss" version="8">
+<setting id="org.eclipse.jdt.core.formatter.align_type_members_on_columns"
value="false"/>
+<setting
id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression"
value="16"/>
+<setting
id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant"
value="16"/>
+<setting
id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call"
value="16"/>
+<setting
id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation"
value="16"/>
+<setting
id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression"
value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_binary_expression"
value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_compact_if"
value="52"/>
+<setting
id="org.eclipse.jdt.core.formatter.alignment_for_conditional_expression"
value="48"/>
+<setting
id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer"
value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.alignment_for_multiple_fields"
value="16"/>
+<setting
id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration"
value="16"/>
+<setting
id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration"
value="16"/>
+<setting
id="org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation"
value="16"/>
+<setting
id="org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration"
value="64"/>
+<setting
id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration"
value="16"/>
+<setting
id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration"
value="64"/>
+<setting
id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration"
value="16"/>
+<setting
id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration"
value="16"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_imports"
value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_package"
value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_field"
value="1"/>
+<setting
id="org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration"
value="0"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_imports"
value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_member_type"
value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_method"
value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk"
value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_package"
value="0"/>
+<setting
id="org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations"
value="1"/>
+<setting
id="org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration"
value="end_of_line"/>
+<setting
id="org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration"
value="next_line"/>
+<setting
id="org.eclipse.jdt.core.formatter.brace_position_for_array_initializer"
value="next_line"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block"
value="next_line"/>
+<setting
id="org.eclipse.jdt.core.formatter.brace_position_for_block_in_case"
value="end_of_line"/>
+<setting
id="org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration"
value="next_line"/>
+<setting
id="org.eclipse.jdt.core.formatter.brace_position_for_enum_constant"
value="end_of_line"/>
+<setting
id="org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration"
value="end_of_line"/>
+<setting
id="org.eclipse.jdt.core.formatter.brace_position_for_method_declaration"
value="next_line"/>
+<setting id="org.eclipse.jdt.core.formatter.brace_position_for_switch"
value="next_line"/>
+<setting
id="org.eclipse.jdt.core.formatter.brace_position_for_type_declaration"
value="next_line"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines"
value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.format_comments"
value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.format_header"
value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.format_html"
value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.format_source_code"
value="true"/>
+<setting
id="org.eclipse.jdt.core.formatter.comment.indent_parameter_description"
value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.indent_root_tags"
value="true"/>
+<setting
id="org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter"
value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.comment.line_length"
value="80"/>
+<setting id="org.eclipse.jdt.core.formatter.compact_else_if"
value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.continuation_indentation"
value="2"/>
+<setting
id="org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer"
value="2"/>
+<setting
id="org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line"
value="false"/>
+<setting
id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header"
value="true"/>
+<setting
id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header"
value="true"/>
+<setting
id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header"
value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases"
value="true"/>
+<setting
id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_block"
value="true"/>
+<setting
id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_body"
value="true"/>
+<setting
id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases"
value="true"/>
+<setting
id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch"
value="true"/>
+<setting id="org.eclipse.jdt.core.formatter.indentation.size"
value="4"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration"
value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_binary_operator"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional"
value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters"
value="insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_after_ellipsis"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_after_unary_operator"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_binary_operator"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters"
value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_ellipsis"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional"
value="insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard"
value="do not insert"/>
+<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_before_unary_operator"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation"
value="do not insert"/>
+<setting
id="org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line"
value="false"/>
+<setting
id="org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line"
value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line"
value="false"/>
+<setting
id="org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line"
value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.lineSplit"
value="120"/>
+<setting
id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body"
value="0"/>
+<setting
id="org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve"
value="1"/>
+<setting id="org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line"
value="false"/>
+<setting id="org.eclipse.jdt.core.formatter.tabulation.char"
value="space"/>
+<setting id="org.eclipse.jdt.core.formatter.tabulation.size"
value="3"/>
+</profile>
+</profiles>
Property changes on: modules/web/trunk/build/ide/eclipse/3.1/config/jboss-format.xml
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/ide/eclipse/3.2/team/anonymous-projectSet.psf
===================================================================
--- modules/web/trunk/build/ide/eclipse/3.2/team/anonymous-projectSet.psf
(rev 0)
+++ modules/web/trunk/build/ide/eclipse/3.2/team/anonymous-projectSet.psf 2007-08-14
10:47:21 UTC (rev 7913)
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<psf version="2.0">
+ <provider id="org.tigris.subversion.subclipse.core.svnnature">
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/api,api...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/bridge,...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/build,b...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/cms,cms...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/common,...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/core,co...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/core-ad...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/core-cm...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/core-ma...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/core-sa...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/core-se...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/faces,f...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/format,...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/identit...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/jems,je...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/portlet...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/portlet...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/registr...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/samples...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/search,...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/securit...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/server,...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/test,te...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/testsui...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/theme,t...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/tools,t...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/workflo...
+ <project
reference="0.9.3,http://anonsvn.jboss.org/repos/portal/trunk/wsrp,ws...
+ </provider>
+</psf>
\ No newline at end of file
Added: modules/web/trunk/build/ide/eclipse/3.2/team/commiter-projectSet.psf
===================================================================
--- modules/web/trunk/build/ide/eclipse/3.2/team/commiter-projectSet.psf
(rev 0)
+++ modules/web/trunk/build/ide/eclipse/3.2/team/commiter-projectSet.psf 2007-08-14
10:47:21 UTC (rev 7913)
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<psf version="2.0">
+ <provider id="org.tigris.subversion.subclipse.core.svnnature">
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/api,api&qu...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/bridge,bri...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/build,buil...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/cms,cms&qu...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/common,com...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/core,core&...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/core-admin...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/core-cms,c...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/core-manag...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/core-sampl...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/core-searc...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/faces,face...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/format,for...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/identity,i...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/jems,jems&...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/portlet,po...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/portlet-fe...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/registrati...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/samples,sa...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/search,sea...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/security,s...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/server,ser...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/test,test&...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/testsuite,...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/theme,them...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/tools,tool...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/workflow,w...
+ <project
reference="0.9.3,https://svn.jboss.org/repos/portal/trunk/wsrp,wsrp&...
+ </provider>
+</psf>
Added: modules/web/trunk/build/ide/intellij/idea60/config/codestyles/jboss.xml
===================================================================
--- modules/web/trunk/build/ide/intellij/idea60/config/codestyles/jboss.xml
(rev 0)
+++ modules/web/trunk/build/ide/intellij/idea60/config/codestyles/jboss.xml 2007-08-14
10:47:21 UTC (rev 7913)
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<code_scheme name="jboss">
+ <option name="JAVA_INDENT_OPTIONS">
+ <value>
+ <option name="INDENT_SIZE" value="3" />
+ <option name="CONTINUATION_INDENT_SIZE" value="3" />
+ <option name="TAB_SIZE" value="3" />
+ <option name="USE_TAB_CHARACTER" value="false" />
+ <option name="SMART_TABS" value="false" />
+ <option name="LABEL_INDENT_SIZE" value="0" />
+ <option name="LABEL_INDENT_ABSOLUTE" value="false" />
+ </value>
+ </option>
+ <option name="BRACE_STYLE" value="2" />
+ <option name="CLASS_BRACE_STYLE" value="2" />
+ <option name="METHOD_BRACE_STYLE" value="2" />
+ <option name="ELSE_ON_NEW_LINE" value="true" />
+ <option name="WHILE_ON_NEW_LINE" value="true" />
+ <option name="CATCH_ON_NEW_LINE" value="true" />
+ <option name="FINALLY_ON_NEW_LINE" value="true" />
+ <option name="SPACE_AFTER_TYPE_CAST" value="false" />
+ <option name="CLASS_COUNT_TO_USE_IMPORT_ON_DEMAND" value="5000"
/>
+ <option name="WRAP_COMMENTS" value="true" />
+ <option name="IF_BRACE_FORCE" value="3" />
+ <option name="DOWHILE_BRACE_FORCE" value="3" />
+ <option name="WHILE_BRACE_FORCE" value="3" />
+ <option name="FOR_BRACE_FORCE" value="3" />
+ <option name="JD_DO_NOT_WRAP_ONE_LINE_COMMENTS" value="true"
/>
+ <option name="XML_KEEP_WHITESPACES" value="true" />
+</code_scheme>
+
Property changes on:
modules/web/trunk/build/ide/intellij/idea60/config/codestyles/jboss.xml
___________________________________________________________________
Name: svn:executable
+
Added:
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/StandartTestCasePortlet.java
===================================================================
---
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/StandartTestCasePortlet.java
(rev 0)
+++
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/StandartTestCasePortlet.java 2007-08-14
10:47:21 UTC (rev 7913)
@@ -0,0 +1,128 @@
+/******************************************************************************
+ * JBoss, a division of Red Hat *
+ * Copyright 2006, Red Hat Middleware, LLC, and individual *
+ * contributors as indicated by the @authors tag. See the *
+ * copyright.txt in the distribution for a full listing of *
+ * individual contributors. *
+ * *
+ * This is free software; you can redistribute it and/or modify it *
+ * under the terms of the GNU Lesser General Public License as *
+ * published by the Free Software Foundation; either version 2.1 of *
+ * the License, or (at your option) any later version. *
+ * *
+ * This software is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
+ * Lesser General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Lesser General Public *
+ * License along with this software; if not, write to the Free *
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org. *
+ ******************************************************************************/
+package ${PACKAGE_NAME};
+
+import org.jboss.portal.test.framework.container.server.result.AssertResult;
+import org.jboss.portal.test.framework.container.server.result.InvokeGetResult;
+import org.jboss.portal.test.framework.container.server.result.FailureResult;
+import org.jboss.portal.test.framework.container.server.result.ServerResult;
+import org.jboss.portal.test.framework.container.server.TestContext;
+import org.jboss.portal.test.portlet.AbstractTestPortlet;
+
+
+import javax.portlet.ActionRequest;
+import javax.portlet.ActionResponse;
+import javax.portlet.PortletException;
+import javax.portlet.PortletSecurityException;
+import javax.portlet.RenderRequest;
+import javax.portlet.RenderResponse;
+import javax.portlet.PortletPreferences;
+import javax.portlet.ValidatorException;
+import javax.portlet.PortletURL;
+import java.io.IOException;
+
+/**
+ * @author <a href="mailto:boleslaw.dawidowicz@jboss.org">Boleslaw
Dawidowicz</a>
+ * @version $Revision: 1951 $
+
+ */
+public class ${NAME} extends AbstractTestPortlet
+{
+
+
+ private AssertResult ares;
+
+ public void doProcessAction(final ActionRequest request, ActionResponse response)
throws PortletException, PortletSecurityException, IOException
+ {
+ int requestCount = TestContext.getCurrentRequestCount();
+ if (ares == null)
+ {
+ if (requestCount == 1)
+ {
+ ares = new AssertResult();
+ ares.execute(new AssertResult.Test()
+ {
+ public void run() throws Exception
+ {
+
+ }
+ });
+ }
+ }
+ else if (!ares.isFailed())
+ {
+ if (requestCount == 2)
+ {
+ ares.execute(new AssertResult.Test()
+ {
+ public void run() throws Exception
+ {
+
+ }
+ });
+ }
+ }
+ }
+
+ public void doRender(final RenderRequest request, RenderResponse response) throws
PortletException, PortletSecurityException, IOException
+ {
+ ServerResult result = null;
+
+ int requestCount = TestContext.getCurrentRequestCount();
+ if (ares == null)
+ {
+ if (requestCount == 0)
+ {
+ PortletURL url = response.createActionURL();
+ result = new InvokeGetResult(url.toString());
+ AbstractTestPortlet.marshall(result, response,
TestContext.getCurrentTestCaseId());
+ }
+ else
+ {
+ AbstractTestPortlet.marshall(new FailureResult("The assert result was
expected to be not null"), response, TestContext.getCurrentTestCaseId());
+ }
+ }
+ else if (ares.isFailed())
+ {
+ AbstractTestPortlet.marshall(ares, response,
TestContext.getCurrentTestCaseId());
+ }
+ else
+ {
+ if (requestCount == 0)
+ {
+ AbstractTestPortlet.marshall(new FailureResult("The assert result was
expected to be not null"), response, TestContext.getCurrentTestCaseId());
+ }
+ else if (requestCount == 1)
+ {
+ PortletURL url = response.createActionURL();
+ result = new InvokeGetResult(url.toString());
+ AbstractTestPortlet.marshall(result, response,
TestContext.getCurrentTestCaseId());
+ }
+ else if (requestCount == 2)
+ {
+ AbstractTestPortlet.marshall(ares, response,
TestContext.getCurrentTestCaseId());
+ }
+ }
+ }
+
+}
Property changes on:
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/StandartTestCasePortlet.java
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/includes/Body
Header.java
===================================================================
--- modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/includes/Body
Header.java (rev 0)
+++ modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/includes/Body
Header.java 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,4 @@
+/**
+ * @author <a href="mailto:julien@jboss.org">Julien Viet</a>
+ * @version $Revision: 630 $
+ */
Property changes on:
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/includes/Body
Header.java
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/includes/File
Header.java
===================================================================
--- modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/includes/File
Header.java (rev 0)
+++ modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/includes/File
Header.java 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,22 @@
+/******************************************************************************
+ * JBoss, a division of Red Hat *
+ * Copyright 2006, Red Hat Middleware, LLC, and individual *
+ * contributors as indicated by the @authors tag. See the *
+ * copyright.txt in the distribution for a full listing of *
+ * individual contributors. *
+ * *
+ * This is free software; you can redistribute it and/or modify it *
+ * under the terms of the GNU Lesser General Public License as *
+ * published by the Free Software Foundation; either version 2.1 of *
+ * the License, or (at your option) any later version. *
+ * *
+ * This software is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
+ * Lesser General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Lesser General Public *
+ * License along with this software; if not, write to the Free *
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org. *
+ ******************************************************************************/
\ No newline at end of file
Property changes on:
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/includes/File
Header.java
___________________________________________________________________
Name: svn:executable
+
Added:
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/AnnotationType.java
===================================================================
---
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/AnnotationType.java
(rev 0)
+++
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/AnnotationType.java 2007-08-14
10:47:21 UTC (rev 7913)
@@ -0,0 +1,5 @@
+#parse("File Header.java")
+package ${PACKAGE_NAME};
+#parse("Body Header.java")
+public @interface ${NAME} {
+}
Property changes on:
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/AnnotationType.java
___________________________________________________________________
Name: svn:executable
+
Added:
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/Class.java
===================================================================
--- modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/Class.java
(rev 0)
+++
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/Class.java 2007-08-14
10:47:21 UTC (rev 7913)
@@ -0,0 +1,5 @@
+#parse("File Header.java")
+package ${PACKAGE_NAME};
+#parse("Body Header.java")
+public class ${NAME} {
+}
Property changes on:
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/Class.java
___________________________________________________________________
Name: svn:executable
+
Added:
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/Enum.java
===================================================================
--- modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/Enum.java
(rev 0)
+++
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/Enum.java 2007-08-14
10:47:21 UTC (rev 7913)
@@ -0,0 +1,5 @@
+#parse("File Header.java")
+package ${PACKAGE_NAME};
+#parse("Body Header.java")
+public enum ${NAME} {
+}
Property changes on:
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/Enum.java
___________________________________________________________________
Name: svn:executable
+
Added:
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/Interface.java
===================================================================
---
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/Interface.java
(rev 0)
+++
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/Interface.java 2007-08-14
10:47:21 UTC (rev 7913)
@@ -0,0 +1,5 @@
+#parse("File Header.java")
+package ${PACKAGE_NAME};
+#parse("Body Header.java")
+public interface ${NAME} {
+}
Property changes on:
modules/web/trunk/build/ide/intellij/idea60/config/fileTemplates/internal/Interface.java
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/ide/intellij/idea60/jboss-portal-web.ipr
===================================================================
--- modules/web/trunk/build/ide/intellij/idea60/jboss-portal-web.ipr
(rev 0)
+++ modules/web/trunk/build/ide/intellij/idea60/jboss-portal-web.ipr 2007-08-14 10:47:21
UTC (rev 7913)
@@ -0,0 +1,464 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4" relativePaths="false">
+ <component name="AntConfiguration">
+ <defaultAnt bundledAnt="true" />
+ </component>
+ <component name="BuildJarProjectSettings">
+ <option name="BUILD_JARS_ON_MAKE" value="false" />
+ </component>
+ <component name="CodeStyleProjectProfileManger">
+ <option name="PROJECT_PROFILE" />
+ <option name="USE_PROJECT_LEVEL_SETTINGS" value="false" />
+ </component>
+ <component name="CodeStyleSettingsManager">
+ <option name="PER_PROJECT_SETTINGS" />
+ <option name="USE_PER_PROJECT_SETTINGS" value="false" />
+ </component>
+ <component name="CompilerConfiguration">
+ <option name="DEFAULT_COMPILER" value="Javac" />
+ <option name="DEPLOY_AFTER_MAKE" value="0" />
+ <resourceExtensions>
+ <entry name=".+\.(properties|xml|html|dtd|tld)" />
+ <entry name=".+\.(gif|png|jpeg|jpg)" />
+ </resourceExtensions>
+ <wildcardResourcePatterns>
+ <entry name="?*.properties" />
+ <entry name="?*.xml" />
+ <entry name="?*.gif" />
+ <entry name="?*.png" />
+ <entry name="?*.jpeg" />
+ <entry name="?*.jpg" />
+ <entry name="?*.html" />
+ <entry name="?*.dtd" />
+ <entry name="?*.tld" />
+ </wildcardResourcePatterns>
+ </component>
+ <component name="DataSourceManagerImpl" />
+ <component name="DependenciesAnalyzeManager">
+ <option name="myForwardDirection" value="false" />
+ </component>
+ <component name="DependencyValidationManager" />
+ <component name="EclipseCompilerSettings">
+ <option name="DEBUGGING_INFO" value="true" />
+ <option name="GENERATE_NO_WARNINGS" value="true" />
+ <option name="DEPRECATION" value="false" />
+ <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+ <option name="MAXIMUM_HEAP_SIZE" value="128" />
+ </component>
+ <component name="EclipseEmbeddedCompilerSettings">
+ <option name="DEBUGGING_INFO" value="true" />
+ <option name="GENERATE_NO_WARNINGS" value="true" />
+ <option name="DEPRECATION" value="false" />
+ <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+ <option name="MAXIMUM_HEAP_SIZE" value="128" />
+ </component>
+ <component name="EntryPointsManager">
+ <entry_points />
+ </component>
+ <component name="ExportToHTMLSettings">
+ <option name="PRINT_LINE_NUMBERS" value="false" />
+ <option name="OPEN_IN_BROWSER" value="false" />
+ <option name="OUTPUT_DIRECTORY" />
+ </component>
+ <component name="GUI Designer component loader factory" />
+ <component name="IdProvider"
IDEtalkID="E2A438D8B6AE84F43587A2210E562521" />
+ <component name="InspectionProjectProfileManager">
+ <option name="PROJECT_PROFILE" value="Project Default" />
+ <option name="USE_PROJECT_LEVEL_SETTINGS" value="false" />
+ <scopes />
+ <profiles>
+ <profile version="1.0" is_locked="false">
+ <option name="myName" value="Project Default" />
+ <option name="myLocal" value="false" />
+ <used_levels>
+ <error>
+ <option name="myName" value="ERROR" />
+ <option name="myVal" value="200" />
+ </error>
+ <warning>
+ <option name="myName" value="WARNING" />
+ <option name="myVal" value="100" />
+ </warning>
+ <information>
+ <option name="myName" value="INFO" />
+ <option name="myVal" value="100" />
+ </information>
+ <server>
+ <option name="myName" value="SERVER PROBLEM" />
+ <option name="myVal" value="100" />
+ </server>
+ </used_levels>
+ </profile>
+ </profiles>
+ </component>
+ <component name="JavacSettings">
+ <option name="DEBUGGING_INFO" value="true" />
+ <option name="GENERATE_NO_WARNINGS" value="false" />
+ <option name="DEPRECATION" value="true" />
+ <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+ <option name="MAXIMUM_HEAP_SIZE" value="128" />
+ </component>
+ <component name="JavadocGenerationManager">
+ <option name="OUTPUT_DIRECTORY" />
+ <option name="OPTION_SCOPE" value="protected" />
+ <option name="OPTION_HIERARCHY" value="true" />
+ <option name="OPTION_NAVIGATOR" value="true" />
+ <option name="OPTION_INDEX" value="true" />
+ <option name="OPTION_SEPARATE_INDEX" value="true" />
+ <option name="OPTION_DOCUMENT_TAG_USE" value="false" />
+ <option name="OPTION_DOCUMENT_TAG_AUTHOR" value="false" />
+ <option name="OPTION_DOCUMENT_TAG_VERSION" value="false"
/>
+ <option name="OPTION_DOCUMENT_TAG_DEPRECATED" value="true"
/>
+ <option name="OPTION_DEPRECATED_LIST" value="true" />
+ <option name="OTHER_OPTIONS" value="" />
+ <option name="HEAP_SIZE" />
+ <option name="LOCALE" />
+ <option name="OPEN_IN_BROWSER" value="true" />
+ </component>
+ <component name="JikesSettings">
+ <option name="JIKES_PATH" value="" />
+ <option name="DEBUGGING_INFO" value="true" />
+ <option name="DEPRECATION" value="true" />
+ <option name="GENERATE_NO_WARNINGS" value="false" />
+ <option name="IS_EMACS_ERRORS_MODE" value="true" />
+ <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+ </component>
+ <component name="LogConsolePreferences">
+ <option name="FILTER_ERRORS" value="false" />
+ <option name="FILTER_WARNINGS" value="false" />
+ <option name="FILTER_INFO" value="true" />
+ <option name="CUSTOM_FILTER" />
+ </component>
+ <component name="Palette2">
+ <group name="Swing">
+ <item class="com.intellij.uiDesigner.HSpacer"
tooltip-text="Horizontal Spacer"
icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false"
auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="1" hsize-policy="6"
anchor="0" fill="1" />
+ </item>
+ <item class="com.intellij.uiDesigner.VSpacer"
tooltip-text="Vertical Spacer"
icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false"
auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="1"
anchor="0" fill="2" />
+ </item>
+ <item class="javax.swing.JPanel"
icon="/com/intellij/uiDesigner/icons/panel.png" removable="false"
auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3"
anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JScrollPane"
icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false"
auto-create-binding="false" can-attach-label="true">
+ <default-constraints vsize-policy="7" hsize-policy="7"
anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JButton"
icon="/com/intellij/uiDesigner/icons/button.png" removable="false"
auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3"
anchor="0" fill="1" />
+ <initial-values>
+ <property name="text" value="Button" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JRadioButton"
icon="/com/intellij/uiDesigner/icons/radioButton.png"
removable="false" auto-create-binding="true"
can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3"
anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="RadioButton" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JCheckBox"
icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false"
auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="3"
anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="CheckBox" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JLabel"
icon="/com/intellij/uiDesigner/icons/label.png" removable="false"
auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="0"
anchor="8" fill="0" />
+ <initial-values>
+ <property name="text" value="Label" />
+ </initial-values>
+ </item>
+ <item class="javax.swing.JTextField"
icon="/com/intellij/uiDesigner/icons/textField.png" removable="false"
auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6"
anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JPasswordField"
icon="/com/intellij/uiDesigner/icons/passwordField.png"
removable="false" auto-create-binding="true"
can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6"
anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JFormattedTextField"
icon="/com/intellij/uiDesigner/icons/formattedTextField.png"
removable="false" auto-create-binding="true"
can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6"
anchor="8" fill="1">
+ <preferred-size width="150" height="-1" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTextArea"
icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false"
auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6"
anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTextPane"
icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false"
auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6"
anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JEditorPane"
icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false"
auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="6" hsize-policy="6"
anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JComboBox"
icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false"
auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="2"
anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JTable"
icon="/com/intellij/uiDesigner/icons/table.png" removable="false"
auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6"
anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JList"
icon="/com/intellij/uiDesigner/icons/list.png" removable="false"
auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="2"
anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTree"
icon="/com/intellij/uiDesigner/icons/tree.png" removable="false"
auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6"
anchor="0" fill="3">
+ <preferred-size width="150" height="50" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JTabbedPane"
icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false"
auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3"
anchor="0" fill="3">
+ <preferred-size width="200" height="200" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JSplitPane"
icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false"
auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="3" hsize-policy="3"
anchor="0" fill="3">
+ <preferred-size width="200" height="200" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JSpinner"
icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false"
auto-create-binding="true" can-attach-label="true">
+ <default-constraints vsize-policy="0" hsize-policy="6"
anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JSlider"
icon="/com/intellij/uiDesigner/icons/slider.png" removable="false"
auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6"
anchor="8" fill="1" />
+ </item>
+ <item class="javax.swing.JSeparator"
icon="/com/intellij/uiDesigner/icons/separator.png" removable="false"
auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="6"
anchor="0" fill="3" />
+ </item>
+ <item class="javax.swing.JProgressBar"
icon="/com/intellij/uiDesigner/icons/progressbar.png"
removable="false" auto-create-binding="true"
can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6"
anchor="0" fill="1" />
+ </item>
+ <item class="javax.swing.JToolBar"
icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false"
auto-create-binding="false" can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="6"
anchor="0" fill="1">
+ <preferred-size width="-1" height="20" />
+ </default-constraints>
+ </item>
+ <item class="javax.swing.JToolBar$Separator"
icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png"
removable="false" auto-create-binding="false"
can-attach-label="false">
+ <default-constraints vsize-policy="0" hsize-policy="0"
anchor="0" fill="1" />
+ </item>
+ <item class="javax.swing.JScrollBar"
icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false"
auto-create-binding="true" can-attach-label="false">
+ <default-constraints vsize-policy="6" hsize-policy="0"
anchor="0" fill="2" />
+ </item>
+ </group>
+ </component>
+ <component name="ProjectModuleManager">
+ <modules>
+ <module
fileurl="file://$PROJECT_DIR$/build/ide/intellij/idea60/modules/web/web.iml"
filepath="$PROJECT_DIR$/build/ide/intellij/idea60/modules/web/web.iml" />
+ <module
fileurl="file://$PROJECT_DIR$/build/ide/intellij/idea60/modules/testsuite/testsuite.iml"
filepath="$PROJECT_DIR$/build/ide/intellij/idea60/modules/testsuite/testsuite.iml"
/>
+ <module
fileurl="file://$PROJECT_DIR$/build/ide/intellij/idea60/modules/thirdparty/thirdparty.iml"
filepath="$PROJECT_DIR$/build/ide/intellij/idea60/modules/thirdparty/thirdparty.iml"
/>
+ <module
fileurl="file://$PROJECT_DIR$/build/ide/intellij/idea60/modules/tools/tools.iml"
filepath="$PROJECT_DIR$/build/ide/intellij/idea60/modules/tools/tools.iml"
/>
+ </modules>
+ </component>
+ <component name="ProjectRootManager" version="2"
assert-keyword="true" jdk-15="false" project-jdk-name="1.5"
project-jdk-type="JavaSDK">
+ <output url="file://$PROJECT_DIR$/output" />
+ </component>
+ <component name="ProjectRunConfigurationManager" />
+ <component name="RmicSettings">
+ <option name="IS_EANABLED" value="false" />
+ <option name="DEBUGGING_INFO" value="true" />
+ <option name="GENERATE_NO_WARNINGS" value="false" />
+ <option name="GENERATE_IIOP_STUBS" value="false" />
+ <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+ </component>
+ <component name="StarteamVcsAdapter" />
+ <component name="VssVcs">
+
<SourceSafePersistencyRemovedFolder>$PROJECT_DIR$/wsrp/src/resources/test</SourceSafePersistencyRemovedFolder>
+ </component>
+ <component name="com.intellij.jsf.UserDefinedFacesConfigs">
+ <option name="USER_DEFINED_CONFIGS">
+ <value>
+ <list size="0" />
+ </value>
+ </option>
+ </component>
+ <component name="copyright">
+ <Base>
+ <setting name="state" value="1" />
+ </Base>
+ <LanguageOptions name="$TEMPLATE$">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="true" />
+ <option name="separateAfter" value="true" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="true" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="JBoss, a division of Red
Hat Copyright &#36;today.year, Red Hat Middleware, LLC, and individual
contributors as indicated by the @authors tag. See the copyright.txt in
the distribution for a full listing of individual
contributors. This is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public License
as published by the Free Software Foundation; either version 2.1 of the
License, or (at your option) any later version. This software is
distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU Lesser General Public License for more details. You
should have received a copy of the GNU Lesser General Public License along with
this software; if not, write to the Free Software Foundation, Inc., 51 Fr!
anklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF site:
http://www.fsf.org." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="4" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="CSS">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="1" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="HTML">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="1" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="JAVA">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="JSP">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="1" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="JavaScript">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="1" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="Properties">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="1" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="XML">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ </component>
+ <component name="libraryTable" />
+ <component name="uidesigner-configuration">
+ <option name="INSTRUMENT_CLASSES" value="true" />
+ <option name="COPY_FORMS_RUNTIME_TO_OUTPUT" value="true"
/>
+ <option name="DEFAULT_LAYOUT_MANAGER"
value="GridLayoutManager" />
+ </component>
+ <UsedPathMacros />
+</project>
+
Added: modules/web/trunk/build/ide/intellij/idea60/modules/testsuite/testsuite.iml
===================================================================
--- modules/web/trunk/build/ide/intellij/idea60/modules/testsuite/testsuite.iml
(rev 0)
+++ modules/web/trunk/build/ide/intellij/idea60/modules/testsuite/testsuite.iml 2007-08-14
10:47:21 UTC (rev 7913)
@@ -0,0 +1,192 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module version="4" relativePaths="true"
type="JAVA_MODULE">
+ <component name="ModuleRootManager" />
+ <component name="NewModuleRootManager"
inherit-compiler-output="false">
+ <output url="file://$MODULE_DIR$/../../../../../../testsuite/classes"
/>
+ <exclude-output />
+ <content url="file://$MODULE_DIR$/../../../../../../testsuite">
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../testsuite/output" />
+ </content>
+ <orderEntry type="inheritedJdk" />
+ <orderEntry type="sourceFolder" forTests="false" />
+ <orderEntryProperties />
+ </component>
+ <component name="VcsManagerConfiguration">
+ <option name="ACTIVE_VCS_NAME" value="svn" />
+ <option name="USE_PROJECT_VCS" value="false" />
+ </component>
+ <component name="copyright">
+ <Base>
+ <setting name="state" value="1" />
+ </Base>
+ <LanguageOptions name="$TEMPLATE$">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="true" />
+ <option name="separateAfter" value="true" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="true" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="JBoss, a division of Red
Hat Copyright &#36;today.year, Red Hat Middleware, LLC, and individual
contributors as indicated by the @authors tag. See the copyright.txt in
the distribution for a full listing of individual
contributors. This is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public License
as published by the Free Software Foundation; either version 2.1 of the
License, or (at your option) any later version. This software is
distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU Lesser General Public License for more details. You
should have received a copy of the GNU Lesser General Public License along with
this software; if not, write to the Free Software Foundation, Inc., 51 Fr!
anklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF site:
http://www.fsf.org." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="4" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="CSS">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="HTML">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="JAVA">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="JSP">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="JavaScript">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="Properties">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="XML">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ </component>
+</module>
+
Added: modules/web/trunk/build/ide/intellij/idea60/modules/thirdparty/thirdparty.iml
===================================================================
--- modules/web/trunk/build/ide/intellij/idea60/modules/thirdparty/thirdparty.iml
(rev 0)
+++
modules/web/trunk/build/ide/intellij/idea60/modules/thirdparty/thirdparty.iml 2007-08-14
10:47:21 UTC (rev 7913)
@@ -0,0 +1,245 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module version="4" relativePaths="true"
type="JAVA_MODULE">
+ <component name="ModuleRootManager" />
+ <component name="NewModuleRootManager"
inherit-compiler-output="false">
+ <output url="file://$MODULE_DIR$/../../../../../../thirdparty/classes"
/>
+ <exclude-output />
+ <content url="file://$MODULE_DIR$/../../../../../../thirdparty">
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/antlr" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/apache-ant" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/apache-codec" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/apache-collections" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/apache-fileupload" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/apache-httpclient" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/apache-lang" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/apache-log4j" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/apache-logging" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/apache-lucene" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/apache-myfaces" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/apache-net" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/apache-tomahawk" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/apache-xerces" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/apache-xmlsec" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/asm" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/aspectj" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/beanshell" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/cglib" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/dbunit" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/dom4j" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/ehcache" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/el" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/facelets" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/hibernate" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/hsqldb" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/httpunit" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/ibm-wsdl4j" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/jackrabbit" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/jakarta-cactus" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/jakarta-io" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/javassist" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/jboss" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/jbossas" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/jbpm" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/jcr" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/jetty" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/jflex" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/jgroups" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/jsunit" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/junit" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/jwebunit" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/licenses" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/nekohtml" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/odmg" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/oswego-concurrent" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/portals-bridges" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/qdox" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/sleepycat" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/slf4j" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/sun-jaf" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/sun-javacc" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/sun-javamail" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/sun-opends" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/sun-servlet" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/trove" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/wutka-dtdparser" />
+ <excludeFolder
url="file://$MODULE_DIR$/../../../../../../thirdparty/xdoclet" />
+ </content>
+ <orderEntry type="inheritedJdk" />
+ <orderEntry type="sourceFolder" forTests="false" />
+ <orderEntryProperties />
+ </component>
+ <component name="copyright">
+ <Base>
+ <setting name="state" value="1" />
+ </Base>
+ <LanguageOptions name="$TEMPLATE$">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="true" />
+ <option name="separateAfter" value="true" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="true" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="JBoss, a division of Red
Hat Copyright &#36;today.year, Red Hat Middleware, LLC, and individual
contributors as indicated by the @authors tag. See the copyright.txt in
the distribution for a full listing of individual
contributors. This is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public License
as published by the Free Software Foundation; either version 2.1 of the
License, or (at your option) any later version. This software is
distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU Lesser General Public License for more details. You
should have received a copy of the GNU Lesser General Public License along with
this software; if not, write to the Free Software Foundation, Inc., 51 Fr!
anklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF site:
http://www.fsf.org." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="4" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="CSS">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="HTML">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="JAVA">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="JSP">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="JavaScript">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="Properties">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="XML">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ </component>
+</module>
+
Added: modules/web/trunk/build/ide/intellij/idea60/modules/tools/tools.iml
===================================================================
--- modules/web/trunk/build/ide/intellij/idea60/modules/tools/tools.iml
(rev 0)
+++ modules/web/trunk/build/ide/intellij/idea60/modules/tools/tools.iml 2007-08-14
10:47:21 UTC (rev 7913)
@@ -0,0 +1,201 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module version="4" relativePaths="true"
type="JAVA_MODULE">
+ <component name="ModuleRootManager" />
+ <component name="NewModuleRootManager"
inherit-compiler-output="false">
+ <output url="file://$MODULE_DIR$/../../../../../../tools/classes" />
+ <exclude-output />
+ <content url="file://$MODULE_DIR$/../../../../../../tools">
+ <sourceFolder
url="file://$MODULE_DIR$/../../../../../../tools/src/main"
isTestSource="false" />
+ </content>
+ <orderEntry type="inheritedJdk" />
+ <orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="module-library">
+ <library>
+ <CLASSES>
+ <root
url="jar://$MODULE_DIR$/../../../../../../thirdparty/wutka-dtdparser/lib/dtdparser121.jar!/"
/>
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntryProperties />
+ </component>
+ <component name="VcsManagerConfiguration">
+ <option name="ACTIVE_VCS_NAME" value="svn" />
+ <option name="USE_PROJECT_VCS" value="false" />
+ </component>
+ <component name="copyright">
+ <Base>
+ <setting name="state" value="1" />
+ </Base>
+ <LanguageOptions name="$TEMPLATE$">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="true" />
+ <option name="separateAfter" value="true" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="true" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="JBoss, a division of Red
Hat Copyright &#36;today.year, Red Hat Middleware, LLC, and individual
contributors as indicated by the @authors tag. See the copyright.txt in
the distribution for a full listing of individual
contributors. This is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public License
as published by the Free Software Foundation; either version 2.1 of the
License, or (at your option) any later version. This software is
distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU Lesser General Public License for more details. You
should have received a copy of the GNU Lesser General Public License along with
this software; if not, write to the Free Software Foundation, Inc., 51 Fr!
anklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF site:
http://www.fsf.org." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="4" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="CSS">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="HTML">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="JAVA">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="JSP">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="JavaScript">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="Properties">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="XML">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ </component>
+</module>
+
Added: modules/web/trunk/build/ide/intellij/idea60/modules/web/web.iml
===================================================================
--- modules/web/trunk/build/ide/intellij/idea60/modules/web/web.iml
(rev 0)
+++ modules/web/trunk/build/ide/intellij/idea60/modules/web/web.iml 2007-08-14 10:47:21
UTC (rev 7913)
@@ -0,0 +1,196 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module version="4" relativePaths="true"
type="JAVA_MODULE">
+ <component name="ModuleRootManager" />
+ <component name="NewModuleRootManager"
inherit-compiler-output="true">
+ <exclude-output />
+ <content url="file://$MODULE_DIR$/../../../../../../web">
+ <sourceFolder url="file://$MODULE_DIR$/../../../../../../web/src/main"
isTestSource="false" />
+ </content>
+ <orderEntry type="inheritedJdk" />
+ <orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="module-library">
+ <library>
+ <CLASSES>
+ <root
url="jar://$MODULE_DIR$/../../../../../../thirdparty/sun-servlet/lib/servlet-api.jar!/"
/>
+ </CLASSES>
+ <JAVADOC />
+ <SOURCES />
+ </library>
+ </orderEntry>
+ <orderEntryProperties />
+ </component>
+ <component name="copyright">
+ <Base>
+ <setting name="state" value="1" />
+ </Base>
+ <LanguageOptions name="$TEMPLATE$">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="true" />
+ <option name="separateAfter" value="true" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="true" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="JBoss, a division of Red
Hat Copyright &#36;today.year, Red Hat Middleware, LLC, and individual
contributors as indicated by the @authors tag. See the copyright.txt in
the distribution for a full listing of individual
contributors. This is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public License
as published by the Free Software Foundation; either version 2.1 of the
License, or (at your option) any later version. This software is
distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU Lesser General Public License for more details. You
should have received a copy of the GNU Lesser General Public License along with
this software; if not, write to the Free Software Foundation, Inc., 51 Fr!
anklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF site:
http://www.fsf.org." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="4" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="CSS">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="1" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="HTML">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="1" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="JAVA">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="JSP">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="1" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="JavaScript">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="1" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="Properties">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="1" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ <LanguageOptions name="XML">
+ <option name="templateOptions">
+ <value>
+ <option name="block" value="true" />
+ <option name="separateBefore" value="false" />
+ <option name="separateAfter" value="false" />
+ <option name="prefixLines" value="true" />
+ <option name="lenBefore" value="80" />
+ <option name="lenAfter" value="80" />
+ <option name="box" value="false" />
+ <option name="filler" value=" " />
+ </value>
+ </option>
+ <option name="notice" value="Copyright (c)
&#36;today.year, Your Corporation. All Rights Reserved." />
+ <option name="keyword" value="Copyright" />
+ <option name="fileTypeOverride" value="2" />
+ <option name="relativeBefore" value="true" />
+ <option name="addBlankAfter" value="true" />
+ <option name="fileLocation" value="1" />
+ <option name="useAlternate" value="false" />
+ </LanguageOptions>
+ </component>
+</module>
+
Added: modules/web/trunk/build/ide/intellij/idea60/readme.txt
===================================================================
--- modules/web/trunk/build/ide/intellij/idea60/readme.txt (rev
0)
+++ modules/web/trunk/build/ide/intellij/idea60/readme.txt 2007-08-14 10:47:21 UTC (rev
7913)
@@ -0,0 +1,10 @@
+- Main project file and modules:
+Copy jboss-portal.ipr to the root of the Portal source directory. You might need to
change the JDK to use but
+it should otherwise work out the box. Alternatively, you can create a new project file at
the root of your Portal
+installation and import the module files (*.iml) found in the modules directory
manually.
+
+- Codestyles and headers:
+The config directory contains standard settings for the JBoss Portal project regarding
headers and code style. If
+you intend to commit code to JBoss Portal, you need to update your IDEA installation to
use these files. Please
+refer to the IDEA manual on how to precisely do it, the short version being that you can
replace the files found
+in your IDEA preference directory by the ones found in the config directory.
Property changes on: modules/web/trunk/build/ide/intellij/idea60/readme.txt
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/build/licences/JBossEULA.txt
===================================================================
--- modules/web/trunk/build/licences/JBossEULA.txt (rev 0)
+++ modules/web/trunk/build/licences/JBossEULA.txt 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,106 @@
+LICENSE AGREEMENT
+JBOSS(r)
+
+This License Agreement governs the use of the Software Packages and any updates to the
Software
+Packages, regardless of the delivery mechanism. Each Software Package is a collective
work
+under U.S. Copyright Law. Subject to the following terms, Red Hat, Inc. ("Red
Hat") grants to
+the user ("Client") a license to the applicable collective work(s) pursuant to
the
+GNU Lesser General Public License v. 2.1 except for the following Software Packages:
+(a) JBoss Portal Forums and JBoss Transactions JTS, each of which is licensed pursuant to
the
+GNU General Public License v.2;
+
+(b) JBoss Rules, which is licensed pursuant to the Apache License v.2.0;
+
+(c) an optional download for JBoss Cache for the Berkeley DB for Java database, which is
licensed under the
+(open source) Sleepycat License (if Client does not wish to use the open source version
of this database,
+it may purchase a license from Sleepycat Software);
+
+and (d) the BPEL extension for JBoss jBPM, which is licensed under the Common Public
License v.1,
+and, pursuant to the OASIS BPEL4WS standard, requires parties wishing to redistribute to
enter various
+royalty-free patent licenses.
+
+Each of the foregoing licenses is available at
http://www.opensource.org/licenses/index.php.
+
+1. The Software. "Software Packages" refer to the various software modules
that are created and made available
+for distribution by the
JBoss.org open source community at
http://www.jboss.org. Each
of the Software Packages
+may be comprised of hundreds of software components. The end user license agreement for
each component is located in
+the component's source code. With the exception of certain image files identified in
Section 2 below,
+the license terms for the components permit Client to copy, modify, and redistribute the
component,
+in both source code and binary code forms. This agreement does not limit Client's
rights under,
+or grant Client rights that supersede, the license terms of any particular component.
+
+2. Intellectual Property Rights. The Software Packages are owned by Red Hat and others
and are protected under copyright
+and other laws. Title to the Software Packages and any component, or to any copy,
modification, or merged portion shall
+remain with the aforementioned, subject to the applicable license. The "JBoss"
trademark, "Red Hat" trademark, the
+individual Software Package trademarks, and the "Shadowman" logo are registered
trademarks of Red Hat and its affiliates
+in the U.S. and other countries. This agreement permits Client to distribute unmodified
copies of the Software Packages
+using the Red Hat trademarks that Red Hat has inserted in the Software Packages on the
condition that Client follows Red Hat's
+trademark guidelines for those trademarks located at
http://www.redhat.com/about/corporate/trademark/. Client must abide by
+these trademark guidelines when distributing the Software Packages, regardless of whether
the Software Packages have been modified.
+If Client modifies the Software Packages, then Client must replace all Red Hat trademarks
and logos identified at
+http://www.jboss.com/company/logos, unless a separate agreement with Red Hat is executed
or other permission granted.
+Merely deleting the files containing the Red Hat trademarks may corrupt the Software
Packages.
+
+3. Limited Warranty. Except as specifically stated in this Paragraph 3 or a license for
a particular
+component, to the maximum extent permitted under applicable law, the Software Packages
and the
+components are provided and licensed "as is" without warranty of any kind,
expressed or implied,
+including the implied warranties of merchantability, non-infringement or fitness for a
particular purpose.
+Red Hat warrants that the media on which Software Packages may be furnished will be free
from defects in
+materials and manufacture under normal use for a period of 30 days from the date of
delivery to Client.
+Red Hat does not warrant that the functions contained in the Software Packages will meet
Client's requirements
+or that the operation of the Software Packages will be entirely error free or appear
precisely as described
+in the accompanying documentation. This warranty extends only to the party that purchases
the Services
+pertaining to the Software Packages from Red Hat or a Red Hat authorized distributor.
+
+4. Limitation of Remedies and Liability. To the maximum extent permitted by applicable
law, the remedies
+described below are accepted by Client as its only remedies. Red Hat's entire
liability, and Client's
+exclusive remedies, shall be: If the Software media is defective, Client may return it
within 30 days of
+delivery along with a copy of Client's payment receipt and Red Hat, at its option,
will replace it or
+refund the money paid by Client for the Software. To the maximum extent permitted by
applicable law,
+Red Hat or any Red Hat authorized dealer will not be liable to Client for any incidental
or consequential
+damages, including lost profits or lost savings arising out of the use or inability to
use the Software,
+even if Red Hat or such dealer has been advised of the possibility of such damages. In
no event shall
+Red Hat's liability under this agreement exceed the amount that Client paid to Red
Hat under this
+Agreement during the twelve months preceding the action.
+
+5. Export Control. As required by U.S. law, Client represents and warrants that it:
+(a) understands that the Software Packages are subject to export controls under the
+U.S. Commerce Department's Export Administration Regulations ("EAR");
+
+(b) is not located in a prohibited destination country under the EAR or U.S. sanctions
regulations
+(currently Cuba, Iran, Iraq, Libya, North Korea, Sudan and Syria);
+
+(c) will not export, re-export, or transfer the Software Packages to any prohibited
destination, entity,
+or individual without the necessary export license(s) or authorizations(s) from the U.S.
Government;
+
+(d) will not use or transfer the Software Packages for use in any sensitive nuclear,
chemical or
+biological weapons, or missile technology end-uses unless authorized by the U.S.
Government by
+regulation or specific license;
+
+(e) understands and agrees that if it is in the United States and exports or transfers
the Software
+Packages to eligible end users, it will, as required by EAR Section 740.17(e), submit
semi-annual
+reports to the Commerce Department's Bureau of Industry & Security (BIS), which
include the name and
+address (including country) of each transferee;
+
+and (f) understands that countries other than the United States may restrict the import,
use, or
+export of encryption products and that it shall be solely responsible for compliance with
any such
+import, use, or export restrictions.
+
+6. Third Party Programs. Red Hat may distribute third party software programs with the
Software Packages
+that are not part of the Software Packages and which Client must install separately.
These third party
+programs are subject to their own license terms. The license terms either accompany the
programs or
+can be viewed at
http://www.redhat.com/licenses/. If Client does not agree to abide by
the applicable
+license terms for such programs, then Client may not install them. If Client wishes to
install the programs
+on more than one system or transfer the programs to another party, then Client must
contact the licensor
+of the programs.
+
+7. General. If any provision of this agreement is held to be unenforceable, that shall
not affect the
+enforceability of the remaining provisions. This License Agreement shall be governed by
the laws of the
+State of North Carolina and of the United States, without regard to any conflict of laws
provisions,
+except that the United Nations Convention on the International Sale of Goods shall not
apply.
+
+Copyright 2006 Red Hat, Inc. All rights reserved.
+"JBoss" and the JBoss logo are registered trademarks of Red Hat, Inc.
+All other trademarks are the property of their respective owners.
+
+ Page 1 of 1 18 October 2006
Added: modules/web/trunk/build/local.properties
===================================================================
--- modules/web/trunk/build/local.properties (rev 0)
+++ modules/web/trunk/build/local.properties 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,48 @@
+### ====================================================================== ###
+## ##
+## Local project properties. ##
+## ##
+## Define properties that are local to your environment here. This ##
+## file (local.properties) should not be checked in. Modify the ##
+## example to affect all users. ##
+## ##
+### ====================================================================== ###
+
+### General compiler configuration ###
+
+#build.compiler=jikes
+#build.warnings=true
+#build.pedantic=true
+#javac.depend=on
+
+### Javac/Jikes compiler configuration ###
+
+javac.optimize=off
+javac.debug=on
+javac.deprecation=on
+
+### Enable verbose build output ###
+
+#init.verbose=true
+
+### JavaDoc ###
+#docs-javadocs.disable=true
+
+### Do we build xdoclet or get it from thirdparty ###
+### uncomment for thirdparty: comment to use xdoclet module.
+### To use xdoclet module also uncomment the xdoclet line in groups in build/build.xml
+#xdoclet.xdoclet.root=${project.root}/thirdparty/xdoclet
+
+# Portal database, for now : hsqldb, mysql, postgresql are the possible values
+portal.database=mysql
+# The datasource name used in the JNDI binding
+portal.datasource.name=PortalDS
+# Context root for the portal main servlet
+portal.web.context-root=/portal
+# JBoss server/<xxx> directory for JBoss Portal, ie: $JBOSS_HOME/server/default
+portal.deploy.dir=default/deploy
+portal-ha.deploy.dir=all/deploy
+# Show SQL or not
+portal.sql.show=false
+# Uncomment if you want to use a specific JBoss home path otherwise the build will use
the JBOSS_HOME env variable
+#jboss.home=
Added: modules/web/trunk/testsuite/.project
===================================================================
--- modules/web/trunk/testsuite/.project (rev 0)
+++ modules/web/trunk/testsuite/.project 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>testsuite</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ </buildSpec>
+ <natures>
+ </natures>
+</projectDescription>
Added: modules/web/trunk/testsuite/build.bat
===================================================================
--- modules/web/trunk/testsuite/build.bat (rev 0)
+++ modules/web/trunk/testsuite/build.bat 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,54 @@
+@echo off
+rem
+rem Invokes a script of the same name in the 'tools' module.
+rem
+rem The 'tools' module is expected to be a peer directory of the directory
+rem in which this script lives.
+rem
+rem @author Jason Dillon <jason(a)planet57.com>
+rem
+
+rem $Id: build.bat 21 2005-01-14 23:14:21Z vietj $
+
+setlocal
+
+set PROGNAME=%~nx0
+set DIRNAME=%~dp0
+
+rem Legacy shell support
+if x%PROGNAME%==x set PROGNAME=build.bat
+if x%DIRNAME%==x set DIRNAME=.\
+
+set MODULE_ROOT=%DIRNAME%
+if x%TOOLS_ROOT%==x set TOOLS_ROOT=%DIRNAME%..\tools
+set TARGET=%TOOLS_ROOT%\bin\build.bat
+set ARGS=%*
+
+rem Start'er up yo
+goto main
+
+:debug
+if not x%DEBUG%==x echo %PROGNAME%: %*
+goto :EOF
+
+:main
+call :debug PROGNAME=%PROGNAME%
+call :debug DIRNAME=%DIRNAME%
+call :debug TOOLS_ROOT=%TOOLS_ROOT%
+call :debug TARGET=%TARGET%
+
+if exist %TARGET% call :call-script & goto :EOF
+rem else fail, we can not go on
+
+echo %PROGNAME%: *ERROR* The target executable does not exist:
+echo %PROGNAME%:
+echo %PROGNAME%: %TARGET%
+echo %PROGNAME%:
+echo %PROGNAME%: Please make sure you have checked out the 'tools' module
+echo %PROGNAME%: and make sure it is up to date.
+goto :EOF
+
+:call-script
+call :debug Executing %TARGET% %ARGS%
+call %TARGET% %ARGS%
+goto :EOF
Property changes on: modules/web/trunk/testsuite/build.bat
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/testsuite/build.sh
===================================================================
--- modules/web/trunk/testsuite/build.sh (rev 0)
+++ modules/web/trunk/testsuite/build.sh 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,49 @@
+#!/bin/sh
+##
+## Invokes a script of the same name in the 'tools' module.
+##
+## The 'tools' module is expected to be a peer directory of the directory
+## in which this script lives.
+##
+## @author Jason Dillon <jason(a)planet57.com>
+##
+
+# $Id: build.sh 21 2005-01-14 23:14:21Z vietj $
+
+PROGNAME=`basename $0`
+DIRNAME=`dirname $0`
+
+# Buss it yo
+main() {
+ if [ "x$TOOLS_ROOT" = "x" ]; then
+ TOOLS_ROOT=`cd $DIRNAME/../tools && pwd`
+ fi
+
+ MODULE_ROOT=`cd $DIRNAME; pwd`
+ export TOOLS_ROOT MODULE_ROOT DEBUG TRACE
+
+ # Where is the target script?
+ target="$TOOLS_ROOT/bin/$PROGNAME"
+ if [ ! -f "$target" ]; then
+ echo "${PROGNAME}: *ERROR* The target executable does not exist:"
+ echo "${PROGNAME}:"
+ echo "${PROGNAME}: $target"
+ echo "${PROGNAME}:"
+ echo "${PROGNAME}: Please make sure you have checked out the 'tools'
module"
+ echo "${PROGNAME}: and make sure it is up to date."
+ exit 2
+ fi
+
+ # Get busy yo!
+ if [ "x$DEBUG" != "x" ]; then
+ echo "${PROGNAME}: Executing: /bin/sh $target $@"
+ fi
+ if [ "x$TRACE" = "x" ]; then
+ exec /bin/sh $target "$@"
+ else
+ exec /bin/sh -x $target "$@"
+ fi
+}
+
+# Lets get ready to rumble!
+main "$@"
Property changes on: modules/web/trunk/testsuite/build.sh
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/testsuite/build.xml
===================================================================
--- modules/web/trunk/testsuite/build.xml (rev 0)
+++ modules/web/trunk/testsuite/build.xml 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,143 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ ~ JBoss, a division of Red Hat ~
+ ~ Copyright 2006, Red Hat Middleware, LLC, and individual ~
+ ~ contributors as indicated by the @authors tag. See the ~
+ ~ copyright.txt in the distribution for a full listing of ~
+ ~ individual contributors. ~
+ ~ ~
+ ~ This is free software; you can redistribute it and/or modify it ~
+ ~ under the terms of the GNU Lesser General Public License as ~
+ ~ published by the Free Software Foundation; either version 2.1 of ~
+ ~ the License, or (at your option) any later version. ~
+ ~ ~
+ ~ This software is distributed in the hope that it will be useful, ~
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of ~
+ ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ~
+ ~ Lesser General Public License for more details. ~
+ ~ ~
+ ~ You should have received a copy of the GNU Lesser General Public ~
+ ~ License along with this software; if not, write to the Free ~
+ ~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA ~
+ ~ 02110-1301 USA, or see the FSF site:
http://www.fsf.org. ~
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->
+
+<!DOCTYPE project [
+ <!ENTITY defaults SYSTEM
"../tools/etc/buildfragments/defaults.ent">
+ <!ENTITY libraries SYSTEM "../thirdparty/libraries.ent">
+ ]>
+
+<project default="tests" name="JBoss Portal Testuite"
+
xmlns:server="http://jboss.org/ns/test/ant/server">
+
+ <import file="imports/server-config.xml"/>
+
+ <property environment="env"/>
+ <property name="junit.formatter.usefile" value="true"/>
+ <property name="jboss.junit.config" value=""/>
+ <property name="log.dir" value="output/logs"/>
+ <property name="reports.dir" value="output/reports"/>
+ <dirname property="project.root" file="${basedir}"/>
+ <property name="project.thirdparty"
value="${project.root}/thirdparty"/>
+
+ &defaults;
+ &libraries;
+
+ <path id="portal.task.classpath">
+ <pathelement location="${project.tools}/lib/ant.jar"/>
+ <pathelement location="${project.tools}/lib/explode.jar"/>
+ <pathelement
location="${project.tools}/lib/cargo-core-uberjar-0.8.jar"/>
+ </path>
+
+ <taskdef
+ name="deploy"
+ classname="org.jboss.portal.common.ant.Deploy"
+ classpathref="portal.task.classpath"/>
+ <taskdef
+ name="undeploy"
+ classname="org.jboss.portal.common.ant.Undeploy"
+ classpathref="portal.task.classpath"/>
+
+ <target name="init">
+ <mkdir dir="${log.dir}"/>
+ <mkdir dir="${reports.dir}"/>
+ <available classname="java.lang.Void"
property="HAVE_JDK_1.1"/>
+ <available classname="java.lang.ThreadLocal"
property="HAVE_JDK_1.2"/>
+ <available classname="java.lang.StrictMath"
property="HAVE_JDK_1.3"/>
+ <available classname="java.lang.StackTraceElement"
property="HAVE_JDK_1.4"/>
+ <available classname="java.lang.Enum"
property="HAVE_JDK_1.5"/>
+ </target>
+ <!-- copy all logs to testsuite/output/logs -->
+ <target name="copy-logs">
+ <copy todir="${log.dir}">
+ <fileset dir="../${module}/">
+ <include name="*.log"/>
+ </fileset>
+ <globmapper from="*" to="${module}-*"/>
+ </copy>
+ </target>
+
+ <!-- copy all reports to testsuite/output/reports -->
+ <target name="copy-reports">
+ <copy todir="${reports.dir}">
+ <fileset dir="../${module}/output/tests">
+ <include name="TEST-*.xml"/>
+ </fileset>
+ </copy>
+ </target>
+
+ <target name="run-tests">
+ <ant antfile="../${module}/build.xml" output="output.log"
dir="../${module}" target="package-tests"/>
+ <ant antfile="../${module}/build.xml" output="tests.log"
dir="../${module}" target="tests"/>
+ </target>
+
+ <target name="test-module" depends="clean,init">
+ <antcall target="internal-test-module"/>
+ <antcall target="reports"/>
+ </target>
+
+ <target name="internal-test-module">
+ <antcall target="run-tests">
+ <param name="module" value="${module}"/>
+ </antcall>
+ <antcall target="copy-logs">
+ <param name="module" value="${module}"/>
+ </antcall>
+ <antcall target="copy-reports">
+ <param name="module" value="${module}"/>
+ </antcall>
+ </target>
+
+ <!-- executes all modules' tests -->
+ <target name="tests" depends="init">
+ <antcall target="reports"/>
+ </target>
+
+ <target name="reports">
+ <junitreport todir="${reports.dir}">
+ <fileset dir="${reports.dir}">
+ <include name="TEST-*.xml"/>
+ </fileset>
+ <report format="frames"
+ todir="${reports.dir}"/>
+ </junitreport>
+ </target>
+
+ <target name="clean">
+ <!-- remove generated test xml files -->
+ <delete>
+ <fileset dir="../common" includes="*.log"/>
+ <fileset dir="../common"
includes="output/tests/TEST-*.xml,output/tests/TEST-*.txt"/>
+ </delete>
+ <!-- remove testsuite output dir -->
+ <delete includeEmptyDirs="true" quiet="true">
+ <fileset dir="output"/>
+ </delete>
+ </target>
+
+ <target name="help">
+ <echo message="To run individual module tests use the test-module target with
-Dmodule=the module you want to test,
+ e.g. ant -Dmodule=portlet test-module"/>
+ </target>
+
+</project>
Property changes on: modules/web/trunk/testsuite/build.xml
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/testsuite/imports/server-config.xml
===================================================================
--- modules/web/trunk/testsuite/imports/server-config.xml (rev 0)
+++ modules/web/trunk/testsuite/imports/server-config.xml 2007-08-14 10:47:21 UTC (rev
7913)
@@ -0,0 +1,109 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+
+<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ ~ JBoss, a division of Red Hat ~
+ ~ Copyright 2006, Red Hat Middleware, LLC, and individual ~
+ ~ contributors as indicated by the @authors tag. See the ~
+ ~ copyright.txt in the distribution for a full listing of ~
+ ~ individual contributors. ~
+ ~ ~
+ ~ This is free software; you can redistribute it and/or modify it ~
+ ~ under the terms of the GNU Lesser General Public License as ~
+ ~ published by the Free Software Foundation; either version 2.1 of ~
+ ~ the License, or (at your option) any later version. ~
+ ~ ~
+ ~ This software is distributed in the hope that it will be useful, ~
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of ~
+ ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ~
+ ~ Lesser General Public License for more details. ~
+ ~ ~
+ ~ You should have received a copy of the GNU Lesser General Public ~
+ ~ License along with this software; if not, write to the Free ~
+ ~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA ~
+ ~ 02110-1301 USA, or see the FSF site:
http://www.fsf.org. ~
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->
+
+<project name="server-config" default="help"
+
xmlns:server="http://jboss.org/ns/test/ant/server">
+
+ <!-- PROPERTIES -->
+ <property environment="env"/>
+ <property name="jboss.dist" value="${env.JBOSS_HOME}"/>
+ <property name="node0" value="localhost"/>
+ <property name="project.tools" value="../tools"/>
+ <property name="udpGroup" value="239.3.4.67"/>
+ <property name="node0.jndi.url"
value="jnp://${node0}:1099"/>
+ <!-- Override for non-Sun compatible JDK layouts -->
+ <property name="javac.jar"
value="${env.JAVA_HOME}/lib/tools.jar"/>
+ <!-- Override with the jpda settings for debugging start-jboss. An example
+ for connecting with a debugger via the socket protocol:
+ -Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=y
+ An example of running with the -Xrunyjpagent
+ -->
+ <property name="jpda.cmdline" value=""/>
+ <!--<property name="jpda.cmdline" value="-Xdebug -Xnoagent
-Djava.compiler=NONE
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=7878"/>-->
+
+ <path id="jboss.boot.classpath">
+ <pathelement location="${jboss.dist}/bin/run.jar"/>
+ <pathelement location="${javac.jar}"/>
+ </path>
+
+ <!-- Set a extension property -bat for win32, sh
+ otherwise
+ -->
+ <condition property="exten" value="bat">
+ <os family="windows"/>
+ </condition>
+ <condition property="exten" value="sh">
+ <not>
+ <os family="windows"/>
+ </not>
+ </condition>
+
+ <condition property="separator" value=";">
+ <os family="windows"/>
+ </condition>
+ <condition property="separator" value=":">
+ <not>
+ <os family="windows"/>
+ </not>
+ </condition>
+
+ <!-- Server Config Classpath, also used for JUnit formatting -->
+ <path id="jboss.test.classpath">
+ <filelist dir="${project.tools}/lib">
+ <file name="jboss-test.jar"/>
+ </filelist>
+ </path>
+
+ <taskdef name="config"
classname="org.jboss.ant.taskdefs.server.ConfigManagerTask"
+
uri="http://jboss.org/ns/test/ant/server"
loaderref="server.loader">
+ <classpath id="server.taskdef.classpath">
+ <path refid="jboss.test.classpath"/>
+ </classpath>
+ </taskdef>
+ <taskdef name="start"
classname="org.jboss.ant.taskdefs.server.StartServerTask"
+
uri="http://jboss.org/ns/test/ant/server"
loaderref="server.loader">
+ <classpath refid="server.taskdef.classpath"/>
+ </taskdef>
+ <taskdef name="stop"
classname="org.jboss.ant.taskdefs.server.StopServerTask"
+
uri="http://jboss.org/ns/test/ant/server"
loaderref="server.loader">
+ <classpath refid="server.taskdef.classpath"/>
+ </taskdef>
+
+ <server:config javaHome="${env.JAVA_HOME}"
jbossHome="${jboss.dist}"
+ udpGroup="${udpGroup}">
+ <server name="default" host="${node0}">
+ <jvmarg value="${jpda.cmdline}"/>
+ <jvmarg value="-Xmx128m"/>
+ <sysproperty key="java.endorsed.dirs"
value="${jboss.dist}/lib/endorsed"/>
+ </server>
+ </server:config>
+
+<target name="help">
+ <echo message="The project fragment which defines the jboss server
configs"/>
+ </target>
+
+
+</project>
Property changes on: modules/web/trunk/testsuite/imports/server-config.xml
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/.donotremove
===================================================================
Property changes on: modules/web/trunk/tools/.donotremove
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/.project
===================================================================
--- modules/web/trunk/tools/.project (rev 0)
+++ modules/web/trunk/tools/.project 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>tools</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ </buildSpec>
+ <natures>
+ </natures>
+</projectDescription>
Property changes on: modules/web/trunk/tools/.project
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/bin/ant
===================================================================
--- modules/web/trunk/tools/bin/ant (rev 0)
+++ modules/web/trunk/tools/bin/ant 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,326 @@
+#! /bin/sh
+
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+# Extract launch and ant arguments, (see details below).
+ant_exec_args=
+no_config=false
+use_jikes_default=false
+ant_exec_debug=false
+show_help=false
+for arg in "$@" ; do
+ if [ "$arg" = "--noconfig" ] ; then
+ no_config=true
+ elif [ "$arg" = "--usejikes" ] ; then
+ use_jikes_default=true
+ elif [ "$arg" = "--execdebug" ] ; then
+ ant_exec_debug=true
+ elif [ my"$arg" = my"--h" -o my"$arg" =
my"--help" ] ; then
+ show_help=true
+ ant_exec_args="$ant_exec_args -h"
+ else
+ if [ my"$arg" = my"-h" -o my"$arg" =
my"-help" ] ; then
+ show_help=true
+ fi
+ ant_exec_args="$ant_exec_args \"$arg\""
+ fi
+done
+
+# Source/default ant configuration
+if $no_config ; then
+ rpm_mode=false
+ usejikes=$use_jikes_default
+else
+ # load system-wide ant configuration (ONLY if ANT_HOME has NOT been set)
+ if [ -z "$ANT_HOME" -o "$ANT_HOME" = "/usr/share/ant" ];
then
+ if [ -f "/etc/ant.conf" ] ; then
+ . /etc/ant.conf
+ fi
+ fi
+
+ # load user ant configuration
+ if [ -f "$HOME/.ant/ant.conf" ] ; then
+ . $HOME/.ant/ant.conf
+ fi
+ if [ -f "$HOME/.antrc" ] ; then
+ . "$HOME/.antrc"
+ fi
+
+ # provide default configuration values
+ if [ -z "$rpm_mode" ] ; then
+ rpm_mode=false
+ fi
+ if [ -z "$usejikes" ] ; then
+ usejikes=$use_jikes_default
+ fi
+fi
+
+# Setup Java environment in rpm mode
+if $rpm_mode ; then
+ if [ -f /usr/share/java-utils/java-functions ] ; then
+ . /usr/share/java-utils/java-functions
+ set_jvm
+ set_javacmd
+ fi
+fi
+
+# OS specific support. $var _must_ be set to either true or false.
+cygwin=false;
+darwin=false;
+case "`uname`" in
+ CYGWIN*) cygwin=true ;;
+ Darwin*) darwin=true
+ if [ -z "$JAVA_HOME" ] ; then
+ JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Home
+ fi
+ ;;
+esac
+
+if [ -z "$ANT_HOME" -o ! -d "$ANT_HOME" ] ; then
+ ## resolve links - $0 may be a link to ant's home
+ PRG="$0"
+ progname=`basename "$0"`
+
+ # need this for relative symlinks
+ while [ -h "$PRG" ] ; do
+ ls=`ls -ld "$PRG"`
+ link=`expr "$ls" : '.*-> \(.*\)$'`
+ if expr "$link" : '/.*' > /dev/null; then
+ PRG="$link"
+ else
+ PRG=`dirname "$PRG"`"/$link"
+ fi
+ done
+
+ ANT_HOME=`dirname "$PRG"`/..
+
+ # make it fully qualified
+ ANT_HOME=`cd "$ANT_HOME" && pwd`
+fi
+
+# For Cygwin, ensure paths are in UNIX format before anything is touched
+if $cygwin ; then
+ [ -n "$ANT_HOME" ] &&
+ ANT_HOME=`cygpath --unix "$ANT_HOME"`
+ [ -n "$JAVA_HOME" ] &&
+ JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
+fi
+
+# set ANT_LIB location
+ANT_LIB="${ANT_HOME}/lib"
+
+if [ -z "$JAVACMD" ] ; then
+ if [ -n "$JAVA_HOME" ] ; then
+ # IBM's JDK on AIX uses strange locations for the executables
+ if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+ JAVACMD="$JAVA_HOME/jre/sh/java"
+ elif [ -x "$JAVA_HOME/jre/bin/java" ] ; then
+ JAVACMD="$JAVA_HOME/jre/bin/java"
+ else
+ JAVACMD="$JAVA_HOME/bin/java"
+ fi
+ else
+ JAVACMD=`which java 2> /dev/null `
+ if [ -z "$JAVACMD" ] ; then
+ JAVACMD=java
+ fi
+ fi
+fi
+
+if [ ! -x "$JAVACMD" ] ; then
+ echo "Error: JAVA_HOME is not defined correctly."
+ echo " We cannot execute $JAVACMD"
+ exit 1
+fi
+
+# Build local classpath using just the launcher in non-rpm mode or
+# use the Jpackage helper in rpm mode with basic and default jars
+# specified in the ant.conf configuration. Because the launcher is
+# used, libraries linked in ANT_HOME/lib will also be included, but this
+# is discouraged as it is not java-version safe. A user should
+# request optional jars and their dependencies via the OPT_JAR_LIST
+# variable
+if $rpm_mode && [ -x /usr/bin/build-classpath ] ; then
+ LOCALCLASSPATH="$(/usr/bin/build-classpath ant ant-launcher jaxp_parser_impl
xml-commons-apis)"
+
+ # If no optional jars have been specified then build the default list
+ if [ -z "$OPT_JAR_LIST" ] ; then
+ for file in /etc/ant.d/*; do
+ if [ -f "$file" ]; then
+ case "$file" in
+ *~) ;;
+ *#*) ;;
+ *.rpmsave) ;;
+ *.rpmnew) ;;
+ *)
+ for dep in `cat "$file"`; do
+ case "$OPT_JAR_LIST" in
+ *"$dep"*) ;;
+ *) OPT_JAR_LIST="$OPT_JAR_LIST${OPT_JAR_LIST:+ }$dep"
+ esac
+ done
+ esac
+ fi
+ done
+ fi
+
+ # If the user requested to try to add some other jars to the classpath
+ if [ -n "$OPT_JAR_LIST" ] ; then
+ _OPTCLASSPATH="$(/usr/bin/build-classpath $OPT_JAR_LIST 2> /dev/null)"
+ if [ -n "$_OPTCLASSPATH" ] ; then
+ LOCALCLASSPATH="$LOCALCLASSPATH:$_OPTCLASSPATH"
+ fi
+ fi
+
+ # Explicitly add javac path to classpath, assume JAVA_HOME set
+ # properly in rpm mode
+ if [ -f "$JAVA_HOME/lib/tools.jar" ] ; then
+ LOCALCLASSPATH="$LOCALCLASSPATH:$JAVA_HOME/lib/tools.jar"
+ fi
+ if [ -f "$JAVA_HOME/lib/classes.zip" ] ; then
+ LOCALCLASSPATH="$LOCALCLASSPATH:$JAVA_HOME/lib/classes.zip"
+ fi
+
+ # if CLASSPATH_OVERRIDE env var is set, LOCALCLASSPATH will be
+ # user CLASSPATH first and ant-found jars after.
+ # In that case, the user CLASSPATH will override ant-found jars
+ #
+ # if CLASSPATH_OVERRIDE is not set, we'll have the normal behaviour
+ # with ant-found jars first and user CLASSPATH after
+ if [ -n "$CLASSPATH" ] ; then
+ # merge local and specified classpath
+ if [ -z "$LOCALCLASSPATH" ] ; then
+ LOCALCLASSPATH="$CLASSPATH"
+ elif [ -n "$CLASSPATH_OVERRIDE" ] ; then
+ LOCALCLASSPATH="$CLASSPATH:$LOCALCLASSPATH"
+ else
+ LOCALCLASSPATH="$LOCALCLASSPATH:$CLASSPATH"
+ fi
+
+ # remove class path from launcher -cp option
+ CLASSPATH=""
+ fi
+else
+ # not using rpm_mode; use launcher to determine classpaths
+ if [ -z "$LOCALCLASSPATH" ] ; then
+ LOCALCLASSPATH=$ANT_LIB/ant-launcher.jar
+ else
+ LOCALCLASSPATH=$ANT_LIB/ant-launcher.jar:$LOCALCLASSPATH
+ fi
+fi
+
+if [ -n "$JAVA_HOME" ] ; then
+ # OSX hack to make Ant work with jikes
+ if $darwin ; then
+ OSXHACK="${JAVA_HOME}/../Classes"
+ if [ -d "${OSXHACK}" ] ; then
+ for i in "${OSXHACK}"/*.jar
+ do
+ JIKESPATH="$JIKESPATH:$i"
+ done
+ fi
+ fi
+fi
+
+# Allow Jikes support (off by default)
+if $usejikes; then
+ ANT_OPTS="$ANT_OPTS -Dbuild.compiler=jikes"
+fi
+
+# For Cygwin, switch paths to appropriate format before running java
+# For PATHs convert to unix format first, then to windows format to ensure
+# both formats are supported. Probably this will fail on directories with ;
+# in the name in the path. Let's assume that paths containing ; are more
+# rare than windows style paths on cygwin.
+if $cygwin; then
+ if [ "$OS" = "Windows_NT" ] && cygpath -m .>/dev/null
2>/dev/null ; then
+ format=mixed
+ else
+ format=windows
+ fi
+ ANT_HOME=`cygpath --$format "$ANT_HOME"`
+ ANT_LIB=`cygpath --$format "$ANT_LIB"`
+ JAVA_HOME=`cygpath --$format "$JAVA_HOME"`
+ LCP_TEMP=`cygpath --path --unix "$LOCALCLASSPATH"`
+ LOCALCLASSPATH=`cygpath --path --$format "$LCP_TEMP"`
+ if [ -n "$CLASSPATH" ] ; then
+ CP_TEMP=`cygpath --path --unix "$CLASSPATH"`
+ CLASSPATH=`cygpath --path --$format "$CP_TEMP"`
+ fi
+ CYGHOME=`cygpath --$format "$HOME"`
+fi
+
+# Show script help if requested
+if $show_help ; then
+ echo $0 '[script options] [options] [target [target2 [target3] ..]]'
+ echo 'Script Options:'
+ echo ' --help, --h print this message and ant help'
+ echo ' --noconfig suppress sourcing of /etc/ant.conf,'
+ echo ' $HOME/.ant/ant.conf, and $HOME/.antrc'
+ echo ' configuration files'
+ echo ' --usejikes enable use of jikes by default, unless'
+ echo ' set explicitly in configuration files'
+ echo ' --execdebug print ant exec line generated by this'
+ echo ' launch script'
+ echo ' '
+fi
+# add a second backslash to variables terminated by a backslash under cygwin
+if $cygwin; then
+ case "$ANT_HOME" in
+ *\\ )
+ ANT_HOME="$ANT_HOME\\"
+ ;;
+ esac
+ case "$CYGHOME" in
+ *\\ )
+ CYGHOME="$CYGHOME\\"
+ ;;
+ esac
+ case "$JIKESPATH" in
+ *\\ )
+ JIKESPATH="$JIKESPATH\\"
+ ;;
+ esac
+ case "$LOCALCLASSPATH" in
+ *\\ )
+ LOCALCLASSPATH="$LOCALCLASSPATH\\"
+ ;;
+ esac
+ case "$CLASSPATH" in
+ *\\ )
+ CLASSPATH="$CLASSPATH\\"
+ ;;
+ esac
+fi
+# Execute ant using eval/exec to preserve spaces in paths,
+# java options, and ant args
+ant_sys_opts=
+if [ -n "$CYGHOME" ]; then
+ if [ -n "$JIKESPATH" ]; then
+ ant_sys_opts="-Djikes.class.path=\"$JIKESPATH\"
-Dcygwin.user.home=\"$CYGHOME\""
+ else
+ ant_sys_opts="-Dcygwin.user.home=\"$CYGHOME\""
+ fi
+else
+ if [ -n "$JIKESPATH" ]; then
+ ant_sys_opts="-Djikes.class.path=\"$JIKESPATH\""
+ fi
+fi
+ant_exec_command="exec \"$JAVACMD\" $ANT_OPTS -classpath
\"$LOCALCLASSPATH\" -Dant.home=\"$ANT_HOME\"
-Dant.library.dir=\"$ANT_LIB\" $ant_sys_opts
org.apache.tools.ant.launch.Launcher $ANT_ARGS -cp \"$CLASSPATH\"
$ant_exec_args"
+if $ant_exec_debug ; then
+ echo $ant_exec_command
+fi
+eval $ant_exec_command
Property changes on: modules/web/trunk/tools/bin/ant
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/bin/ant.bat
===================================================================
--- modules/web/trunk/tools/bin/ant.bat (rev 0)
+++ modules/web/trunk/tools/bin/ant.bat 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,226 @@
+@echo off
+
+REM Licensed to the Apache Software Foundation (ASF) under one or more
+REM contributor license agreements. See the NOTICE file distributed with
+REM this work for additional information regarding copyright ownership.
+REM The ASF licenses this file to You under the Apache License, Version 2.0
+REM (the "License"); you may not use this file except in compliance with
+REM the License. You may obtain a copy of the License at
+REM
+REM
http://www.apache.org/licenses/LICENSE-2.0
+REM
+REM Unless required by applicable law or agreed to in writing, software
+REM distributed under the License is distributed on an "AS IS" BASIS,
+REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+REM See the License for the specific language governing permissions and
+REM limitations under the License.
+
+REM This is an inordinately troublesome piece of code, particularly because it
+REM tries to work on both Win9x and WinNT-based systems. If we could abandon '9x
+REM support, things would be much easier, but sadly, it is not yet time.
+REM Be cautious about editing this, and only add WinNT specific stuff in code that
+REM only runs on WinNT.
+
+if "%HOME%"=="" goto homeDrivePathPre
+if exist "%HOME%\antrc_pre.bat" call "%HOME%\antrc_pre.bat"
+
+:homeDrivePathPre
+if "%HOMEDRIVE%%HOMEPATH%"=="" goto userProfilePre
+if "%HOMEDRIVE%%HOMEPATH%"=="%HOME%" goto userProfilePre
+if exist "%HOMEDRIVE%%HOMEPATH%\antrc_pre.bat" call
"%HOMEDRIVE%%HOMEPATH%\antrc_pre.bat"
+
+:userProfilePre
+if "%USERPROFILE%"=="" goto alpha
+if "%USERPROFILE%"=="%HOME%" goto alpha
+if "%USERPROFILE%"=="%HOMEDRIVE%%HOMEPATH%" goto alpha
+if exist "%USERPROFILE%\antrc_pre.bat" call
"%USERPROFILE%\antrc_pre.bat"
+
+:alpha
+
+if "%OS%"=="Windows_NT" @setlocal
+if "%OS%"=="WINNT" @setlocal
+
+if "%ANT_HOME%"=="" goto setDefaultAntHome
+
+:stripAntHome
+if not _%ANT_HOME:~-1%==_\ goto checkClasspath
+set ANT_HOME=%ANT_HOME:~0,-1%
+goto stripAntHome
+
+:setDefaultAntHome
+rem %~dp0 is expanded pathname of the current script under NT
+set ANT_HOME=%~dp0..
+
+:checkClasspath
+set _USE_CLASSPATH=yes
+rem CLASSPATH must not be used if it is equal to ""
+if "%CLASSPATH%"=="""" set _USE_CLASSPATH=no
+if "%CLASSPATH%"=="" set _USE_CLASSPATH=no
+
+rem Slurp the command line arguments. This loop allows for an unlimited number
+rem of arguments (up to the command line limit, anyway).
+set ANT_CMD_LINE_ARGS=%1
+if ""%1""=="""" goto doneStart
+shift
+:setupArgs
+if ""%1""=="""" goto doneStart
+if ""%1""==""-noclasspath"" goto clearclasspath
+set ANT_CMD_LINE_ARGS=%ANT_CMD_LINE_ARGS% %1
+shift
+goto setupArgs
+
+rem here is there is a -noclasspath in the options
+:clearclasspath
+set _USE_CLASSPATH=no
+shift
+goto setupArgs
+
+rem This label provides a place for the argument list loop to break out
+rem and for NT handling to skip to.
+
+:doneStart
+
+if _USE_CLASSPATH==no goto findAntHome
+
+:stripClasspath
+if not _%CLASSPATH:~-1%==_\ goto findAntHome
+set CLASSPATH=%CLASSPATH:~0,-1%
+goto stripClasspath
+
+:findAntHome
+rem find ANT_HOME if it does not exist due to either an invalid value passed
+rem by the user or the %0 problem on Windows 9x
+if exist "%ANT_HOME%\lib\ant.jar" goto checkJava
+
+rem check for ant in Program Files
+if not exist "%ProgramFiles%\ant" goto checkSystemDrive
+set ANT_HOME=%ProgramFiles%\ant
+goto checkJava
+
+:checkSystemDrive
+rem check for ant in root directory of system drive
+if not exist %SystemDrive%\ant\lib\ant.jar goto checkCDrive
+set ANT_HOME=%SystemDrive%\ant
+goto checkJava
+
+:checkCDrive
+rem check for ant in C:\ant for Win9X users
+if not exist C:\ant\lib\ant.jar goto noAntHome
+set ANT_HOME=C:\ant
+goto checkJava
+
+:noAntHome
+echo ANT_HOME is set incorrectly or ant could not be located. Please set ANT_HOME.
+goto end
+
+:checkJava
+set _JAVACMD=%JAVACMD%
+
+if "%JAVA_HOME%" == "" goto noJavaHome
+if not exist "%JAVA_HOME%\bin\java.exe" goto noJavaHome
+if "%_JAVACMD%" == "" set _JAVACMD=%JAVA_HOME%\bin\java.exe
+goto checkJikes
+
+:noJavaHome
+if "%_JAVACMD%" == "" set _JAVACMD=java.exe
+
+:checkJikes
+if not "%JIKESPATH%"=="" goto runAntWithJikes
+
+:runAnt
+if "%_USE_CLASSPATH%"=="no" goto runAntNoClasspath
+:runAntWithClasspath
+"%_JAVACMD%" %ANT_OPTS% -classpath "%ANT_HOME%\lib\ant-launcher.jar"
"-Dant.home=%ANT_HOME%" org.apache.tools.ant.launch.Launcher %ANT_ARGS% -cp
"%CLASSPATH%" %ANT_CMD_LINE_ARGS%
+rem Check the error code of the Ant build
+if not "%OS%"=="Windows_NT" goto onError
+set ANT_ERROR=%ERRORLEVEL%
+goto end
+
+:runAntNoClasspath
+"%_JAVACMD%" %ANT_OPTS% -classpath "%ANT_HOME%\lib\ant-launcher.jar"
"-Dant.home=%ANT_HOME%" org.apache.tools.ant.launch.Launcher %ANT_ARGS%
%ANT_CMD_LINE_ARGS%
+rem Check the error code of the Ant build
+if not "%OS%"=="Windows_NT" goto onError
+set ANT_ERROR=%ERRORLEVEL%
+goto end
+
+:runAntWithJikes
+
+if not _%JIKESPATH:~-1%==_\ goto checkJikesAndClasspath
+set JIKESPATH=%JIKESPATH:~0,-1%
+goto runAntWithJikes
+
+:checkJikesAndClasspath
+
+if "%_USE_CLASSPATH%"=="no" goto runAntWithJikesNoClasspath
+
+:runAntWithJikesAndClasspath
+"%_JAVACMD%" %ANT_OPTS% -classpath "%ANT_HOME%\lib\ant-launcher.jar"
"-Dant.home=%ANT_HOME%" "-Djikes.class.path=%JIKESPATH%"
org.apache.tools.ant.launch.Launcher %ANT_ARGS% -cp "%CLASSPATH%"
%ANT_CMD_LINE_ARGS%
+rem Check the error code of the Ant build
+if not "%OS%"=="Windows_NT" goto onError
+set ANT_ERROR=%ERRORLEVEL%
+goto end
+
+:runAntWithJikesNoClasspath
+"%_JAVACMD%" %ANT_OPTS% -classpath "%ANT_HOME%\lib\ant-launcher.jar"
"-Dant.home=%ANT_HOME%" "-Djikes.class.path=%JIKESPATH%"
org.apache.tools.ant.launch.Launcher %ANT_ARGS% %ANT_CMD_LINE_ARGS%
+rem Check the error code of the Ant build
+if not "%OS%"=="Windows_NT" goto onError
+set ANT_ERROR=%ERRORLEVEL%
+goto end
+
+:onError
+rem Windows 9x way of checking the error code. It matches via brute force.
+for %%i in (1 10 100) do set err%%i=
+for %%i in (0 1 2) do if errorlevel %%i00 set err100=%%i
+if %err100%==2 goto onError200
+if %err100%==0 set err100=
+for %%i in (0 1 2 3 4 5 6 7 8 9) do if errorlevel %err100%%%i0 set err10=%%i
+if "%err100%"=="" if %err10%==0 set err10=
+:onError1
+for %%i in (0 1 2 3 4 5 6 7 8 9) do if errorlevel %err100%%err10%%%i set err1=%%i
+goto onErrorEnd
+:onError200
+for %%i in (0 1 2 3 4 5) do if errorlevel 2%%i0 set err10=%%i
+if err10==5 for %%i in (0 1 2 3 4 5) do if errorlevel 25%%i set err1=%%i
+if not err10==5 goto onError1
+:onErrorEnd
+set ANT_ERROR=%err100%%err10%%err1%
+for %%i in (1 10 100) do set err%%i=
+
+:end
+rem bug ID 32069: resetting an undefined env variable changes the errorlevel.
+if not "%_JAVACMD%"=="" set _JAVACMD=
+if not "%_ANT_CMD_LINE_ARGS%"=="" set ANT_CMD_LINE_ARGS=
+
+if "%ANT_ERROR%"=="0" goto mainEnd
+
+rem Set the return code if we are not in NT. We can only set
+rem a value of 1, but it's better than nothing.
+if not "%OS%"=="Windows_NT" echo 1 > nul | choice /n /c:1
+
+rem Set the ERRORLEVEL if we are running NT.
+if "%OS%"=="Windows_NT" color 00
+
+goto omega
+
+:mainEnd
+
+rem If there were no errors, we run the post script.
+if "%OS%"=="Windows_NT" @endlocal
+if "%OS%"=="WINNT" @endlocal
+
+if "%HOME%"=="" goto homeDrivePathPost
+if exist "%HOME%\antrc_post.bat" call "%HOME%\antrc_post.bat"
+
+:homeDrivePathPost
+if "%HOMEDRIVE%%HOMEPATH%"=="" goto userProfilePost
+if "%HOMEDRIVE%%HOMEPATH%"=="%HOME%" goto userProfilePost
+if exist "%HOMEDRIVE%%HOMEPATH%\antrc_post.bat" call
"%HOMEDRIVE%%HOMEPATH%\antrc_post.bat"
+
+:userProfilePost
+if "%USERPROFILE%"=="" goto omega
+if "%USERPROFILE%"=="%HOME%" goto omega
+if "%USERPROFILE%"=="%HOMEDRIVE%%HOMEPATH%" goto omega
+if exist "%USERPROFILE%\antrc_post.bat" call
"%USERPROFILE%\antrc_post.bat"
+
+:omega
+
Property changes on: modules/web/trunk/tools/bin/ant.bat
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/bin/antRun
===================================================================
--- modules/web/trunk/tools/bin/antRun (rev 0)
+++ modules/web/trunk/tools/bin/antRun 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,24 @@
+#! /bin/sh
+
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+# Args: DIR command
+cd "$1"
+CMD="$2"
+shift
+shift
+
+exec "$CMD" "$@"
Property changes on: modules/web/trunk/tools/bin/antRun
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/bin/antRun.bat
===================================================================
--- modules/web/trunk/tools/bin/antRun.bat (rev 0)
+++ modules/web/trunk/tools/bin/antRun.bat 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,50 @@
+@echo off
+
+REM Licensed to the Apache Software Foundation (ASF) under one or more
+REM contributor license agreements. See the NOTICE file distributed with
+REM this work for additional information regarding copyright ownership.
+REM The ASF licenses this file to You under the Apache License, Version 2.0
+REM (the "License"); you may not use this file except in compliance with
+REM the License. You may obtain a copy of the License at
+REM
+REM
http://www.apache.org/licenses/LICENSE-2.0
+REM
+REM Unless required by applicable law or agreed to in writing, software
+REM distributed under the License is distributed on an "AS IS" BASIS,
+REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+REM See the License for the specific language governing permissions and
+REM limitations under the License.
+
+if "%OS%"=="Windows_NT" @setlocal
+if "%OS%"=="WINNT" @setlocal
+
+if ""%1""=="""" goto runCommand
+
+rem Change drive and directory to %1
+if "%OS%"=="Windows_NT" goto nt_cd
+if "%OS%"=="WINNT" goto nt_cd
+cd ""%1""
+goto end_cd
+:nt_cd
+cd /d ""%1""
+:end_cd
+shift
+
+rem Slurp the command line arguments. This loop allows for an unlimited number
+rem of arguments (up to the command line limit, anyway).
+set ANT_RUN_CMD=%1
+if ""%1""=="""" goto runCommand
+shift
+:loop
+if ""%1""=="""" goto runCommand
+set ANT_RUN_CMD=%ANT_RUN_CMD% %1
+shift
+goto loop
+
+:runCommand
+rem echo %ANT_RUN_CMD%
+%ANT_RUN_CMD%
+
+if "%OS%"=="Windows_NT" @endlocal
+if "%OS%"=="WINNT" @endlocal
+
Property changes on: modules/web/trunk/tools/bin/antRun.bat
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/bin/antRun.pl
===================================================================
--- modules/web/trunk/tools/bin/antRun.pl (rev 0)
+++ modules/web/trunk/tools/bin/antRun.pl 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,66 @@
+#!/usr/bin/perl
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+#
+#######################################################################
+#
+# antRun.pl
+#
+# wrapper script for invoking commands on a platform with Perl installed
+# this is akin to antRun.bat, and antRun the SH script
+#
+# created: 2001-10-18
+# author: Jeff Tulley jtulley(a)novell.com
+#######################################################################
+#be fussy about variables
+use strict;
+
+#turn warnings on during dev; generates a few spurious uninitialised var access warnings
+#use warnings;
+
+#and set $debug to 1 to turn on trace info (currently unused)
+my $debug=1;
+
+#######################################################################
+# change drive and directory to "%1"
+my $ANT_RUN_CMD = @ARGV[0];
+
+# assign current run command to "%2"
+chdir (@ARGV[0]) || die "Can't cd to $ARGV[0]: $!\n";
+if ($^O eq "NetWare") {
+ # There is a bug in Perl 5 on NetWare, where chdir does not
+ # do anything. On NetWare, the following path-prefixed form should
+ # always work. (afaict)
+ $ANT_RUN_CMD .= "/".@ARGV[1];
+}
+else {
+ $ANT_RUN_CMD = @ARGV[1];
+}
+
+# dispose of the first two arguments, leaving only the command's args.
+shift;
+shift;
+
+# run the command
+my $returnValue = system $ANT_RUN_CMD, @ARGV;
+if ($returnValue eq 0) {
+ exit 0;
+}
+else {
+ # only 0 and 1 are widely recognized as exit values
+ # so change the exit value to 1
+ exit 1;
+}
Property changes on: modules/web/trunk/tools/bin/antRun.pl
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/bin/antx.bat
===================================================================
--- modules/web/trunk/tools/bin/antx.bat (rev 0)
+++ modules/web/trunk/tools/bin/antx.bat 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,6 @@
+@echo off
+@setlocal
+set CLASSPATH=%~dp0..\lib\ant.jar;%CLASSPATH%
+java org.apache.tools.ant.Launcher %*
+rem java -jar %ANT_HOME%\lib\ant.jar org.apache.tools.ant.Launcher
+@endlocal
Property changes on: modules/web/trunk/tools/bin/antx.bat
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/bin/build.bat
===================================================================
--- modules/web/trunk/tools/bin/build.bat (rev 0)
+++ modules/web/trunk/tools/bin/build.bat 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,83 @@
+@echo off
+rem
+rem Invokes the 'ant.bat' script from the 'tools' module.
+rem
+rem @author Jason Dillon <jason(a)planet57.com>
+rem
+
+rem $Id: build.bat 21 2005-01-14 23:14:21Z vietj $
+
+setlocal
+
+set PROGNAME=%~nx0
+set DIRNAME=%~dp0
+
+rem Legacy shell support
+if x%PROGNAME%==x set PROGNAME=build.bat
+if x%DIRNAME%==x set DIRNAME=.\
+
+rem If not started by the loader script then setup some values
+if x%TOOLS_ROOT%==x set TOOLS_ROOT=%DIRNAME%..
+if x%MODULE_ROOT%==x set MODULE_ROOT=.
+
+rem Setup ant variables
+set ANT=%TOOLS_ROOT%\bin\ant.bat
+set ANT_HOME=%TOOLS_ROOT%
+if x%ANT_LOGGER%==x set ANT_LOGGER=org.apache.tools.ant.NoBannerLogger
+set ANT_OPTIONS=%ANT_OPTIONS% -logger %ANT_LOGGER%
+
+rem Set the minimum and maximum VM heap size
+if x%JVM_MS%==x set JVM_MS=32m
+if x%JVM_MX%==x set JVM_MX=640m
+if x%ANT_OPTS%==x set ANT_OPTS=-Xms%JVM_MS% -Xmx%JVM_MX%
+
+rem Save the arguments to the script
+set ARGS=%*
+
+rem Ignore the user's classpath
+set CLASSPATH=
+
+rem Start'er up yo
+goto main
+
+:debug
+if not x%DEBUG%==x echo %PROGNAME%: %*
+goto :EOF
+
+:set-jaxp
+set ANT_OPTS=%ANT_OPTS% -Djavax.xml.parsers.DocumentBuilderFactory=%1
+set ANT_OPTS=%ANT_OPTS% -Djavax.xml.parsers.SAXParserFactory=%2
+goto :EOF
+
+:main
+call :debug PROGNAME=%PROGNAME%
+call :debug DIRNAME=%DIRNAME%
+call :debug TOOLS_ROOT=%TOOLS_ROOT%
+call :debug MODULE_ROOT=%MODULE_ROOT%
+
+rem Setup JAXP impl
+if x%JAXP%==x set JAXP=crimson
+if %JAXP%==crimson call :set-jaxp org.apache.crimson.jaxp.DocumentBuilderFactoryImpl
org.apache.crimson.jaxp.SAXParserFactoryImpl
+if %JAXP%==xerces call :set-jaxp org.apache.xerces.jaxp.DocumentBuilderFactoryImpl
org.apache.xerces.jaxp.SAXParserFactoryImpl
+rem could complain if invalid JAXP here, but for now forget it
+
+rem Check if the script exits
+if exist %ANT% goto :execute-ant & goto :EOF
+
+echo %PROGNAME%: *ERROR* The ant script does not exist:
+echo %PROGNAME%:
+echo %PROGNAME%: %ANT%
+echo %PROGNAME%:
+echo %PROGNAME%: Please make sure you have checked out the 'tools'
+echo %PROGNAME%: module and make sure it is up to date.
+goto :EOF
+
+:execute-ant
+call :debug Ant JVM options: %ANT_OPTS%
+
+echo Executing %ANT% %ANT_OPTIONS% %ARGS%
+call %ANT% %ANT_OPTIONS% %ARGS%
+
+if x%NOPAUSE%==x pause
+
+goto :EOF
Property changes on: modules/web/trunk/tools/bin/build.bat
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/bin/build.sh
===================================================================
--- modules/web/trunk/tools/bin/build.sh (rev 0)
+++ modules/web/trunk/tools/bin/build.sh 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,145 @@
+#!/bin/sh
+##
+## Sets up the basic environment for Ant and then starts it.
+##
+## @author Jason Dillon <jason(a)planet57.com>
+##
+
+# $Id: build.sh 21 2005-01-14 23:14:21Z vietj $
+
+# If we are running under Cygwin do some translation
+if [ ! -z "$COMSPEC" ]; then
+ temp=`cygpath --unix $0`
+else
+ temp="$0"
+fi
+PROGNAME=`basename $temp`
+DIRNAME=`dirname $temp`
+
+# If we have not been included from the loader script setup some values
+if [ "x$TOOLS_ROOT" = "x" ]; then
+ TOOLS_ROOT=`cd $DIRNAME/.. && pwd`
+fi
+if [ "x$MODULE_ROOT" = "x" ]; then
+ MODULE_ROOT=`pwd`;
+fi
+if [ "$CYGWIN" = true ]; then
+ TOOLS_ROOT=`cygpath --unix $TOOLS_ROOT`
+fi
+
+# Include common /bin/sh functions
+. "$TOOLS_ROOT/bin/common.shlib"
+
+# The minimum and maximum VM heap size
+xset JVM_MS="32m"
+xset JVM_MX="640m"
+
+# Detect which OS we are on
+check_os
+
+TOOLS_ROOT=`convertpath --unix $TOOLS_ROOT`
+MODULE_ROOT=`convertpath --unix $MODULE_ROOT`
+debug "TOOLS_ROOT: $TOOLS_ROOT"
+debug "MODULE_ROOT: $MODULE_ROOT"
+
+# Setup defaults
+xset MAX_FD "maximum"
+xset JAXP "crimson"
+
+# Ignore user's ANT_HOME if it is set
+if [ "x$ANT_HOME" != "x" ]; then
+ warn "Ignoring environment value for \$ANT_HOME"
+fi
+ANT_HOME=`convertpath --unix $TOOLS_ROOT`
+debug "Ant home: $ANT_HOME"
+
+# Use the color logger if requested
+if [ "x$ANT_COLOR" != "x" ]; then
+ xset ANT_LOGGER "org.apache.tools.ant.listener.AnsiColorLogger"
+else
+ xset ANT_LOGGER "org.apache.tools.ant.NoBannerLogger"
+fi
+debug "Using Ant logger: $ANT_LOGGER"
+
+# The nitty gritty dirty fluffy fluff
+main() {
+ # if there is a build config file. then source it
+ maybe_source "$MODULE_ROOT/build.conf" "$HOME/.build.conf"
+
+ # Increase the maximum file descriptors if we can
+ if [ $WIN32 = "false" ]; then
+ MAX_FD_LIMIT=`ulimit -H -n`
+ if [ $? -eq 0 ]; then
+ if [ "$MAX_FD" = "maximum" -o "$MAX_FD" =
"max" ]; then
+ # use the system max
+ MAX_FD="$MAX_FD_LIMIT"
+ fi
+
+ ulimit -n $MAX_FD
+ if [ $? -ne 0 ]; then
+ warn "Could not set maximum file descriptor limit: $MAX_FD"
+ fi
+ else
+ warn "Could not query system maximum file descriptor limit:
$MAX_FD_LIMIT"
+ fi
+ fi
+
+ # Make sure we have one
+ ANT="$ANT_HOME/bin/ant"
+ if [ ! -x "$ANT" ]; then
+ die "Ant script is not executable: $ANT"
+ fi
+
+ # Specify the jaxp parser impls to use
+ debug "JAXP type: $JAXP"
+ case "$JAXP" in
+ crimson)
+ JAXP_DOM_FACTORY="org.apache.crimson.jaxp.DocumentBuilderFactoryImpl"
+ JAXP_SAX_FACTORY="org.apache.crimson.jaxp.SAXParserFactoryImpl"
+ ;;
+
+ xerces)
+ JAXP_DOM_FACTORY="org.apache.xerces.jaxp.DocumentBuilderFactoryImpl"
+ JAXP_SAX_FACTORY="org.apache.xerces.jaxp.SAXParserFactoryImpl"
+ ;;
+
+ *)
+ die "Unknown JAXP impl: $JAXP; define \$JAXP_DOM_FACTORY and
\$JAXP_SAX_FACTORY"
+ ;;
+ esac
+
+ # Set the options which ant will pass to its JVM
+ xset ANT_OPTS "-Xms$JVM_MS -Xmx$JVM_MX"
+
+ if [ "x$JAXP_DOM_FACTORY" != "x" ]; then
+ ANT_OPTS="$ANT_OPTS
-Djavax.xml.parsers.DocumentBuilderFactory=$JAXP_DOM_FACTORY"
+ fi
+ if [ "x$JAXP_SAX_FACTORY" != "x" ]; then
+ ANT_OPTS="$ANT_OPTS -Djavax.xml.parsers.SAXParserFactory=$JAXP_SAX_FACTORY"
+ fi
+ debug "Ant JVM options: $ANT_OPTS"
+
+ # Add some options to Ant
+ xset ANT_OPTIONS "-logger $ANT_LOGGER"
+
+ # Unset the classpath so it will not interfear
+ CLASSPATH=""
+
+ # Export some stuff for Ant
+ export ANT ANT_HOME ANT_OPTS CLASSPATH
+
+ # Change to the directory where the script lives so users are not forced
+ # to be in the same directory as build.xml
+ debug "Entering $MODULE_ROOT"
+ cd $MODULE_ROOT
+
+ notice "Executing: $ANT $ANT_OPTIONS $@"
+ if [ "x$TRACE" != "x" ]; then
+ exec /bin/sh -x $ANT $ANT_OPTIONS "$@"
+ else
+ exec $ANT $ANT_OPTIONS "$@"
+ fi
+}
+
+# Lets get ready to rumble!
+main "$@"
Property changes on: modules/web/trunk/tools/bin/build.sh
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/bin/common.shlib
===================================================================
--- modules/web/trunk/tools/bin/common.shlib (rev 0)
+++ modules/web/trunk/tools/bin/common.shlib 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,189 @@
+#!/bin/sh
+##
+## Definitions of common /bin/sh functions.
+##
+## @author Jason Dillon <jason(a)planet57.com>
+##
+
+# $Id: common.shlib 21 2005-01-14 23:14:21Z vietj $
+
+xset() # <var_name> <value>
+{
+ id=$1; shift; eval "value=\${$id}"
+ if [ "$value" = "" ]; then
+ eval "${id}=\"$*\""
+ fi
+}
+
+xset UNAME "uname"
+xset GAWK "gawk"
+xset EGREP "egrep"
+
+die() {
+ echo "${PROGNAME}: *FATAL* $*"
+ exit 1
+}
+
+warn() {
+ echo "${PROGNAME}: *WARNING* $*"
+}
+
+notice() {
+ echo "${PROGNAME}: $*"
+}
+
+debug() {
+ if [ "x$DEBUG" != "x" ]; then
+ echo "${PROGNAME}: $*"
+ fi
+}
+
+search() {
+ mode="$1"; shift
+ suffix="$1"; shift
+ search="$*"
+
+ for d in $search; do
+ x="$d/$suffix"
+ if [ $mode "$x" ]; then
+ # found a match
+ echo $d
+ break
+ fi
+ done
+}
+
+call () # <func_name>
+{
+ if [ -r "$RC" ]; then
+ temp=`$EGREP "^${1} \(\)" $RC`
+ if [ "$temp" != "" ]; then
+ eval $1
+ fi
+ fi
+}
+
+push () # <var_name> <list>
+{
+ _id=$1; _value=; shift
+ while [ "$1" != "" ]; do
+ eval "_value=$`echo $_id`"
+ eval "${_id}='`echo $_value` $1'"
+ shift
+ done
+ unset _id _value
+}
+
+prepend () # <var_name> <value>
+{
+ _id=$1; _value=; shift
+ eval "_value=$`echo $_id`"
+ eval "${_id}='${1}`echo $_value`'"
+ unset _id _value
+}
+
+append () # <var_name> <value>
+{
+ _id=$1; _value=; shift
+ eval "_value=$`echo $_id`"
+ eval "${_id}='`echo $_value`$1'"
+ unset _id _value
+}
+
+source () # <file_list>
+{
+ for file in "$*"; do
+ . $file
+ done
+}
+
+dump_var () # <var_name>
+{
+ _id=$1; _value=
+ eval "_value=$`echo $_id`"
+ echo "${_id}: $_value"
+}
+
+math () # <expression>
+{
+ echo `$GAWK "BEGIN { print $* }"`
+}
+
+pick () # <index> <list>
+{
+ c=1; i="$1"; shift
+ while [ "$c" -lt "$i" ]; do
+ c=`math $c + 1`
+ shift
+ done
+ echo "$1"
+}
+
+random () # <list>
+{
+ c=`echo $* | $WC -w`
+ i=`$GAWK "BEGIN{ srand(); print int( 1 + ( 1000000 * rand() ) % $c ) }"`
+ echo "`pick $i $*`"
+}
+
+check_arg () # <option_name> <expected_value>
+{
+ if [ "$2" = "" ]; then
+ die "option '$1' requires an additional argument"
+ fi
+}
+
+check_os()
+{
+ # OS specific support (must be 'true' or 'false').
+ CYGWIN=false
+ DARWIN=false
+ WIN32=false
+ export CYGWIN DARWIN WIN32
+
+ systype=`$UNAME`
+ debug "System Type: $systype"
+ if [ -z "$systype" ]; then
+ die "Unable to determine system type; uname return null output."
+ fi
+
+ case "$systype" in
+ CYGWIN*)
+ CYGWIN=true
+ WIN32=true
+ debug "Detected CYGWIN"
+ ;;
+
+ Darwin*)
+ DARWIN=true
+ debug "Detected DARWIN (MacOS X)"
+ ;;
+
+ *)
+ if [ ! -z "$COMSPEC" ]; then
+ WIN32=true
+ debug "Detected generic win32 environemnt"
+ fi
+ ;;
+ esac
+}
+
+maybe_source() {
+ for file in $*; do
+ if [ -f "$file" ]; then
+ . $file
+ fi
+ done
+}
+
+convertpath()
+{
+ options=$1; shift
+ temp=$*
+ if [ "$CYGWIN" = true ]; then
+ temp=`cygpath $options $temp`
+ fi
+ echo $temp
+}
+
+debug "Common functions loaded"
Property changes on: modules/web/trunk/tools/bin/common.shlib
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/bin/complete-ant-cmd.pl
===================================================================
--- modules/web/trunk/tools/bin/complete-ant-cmd.pl (rev 0)
+++ modules/web/trunk/tools/bin/complete-ant-cmd.pl 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,114 @@
+#!/usr/bin/perl
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+#
+# A script to allow Bash or Z-Shell to complete an Ant command-line.
+#
+# To install for Bash 2.0 or better, add the following to ~/.bashrc:
+#
+# $ complete -C complete-ant-cmd ant build.sh
+#
+# To install for Z-Shell 2.5 or better, add the following to ~/.zshrc:
+#
+# function ant_complete () {
+# local args_line args
+# read -l args_line
+# set -A args $args_line
+# set -A reply $(COMP_LINE=$args_line complete-ant-cmd ${args[1]} $1)
+# }
+# compctl -K ant_complete ant build.sh
+#
+# @author Mike Williams <mikew(a)cortexebusiness.com.au>
+
+my $cmdLine = $ENV{'COMP_LINE'};
+my $antCmd = $ARGV[0];
+my $word = $ARGV[1];
+
+my @completions;
+if ($word =~ /^-/) {
+ list( restrict( $word, getArguments() ));
+} elsif ($cmdLine =~ /-(f|buildfile)\s+\S*$/) {
+ list( getBuildFiles($word) );
+} else {
+ list( restrict( $word, getTargets() ));
+}
+
+exit(0);
+
+sub list {
+ for (@_) {
+ print "$_\n";
+ }
+}
+
+sub restrict {
+ my ($word, @completions) = @_;
+ grep( /^\Q$word\E/, @completions );
+}
+
+sub getArguments {
+ qw(-buildfile -debug -emacs -f -find -help -listener -logfile
+ -logger -projecthelp -quiet -verbose -version);
+}
+
+
+sub getBuildFiles {
+ my ($word) = @_;
+ grep( /\.xml$/, glob( "$word*" ));
+}
+
+sub getTargets {
+
+ # Look for build-file
+ my $buildFile = 'build.xml';
+ if ($cmdLine =~ /-(f|buildfile)\s+(\S+)/) {
+ $buildFile = $2;
+ }
+ return () unless (-f $buildFile);
+
+ # Run "ant -projecthelp" to list targets. Keep a cache of results in a
+ # cache-file.
+ my $cacheFile = $buildFile;
+ $cacheFile =~ s|(.*/)?(.*)|${1}.ant-targets-${2}|;
+ if ((!-e $cacheFile) || (-M $buildFile) < (-M $cacheFile)) {
+ open( CACHE, '>'.$cacheFile ) || die "can\'t write
$cacheFile: $!\n";
+ open( HELP, "$antCmd -projecthelp -f '$buildFile'|" ) ||
return();
+ my %targets;
+ while( <HELP> ) {
+ if (/^\s+(\S+)/) {
+ $targets{$1}++;
+ }
+ }
+ my @targets = sort keys %targets;
+ for (@targets) { print CACHE "$_\n"; }
+ return @targets;
+ }
+
+ # Read the target-cache
+ open( CACHE, $cacheFile ) || die "can\'t read $cacheFile: $!\n";
+ my @targets;
+ while (<CACHE>) {
+ chop;
+ s/\r$//; # for Cygwin
+ push( @targets, $_ );
+ }
+ close( CACHE );
+ @targets;
+
+}
+
+
+
Property changes on: modules/web/trunk/tools/bin/complete-ant-cmd.pl
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/bin/lcp.bat
===================================================================
--- modules/web/trunk/tools/bin/lcp.bat (rev 0)
+++ modules/web/trunk/tools/bin/lcp.bat 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,31 @@
+REM
+REM Licensed to the Apache Software Foundation (ASF) under one or more
+REM contributor license agreements. See the NOTICE file distributed with
+REM this work for additional information regarding copyright ownership.
+REM The ASF licenses this file to You under the Apache License, Version 2.0
+REM (the "License"); you may not use this file except in compliance with
+REM the License. You may obtain a copy of the License at
+REM
+REM
http://www.apache.org/licenses/LICENSE-2.0
+REM
+REM Unless required by applicable law or agreed to in writing, software
+REM distributed under the License is distributed on an "AS IS" BASIS,
+REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+REM See the License for the specific language governing permissions and
+REM limitations under the License.
+REM
+REM
+
+set _CLASSPATHCOMPONENT=%1
+if ""%1""=="""" goto gotAllArgs
+shift
+
+:argCheck
+if ""%1""=="""" goto gotAllArgs
+set _CLASSPATHCOMPONENT=%_CLASSPATHCOMPONENT% %1
+shift
+goto argCheck
+
+:gotAllArgs
+set LOCALCLASSPATH=%LOCALCLASSPATH%;%_CLASSPATHCOMPONENT%
+
Property changes on: modules/web/trunk/tools/bin/lcp.bat
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/bin/runant.pl
===================================================================
--- modules/web/trunk/tools/bin/runant.pl (rev 0)
+++ modules/web/trunk/tools/bin/runant.pl 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,153 @@
+#!/usr/bin/perl
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+#
+#######################################################################
+#
+# runant.pl
+#
+# wrapper script for invoking ant in a platform with Perl installed
+# this may include cgi-bin invocation, which is considered somewhat daft.
+# (slo: that should be a separate file which can be derived from this
+# and returns the XML formatted output)
+#
+# the code is not totally portable due to classpath and directory splitting
+# issues. oops. (NB, use File::Spec::Functions will help and the code is
+# structured for the catfile() call, but because of perl version funnies
+# the code is not included.
+#
+# created: 2000-8-24
+# author: Steve Loughran steve_l(a)sourceforge.net
+#######################################################################
+#
+# Assumptions:
+#
+# - the "java" executable/script is on the command path
+# - ANT_HOME has been set
+# - target platform uses ":" as classpath separator or perl indicates it is
dos/win32
+# - target platform uses "/" as directory separator.
+
+#be fussy about variables
+use strict;
+
+#platform specifics (disabled)
+#use File::Spec::Functions;
+
+#turn warnings on during dev; generates a few spurious uninitialised var access warnings
+#use warnings;
+
+#and set $debug to 1 to turn on trace info
+my $debug=1;
+
+#######################################################################
+#
+# check to make sure environment is setup
+#
+
+my $HOME = $ENV{ANT_HOME};
+if ($HOME eq "")
+ {
+ die "\n\nANT_HOME *MUST* be set!\n\n";
+ }
+
+my $JAVACMD = $ENV{JAVACMD};
+$JAVACMD = "java" if $JAVACMD eq "";
+
+my $onnetware = 0;
+if ($^O eq "NetWare")
+{
+ $onnetware = 1;
+}
+
+my $oncygwin = ($^O eq "cygwin");
+
+#ISSUE: what java wants to split up classpath varies from platform to platform
+#and perl is not too hot at hinting which box it is on.
+#here I assume ":" 'cept on win32, dos, and netware. Add extra tests here
as needed.
+my $s=":";
+if(($^O eq "MSWin32") || ($^O eq "dos") || ($^O eq
"cygwin") ||
+ ($onnetware == 1))
+ {
+ $s=";";
+ }
+
+#build up standard classpath
+my $localpath = "$HOME/lib/ant-launcher.jar";
+#set JVM options and Ant arguments, if any
+my @ANT_OPTS=split(" ", $ENV{ANT_OPTS});
+my @ANT_ARGS=split(" ", $ENV{ANT_ARGS});
+
+#jikes
+if($ENV{JIKESPATH} ne "")
+ {
+ push @ANT_OPTS, "-Djikes.class.path=$ENV{JIKESPATH}";
+ }
+
+#construct arguments to java
+my @ARGS;
+push @ARGS, @ANT_OPTS;
+
+my $CYGHOME = "";
+
+my $classpath=$ENV{CLASSPATH};
+if ($oncygwin == 1) {
+ $localpath = `cygpath --path --windows $localpath`;
+ chomp ($localpath);
+ if (! $classpath eq "")
+ {
+ $classpath = `cygpath --path --windows "$classpath"`;
+ chomp ($classpath);
+ }
+ $HOME = `cygpath --path --windows $HOME`;
+ chomp ($HOME);
+ $CYGHOME = `cygpath --path --windows $ENV{HOME}`;
+ chomp ($CYGHOME);
+}
+push @ARGS, "-classpath", "$localpath";
+push @ARGS, "-Dant.home=$HOME";
+if ( ! $CYGHOME eq "" )
+{
+ push @ARGS, "-Dcygwin.user.home=\"$CYGHOME\""
+}
+push @ARGS, "org.apache.tools.ant.launch.Launcher", @ANT_ARGS;
+push @ARGS, @ARGV;
+if (! $classpath eq "")
+{
+ if ($onnetware == 1)
+ {
+ # make classpath literally $CLASSPATH
+ # this is to avoid pushing us over the 512 character limit
+ # even skip the ; - that is already in $localpath
+ push @ARGS, "-lib", "\$CLASSPATH";
+ }
+ else
+ {
+ push @ARGS, "-lib", "$classpath";
+ }
+}
+print "\n $JAVACMD @ARGS\n\n" if ($debug);
+
+my $returnValue = system $JAVACMD, @ARGS;
+if ($returnValue eq 0)
+ {
+ exit 0;
+ }
+else
+ {
+ # only 0 and 1 are widely recognized as exit values
+ # so change the exit value to 1
+ exit 1;
+ }
Property changes on: modules/web/trunk/tools/bin/runant.pl
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/bin/runant.py
===================================================================
--- modules/web/trunk/tools/bin/runant.py (rev 0)
+++ modules/web/trunk/tools/bin/runant.py 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,102 @@
+#!/usr/bin/python
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+#
+
+"""
+
+ runant.py
+
+ This script is a translation of the runant.pl written by Steve Loughran.
+ It runs ant with/out arguments, it should be quite portable (thanks to
+ the python os library)
+ This script has been tested with Python2.0/Win2K
+
+ created: 2001-04-11
+ author: Pierre Dittgen pierre.dittgen(a)criltelecom.com
+
+ Assumptions:
+
+ - the "java" executable/script is on the command path
+"""
+import os, os.path, string, sys
+
+# Change it to 1 to get extra debug information
+debug = 0
+
+#######################################################################
+
+# If ANT_HOME is not set default to script's parent directory
+if os.environ.has_key('ANT_HOME'):
+ ANT_HOME = os.environ['ANT_HOME']
+else:
+ ANT_HOME = os.path.dirname(os.path.dirname(os.path.abspath(sys.argv[0])))
+
+# set ANT_LIB location
+ANT_LIB = os.path.join(ANT_HOME, 'lib')
+
+# set JAVACMD (check variables JAVACMD and JAVA_HOME)
+JAVACMD = None
+if not os.environ.has_key('JAVACMD'):
+ if os.environ.has_key('JAVA_HOME'):
+ if not os.path.exists(os.environ['JAVA_HOME']):
+ print "Warning: JAVA_HOME is not defined correctly."
+ else:
+ JAVACMD = os.path.join(os.environ['JAVA_HOME'], 'bin',
'java')
+ else:
+ print "Warning: JAVA_HOME not set."
+else:
+ JAVACMD = os.environ['JAVACMD']
+if not JAVACMD:
+ JAVACMD = 'java'
+
+launcher_jar = os.path.join(ANT_LIB, 'ant-launcher.jar')
+if not os.path.exists(launcher_jar):
+ print 'Unable to locate ant-launcher.jar. Expected to find it in %s' % \
+ ANT_LIB
+
+# Build up standard classpath (LOCALCLASSPATH)
+LOCALCLASSPATH = launcher_jar
+if os.environ.has_key('LOCALCLASSPATH'):
+ LOCALCLASSPATH += os.pathsep + os.environ['LOCALCLASSPATH']
+
+ANT_OPTS = ""
+if os.environ.has_key('ANT_OPTS'):
+ ANT_OPTS = os.environ['ANT_OPTS']
+
+OPTS = ""
+if os.environ.has_key('JIKESPATH'):
+ OPTS = '-Djikes.class.path=\"%s\"' %
os.environ['JIKESPATH']
+
+ANT_ARGS = ""
+if os.environ.has_key('ANT_ARGS'):
+ ANT_ARGS = os.environ['ANT_ARGS']
+
+CLASSPATH = ""
+if os.environ.has_key('CLASSPATH'):
+ CLASSPATH = os.environ['CLASSPATH']
+
+# Builds the commandline
+cmdline = ('%s %s -classpath %s -Dant.home=%s %s ' + \
+ 'org.apache.tools.ant.launch.Launcher %s -lib %s %s') \
+ % (JAVACMD, ANT_OPTS, LOCALCLASSPATH, ANT_HOME, OPTS, ANT_ARGS, \
+ CLASSPATH, string.join(sys.argv[1:], ' '))
+
+if debug:
+ print '\n%s\n\n' % (cmdline)
+sys.stdout.flush()
+
+# Run the biniou!
+os.system(cmdline)
Property changes on: modules/web/trunk/tools/bin/runant.py
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/bin/ubuild.bat
===================================================================
--- modules/web/trunk/tools/bin/ubuild.bat (rev 0)
+++ modules/web/trunk/tools/bin/ubuild.bat 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,81 @@
+@echo off
+rem
+rem Invokes the 'build.sh' script from the 'tools' module with
+rem the ASH shell provided by the 'tools-win32' module.
+rem
+rem @author Jason Dillon <jason(a)planet57.com>
+rem
+
+rem $Id: ubuild.bat 21 2005-01-14 23:14:21Z vietj $
+
+setlocal
+
+set PROGNAME=%~nx0
+set DIRNAME=%~dp0
+
+rem Legacy shell support
+if x%PROGNAME%==x set PROGNAME=build.bat
+if x%DIRNAME%==x set DIRNAME=.\
+
+rem If not started by the loader script then setup some values
+if x%TOOLS_ROOT%==x set TOOLS_ROOT=%DIRNAME%..
+if x%MODULE_ROOT%==x set MODULE_ROOT=.
+
+set SHELL=%TOOLS_ROOT%\win32\ash.exe
+set SHELL_OPTS=
+if not x%TRACE%==x set SHELL_OPTS=-x
+
+set BUILD_SH=%TOOLS_ROOT%\bin\build.sh
+set FALLBACK_BUILD_BAT=%TOOLS_ROOT%\bin\fb-build.bat
+set ARGS=%*
+
+rem Setup the command search path to include our binaries
+set PATH=%TOOLS_ROOT%\win32;%TOOLS_ROOT%\bin;%PATH%
+
+rem Start'er up yo
+goto main
+
+:debug
+if not x%DEBUG%==x echo %PROGNAME%: %*
+goto :EOF
+
+:main
+call :debug PROGNAME=%PROGNAME%
+call :debug DIRNAME=%DIRNAME%
+call :debug TOOLS_ROOT=%TOOLS_ROOT%
+call :debug MODULE_ROOT=%MODULE_ROOT%
+call :debug SHELL=%SHELL%
+call :debug PATH=%PATH%
+
+if exist %SHELL% goto :check-script & goto :EOF
+rem else fail, we can not go on (might consider just calling ant here
+rem %FALLBACK_BUILD_BAT%)
+
+echo %PROGNAME%: *ERROR* The command shell does not exist:
+echo %PROGNAME%:
+echo %PROGNAME%: %SHELL%
+echo %PROGNAME%:
+echo %PROGNAME%: Please make sure you have checked out the 'tools-win32'
+echo %PROGNAME%: module and make sure it is up to date.
+goto :EOF
+
+:check-script
+call :debug BUILD_SH=%BUILD_SH%
+if exist %BUILD_SH% goto :execute-shell & goto :EOF
+rem else fail, we can not go on
+
+echo %PROGNAME%: *ERROR* The target script does not exist:
+echo %PROGNAME%:
+echo %PROGNAME%: %BUILD_SH%
+echo %PROGNAME%:
+echo %PROGNAME%: Please make sure you have checked out the 'tools'
+echo %PROGNAME%: module and make sure it is up to date.
+goto :EOF
+
+:execute-shell
+call :debug Executing %SHELL% %SHELL_OPTS% %BUILD_SH% %ARGS%
+%SHELL% %SHELL_OPTS% %BUILD_SH% %ARGS%
+
+if x%NOPAUSE%==x pause
+
+goto :EOF
Property changes on: modules/web/trunk/tools/bin/ubuild.bat
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/build.xml
===================================================================
--- modules/web/trunk/tools/build.xml (rev 0)
+++ modules/web/trunk/tools/build.xml 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,163 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE project [
+ <!ENTITY buildmagic SYSTEM
"../tools/etc/buildfragments/buildmagic.ent">
+ <!ENTITY tools SYSTEM "../tools/etc/buildfragments/tools.ent">
+ <!ENTITY libraries SYSTEM "../thirdparty/libraries.ent">
+ <!ENTITY modules SYSTEM "../tools/etc/buildfragments/modules.ent">
+ <!ENTITY defaults SYSTEM
"../tools/etc/buildfragments/defaults.ent">
+ <!ENTITY targets SYSTEM "../tools/etc/buildfragments/targets.ent">
+ ]>
+
+<!-- $Id: build.xml 6206 2007-02-11 00:33:46Z julien(a)jboss.com $ -->
+
+<!--+======================================================================+-->
+<!--| JBoss Portal (The OpenSource Portal) Build File |-->
+<!--| |-->
+<!--| Distributable under LGPL license. |-->
+<!--| See terms of license at
http://www.gnu.org. |-->
+<!--| |-->
+<!--| This file has been designed to work with the 'tools' module and
|-->
+<!--| Buildmagic extentions. |-->
+<!--+======================================================================+-->
+
+<project default="main" name="JBoss Portal">
+
+ <!--+====================================================================+-->
+ <!--| Setup |-->
+ <!--| |-->
+ <!--| Include the common build elements. |-->
+ <!--| |-->
+ <!--| This defines several different targets, properties and paths. |-->
+ <!--| It also sets up the basic extention tasks amoung other things. |-->
+ <!--+====================================================================+-->
+
+ &buildmagic;
+ &modules;
+ &defaults;
+ &tools;
+ &targets;
+
+ <!-- ================================================================== -->
+ <!-- Initialization -->
+ <!-- ================================================================== -->
+
+ <!--
+ | Initialize the build system. Must depend on '_buildmagic:init'.
+ | Other targets should depend on 'init' or things will mysteriously fail.
+ -->
+
+ <target name="init" unless="init.disable"
depends="_buildmagic:init">
+ </target>
+
+ <!--+====================================================================+-->
+ <!--| Configuration |-->
+ <!--| |-->
+ <!--| This target is invoked by the Buildmagic initialization logic |-->
+ <!--| and should contain module specific configuration elements. |-->
+ <!--+====================================================================+-->
+
+ <target name="configure" unless="configure.disable">
+
+ <!-- Configure thirdparty libraries -->
+ &libraries;
+ <path id="library.classpath">
+ <path refid="wutka.dtdparser.classpath"/>
+ </path>
+
+ <!-- Configure modules -->
+ <call target="configure-modules"/>
+ <path id="dependentmodule.classpath">
+ </path>
+
+ <!--+=======================================+-->
+ <!--| Override any default properties here. |-->
+ <!--+=======================================+-->
+
+ <!-- Configure defaults & build tools -->
+ <call target="configure-defaults"/>
+ <call target="configure-tools"/>
+
+ <!--+=======================================+-->
+ <!--| Define module specific elements here. |-->
+ <!--+=======================================+-->
+ <property name="javadoc.private" value="true"/>
+ <property name="javadoc.protected" value="false"/>
+
+ </target>
+
+
+ <!--+====================================================================+-->
+ <!--| Compile |-->
+ <!--| |-->
+ <!--| This target should depend on other compile-* targets for each |-->
+ <!--| different type of compile that needs to be performed, short of |-->
+ <!--| documentation compiles. |-->
+ <!--+====================================================================+-->
+
+ <target name="compile"
+ description="Compile all source files."
+ depends="
+ _default:compile-classes,
+ _default:compile-etc,
+ _default:compile-resources">
+ <!-- Add module specific elements here. -->
+ </target>
+
+ <!--+====================================================================+-->
+ <!--| Generate Output |-->
+ <!--| |-->
+ <!--| Generates the target output for this module. Target output is |-->
+ <!--| the output which is ment to be released or used by external |-->
+ <!--| modules. |-->
+ <!--+====================================================================+-->
+
+ <target name="output"
+ description="Generate all target output."
+ depends="compile">
+
+ <mkdir dir="${build.lib}"/>
+
+ <jar jarfile="${build.lib}/portal-tools-lib.jar">
+ <fileset dir="${build.classes}">
+ </fileset>
+ </jar>
+ </target>
+
+ <!-- ================================================================== -->
+ <!-- Cleaning -->
+ <!-- ================================================================== -->
+
+ <!-- Clean up all build output -->
+ <target name="clean" depends="_default:clean">
+ <!-- Add module specific elements here. -->
+ </target>
+
+ <!--+====================================================================+-->
+ <!--| Documents |-->
+ <!--| |-->
+ <!--| Generate all documentation for this module. |-->
+ <!--+====================================================================+-->
+
+ <target name="docs" depends="_default:docs">
+ <!-- Add module specific elements here. -->
+ </target>
+
+ <!-- ================================================================== -->
+ <!-- Misc. -->
+ <!-- ================================================================== -->
+
+ <target name="main" depends="most"/>
+ <target name="all" depends="_default:all"/>
+ <target name="most" depends="_default:most"/>
+ <target name="help" depends="_default:help"/>
+
+ <target name="test" depends="init">
+ <java classname="org.jboss.portal.tools.dtd.Test">
+ <classpath>
+ <pathelement location="${build.classes}"/>
+ <path refid="library.classpath"/>
+ </classpath>
+ </java>
+ </target>
+
+</project>
Property changes on: modules/web/trunk/tools/build.xml
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/buildfragments/autoload.properties
===================================================================
--- modules/web/trunk/tools/etc/buildfragments/autoload.properties
(rev 0)
+++ modules/web/trunk/tools/etc/buildfragments/autoload.properties 2007-08-14 10:47:21 UTC
(rev 7913)
@@ -0,0 +1,20 @@
+### ====================================================================== ###
+## ##
+## BuildMagic tasks which will be autoloaded. ##
+## ##
+### ====================================================================== ###
+
+### $Id: autoload.properties 21 2005-01-14 23:14:21Z vietj $ ###
+
+### Stuff that glues things together ###
+
+resolveproperties=org.jboss.tools.buildmagic.task.ResolveProperties
+resolver=org.jboss.tools.buildmagic.task.ResolveProperties
+propertyfilter=org.jboss.tools.buildmagic.task.PropertyFilter
+require=org.jboss.tools.buildmagic.task.Require
+call=org.jboss.tools.buildmagic.task.CallTarget
+
+### Project/Module tasks ###
+
+execmodules=org.jboss.tools.buildmagic.task.module.ExecuteModules
+moduleconfig=org.jboss.tools.buildmagic.task.module.ModuleConfig
Property changes on: modules/web/trunk/tools/etc/buildfragments/autoload.properties
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/buildfragments/buildmagic.ent
===================================================================
--- modules/web/trunk/tools/etc/buildfragments/buildmagic.ent (rev
0)
+++ modules/web/trunk/tools/etc/buildfragments/buildmagic.ent 2007-08-14 10:47:21 UTC (rev
7913)
@@ -0,0 +1,1124 @@
+<!-- $Id: buildmagic.ent 7028 2007-04-23 12:58:04Z julien(a)jboss.com $ -->
+
+<!-- ================================================================== -->
+<!-- Initialization -->
+<!-- ================================================================== -->
+
+<!-- Initialize the build system. -->
+<target name="_buildmagic:init" unless="init.disable">
+
+ <!-- Make sure we have the right version of Ant -->
+ <property name="buildmagic.ant.baseversion" value="1.5"/>
+
+ <!--
+ | Add new conditions for other supported Ant versions when they
+ | become avaialble.
+ -->
+
+ <condition property="buildmagic.ant.compatible">
+ <and>
+ <contains string="${ant.version}"
+ substring="Ant version ${buildmagic.ant.baseversion}"/>
+ </and>
+ </condition>
+
+ <!--fail unless="buildmagic.ant.compatible">
+
+ Unsupported Ant version:
+
+ ${ant.version}
+
+ Please install a version which is compatible with Ant ${buildmagic.ant.baseversion}.
+
+ </fail-->
+
+ <!-- JDK Detection -->
+ <available classname="java.lang.Void"
property="HAVE_JDK_1.1"/>
+ <available classname="java.lang.ThreadLocal"
property="HAVE_JDK_1.2"/>
+ <available classname="java.lang.StrictMath"
property="HAVE_JDK_1.3"/>
+ <available classname="java.lang.StackTraceElement"
property="HAVE_JDK_1.4"/>
+ <available classname="java.lang.Enum"
property="HAVE_JDK_1.5"/>
+
+ <!-- Setup the project environment. -->
+ <dirname property="project.root" file="${basedir}"/>
+ <property name="project.build"
value="${project.root}/build"/>
+ <property name="project.tools"
value="${project.root}/tools"/>
+ <property name="project.thirdparty"
value="${project.root}/thirdparty"/>
+
+ <!-- Setup the module environment. -->
+ <property name="module.root" value="${basedir}"/>
+ <property name="module.source" value="${module.root}/src"/>
+ <property name="module.output"
value="${module.root}/output"/>
+ <property name="module.tools" value="${module.root}/tools"/>
+ <property name="module.thirdparty"
value="${module.root}/thirdparty"/>
+
+ <!-- Load Buildmagic extention tasks. -->
+ <property name="buildmagic.local.classpath" value="."/>
+ <path id="buildmagic.task.classpath">
+ <fileset dir="${project.tools}/lib">
+ <include name="*"/>
+ </fileset>
+ <pathelement location="${project.tools}/lib"/>
+ <pathelement location="${project.tools}/etc"/>
+ <pathelement location="${project.tools}"/>
+ <pathelement path="${buildmagic.local.classpath}"/>
+ </path>
+ <taskdef file="${project.tools}/etc/buildfragments/autoload.properties"
+ classpathref="buildmagic.task.classpath"/>
+ <taskdef name="property"
classname="org.jboss.tools.buildmagic.task.Property"
+ classpathref="buildmagic.task.classpath"/>
+
+ <!-- Include user and project property overrides. -->
+ <call target="_buildmagic:init:module-local-properties">
+ <available file="${module.root}/etc/local.properties-example"
property="init.have-local-properties"/>
+ </call>
+ <property file="${module.root}/local.properties"/>
+ <call target="_buildmagic:init:project-local-properties">
+ <available file="${project.build}/etc/local.properties-example"
property="init.have-local-properties"/>
+ </call>
+ <property file="${project.build}/local.properties"/>
+ <property file="${user.home}/.buildmagic.properties"/>
+ <property file="${user.home}/.ant.properties"/>
+
+ <!-- Setup the JBoss environment -->
+ <property environment="env"/>
+
+ <!-- Define jboss home -->
+ <condition property="jboss.home" value="${env.JBOSS_HOME}">
+ <not>
+ <isset property="jboss.home"/>
+ </not>
+ </condition>
+
+ <!-- Setup the build.log -->
+ <call target="_buildmagic:init:buildlog"
unless="init-buildlog.disable"/>
+
+ <!-- Load common properties -->
+ <property
file="${project.tools}/etc/buildfragments/common.properties"/>
+
+ <!-- Load db properties -->
+ <loadproperties srcFile="${project.root}/build/etc/hsqldb.properties">
+ <filterchain>
+ <prefixlines prefix="hsqldb."/>
+ </filterchain>
+ </loadproperties>
+ <loadproperties srcFile="${project.root}/build/etc/mysql.properties">
+ <filterchain>
+ <prefixlines prefix="mysql."/>
+ </filterchain>
+ </loadproperties>
+ <loadproperties srcFile="${project.root}/build/etc/mysql5.properties">
+ <filterchain>
+ <prefixlines prefix="mysql5."/>
+ </filterchain>
+ </loadproperties>
+ <loadproperties srcFile="${project.root}/build/etc/oracle.properties">
+ <filterchain>
+ <prefixlines prefix="oracle."/>
+ </filterchain>
+ </loadproperties>
+ <loadproperties
srcFile="${project.root}/build/etc/postgresql.properties">
+ <filterchain>
+ <prefixlines prefix="postgresql."/>
+ </filterchain>
+ </loadproperties>
+ <loadproperties
srcFile="${project.root}/build/etc/sqlserver.properties">
+ <filterchain>
+ <prefixlines prefix="sqlserver."/>
+ </filterchain>
+ </loadproperties>
+
+ <!-- Do not continue if the database properties file does not exist -->
+ <condition property="database.properties.is.here">
+ <and>
+ <available
file="${project.root}/build/etc/${portal.database}.properties"/>
+ </and>
+ </condition>
+ <fail unless="database.properties.is.here">
+The database properties file is not present
+ </fail>
+
+ <!-- Load database specific properties -->
+ <property
file="${project.root}/build/etc/${portal.database}.properties"/>
+ <property name="hibernate.properties"
value="${project.root}/build/etc/${portal.database}.properties"/>
+
+ <!-- Load the junit extension -->
+ <path id="junit_.task.classpath">
+ <pathelement location="${project.tools}/lib/explode.jar"/>
+ </path>
+ <taskdef
+ name="junit_"
+ classname="org.jboss.portal.common.junit.ant.ConfigurableJUnitTask"
+ classpathref="junit_.task.classpath"/>
+
+ <!-- Setup the build timestamp & build identifer properties -->
+ <tstamp>
+ <format property="build.number" pattern="yyyyMMddHHmm"/>
+ <format property="YEAR" pattern="yyyy"/>
+ </tstamp>
+ <property name="build.id" value="${build.number}"/>
+
+ <!-- Invoke the configure task -->
+ <call target="configure" unless="configure.disable"/>
+
+ <!-- Set up default value of classpath for test drivers -->
+ <condition property="driver.path"
value="${hsqldb.hsqldb.lib}/hsqldb.jar">
+ <not>
+ <isset property="driver.path"/>
+ </not>
+ </condition>
+
+ <!-- Load common task properties -->
+ <property file="${project.tools}/etc/buildfragments/task.properties"/>
+
+ <property name="build-bypass.marker"
value="${module.output}/build-marker"/>
+
+ <!-- Install filters -->
+ <propertyfilter all="${buildmagic.propertyfilter.all}"/>
+
+ <call target="_buildmagic:init:show-environment"
if="init.verbose"/>
+
+ <!-- Finish up -->
+ <property name="init.disable" value="true"/>
+</target>
+
+<!-- Install the local.properties for the module example if it is there -->
+<target name="_buildmagic:init:module-local-properties">
+ <!-- Setup the module local.properties file as needed -->
+ <copy file="${module.root}/etc/local.properties-example"
+ tofile="${module.root}/local.properties"
filtering="yes"/>
+</target>
+
+<!-- Install the local.properties for the project example if it is there -->
+<target name="_buildmagic:init:project-local-properties">
+ <!-- Setup the project local.properties file as needed -->
+ <copy file="${project.build}/etc/local.properties-example"
+ tofile="${project.build}/local.properties"
filtering="yes"/>
+</target>
+
+<!-- Initialize the build.log -->
+<target name="_buildmagic:init:buildlog">
+ <property name="buildlog.level" value="info"/>
+ <record name="${basedir}/build.log" append="no"
loglevel="${buildlog.level}"/>
+ <property name="init-buildlog.disable" value="true"
system="true"/>
+</target>
+
+<!-- Show the running environment if -Dinit.verbose=true -->
+<target name="_buildmagic:init:show-environment">
+ <echo><![CDATA[
+project.root: ${project.root}
+module.root: ${module.root}
+user.home: ${user.home}
+build.compiler: ${build.compiler}
+java.home: ${java.home}
+java.class.path: ${java.class.path}
+java.version: ${java.version}
+java.vendor: ${java.vendor}
+java.vm.version: ${java.vm.version}
+java.vm.name: ${java.vm.name}
+java.vm.info: ${java.vm.info}
+os.name: ${os.name}
+os.arch: ${os.arch}
+os.version: ${os.version}
+]]></echo>
+</target>
+
+<!-- ================================================================== -->
+<!-- Build Bypass -->
+<!-- ================================================================== -->
+
+<target name="_buildmagic:build-bypass-checker"
depends="_buildmagic:init" unless="build-bypass.disabled">
+
+ <uptodate property="build-bypass.on"
targetfile="${build-bypass.marker}">
+ <srcfiles dir="${module.source}" includes="**/*"/>
+ <srcfiles dir="${module.root}"
includes="build.xml,local.properties"/>
+ <srcfiles dir="${project.root}"
includes="build/build.xml,build/local.properties"/>
+ </uptodate>
+
+</target>
+
+<target name="_buildmagic:build-bypass-notice"
if="build-bypass.on">
+ <echo>
+Build disabled because module is already built. To force the module
+to build define build-bypass.disabled=true.
+ </echo>
+</target>
+
+<target name="_buildmagic:build-bypass-check"
depends="_buildmagic:build-bypass-checker,
_buildmagic:build-bypass-notice"/>
+
+
+<!-- ================================================================== -->
+<!-- Module Pass-through Targets -->
+<!-- ================================================================== -->
+
+<!-- Invoke the 'all' on all configured modules -->
+<target name="_buildmagic:modules:all"
depends="_buildmagic:init">
+ <execmodules target="all"
+ modules="${modules}"
+ root="${project.root}/@MODULE@"
+ exportproperties="${executemodules.exportproperties}">
+ <before target="_module-@MODULE@-@TARGET@-prepare"/>
+ <header message="${executemodules.header}"/>
+ <footer message="${executemodules.footer}"/>
+ <after target="_module-@MODULE@-@TARGET@"/>
+ <property name="init.have-parent" value="true"/>
+ </execmodules>
+</target>
+
+<!-- Invoke the 'most' on all configured modules -->
+<target name="_buildmagic:modules:most"
depends="_buildmagic:init">
+ <execmodules target="most"
+ modules="${modules}"
+ root="${project.root}/@MODULE@"
+ exportproperties="${executemodules.exportproperties}">
+ <header message="${executemodules.header}"/>
+ <footer message="${executemodules.footer}"/>
+ <before target="_module-@MODULE@-@TARGET@-prepare"/>
+ <after target="_module-@MODULE@-@TARGET@"/>
+ <property name="init.have-parent" value="true"/>
+ </execmodules>
+</target>
+
+<!-- Invoke the 'main' on all configured modules -->
+<target name="_buildmagic:modules:main"
depends="_buildmagic:init">
+ <execmodules target="main"
+ modules="${modules}"
+ root="${project.root}/@MODULE@"
+ exportproperties="${executemodules.exportproperties}">
+ <header message="${executemodules.header}"/>
+ <footer message="${executemodules.footer}"/>
+ <before target="_module-@MODULE@-@TARGET@-prepare"/>
+ <after target="_module-@MODULE@-@TARGET@"/>
+ <property name="init.have-parent" value="true"/>
+ </execmodules>
+</target>
+
+<!-- Invoke the 'main' on all configured modules -->
+<target name="_buildmagic:modules:package-tests"
depends="_buildmagic:init">
+ <execmodules target="package-tests"
+ modules="${modules}"
+ root="${project.root}/@MODULE@"
+ exportproperties="${executemodules.exportproperties}">
+ <header message="${executemodules.header}"/>
+ <footer message="${executemodules.footer}"/>
+ <before target="_module-@MODULE@-@TARGET@-prepare"/>
+ <after target="_module-@MODULE@-@TARGET@"/>
+ <property name="init.have-parent" value="true"/>
+ </execmodules>
+</target>
+
+<!-- Invoke the 'release' on all configured modules -->
+<target name="_buildmagic:modules:release"
depends="_buildmagic:init">
+ <execmodules target="release"
+ modules="${modules}"
+ root="${project.root}/@MODULE@"
+ exportproperties="${executemodules.exportproperties}">
+ <before target="_module-@MODULE@-@TARGET@-prepare"/>
+ <header message="${executemodules.header}"/>
+ <footer message="${executemodules.footer}"/>
+ <after target="_module-@MODULE@-@TARGET@"/>
+ <property name="init.have-parent" value="true"/>
+ </execmodules>
+</target>
+
+<!-- Invoke the 'tests' on all configured modules -->
+<target name="_buildmagic:modules:tests"
depends="_buildmagic:init">
+ <execmodules target="tests"
+ modules="${modules}"
+ root="${project.root}/@MODULE@"
+ exportproperties="${executemodules.exportproperties}">
+ <before target="_module-@MODULE@-@TARGET@-prepare"/>
+ <header message="${executemodules.header}"/>
+ <footer message="${executemodules.footer}"/>
+ <after target="_module-@MODULE@-@TARGET@"/>
+ <property name="init.have-parent" value="true"/>
+ <property name="build.reports"
value="${project.root}/testsuite/output/reports"/>
+ </execmodules>
+</target>
+
+<!-- Invoke the 'clean' on all configured modules -->
+<target name="_buildmagic:modules:clean"
depends="_buildmagic:init">
+ <execmodules target="clean"
+ modules="${modules}"
+ root="${project.root}/@MODULE@">
+ <before target="_module-@MODULE@-@TARGET@-prepare"/>
+ <header message="${executemodules.header}"/>
+ <footer message="${executemodules.footer}"/>
+ <after target="_module-@MODULE@-@TARGET@"/>
+ <property name="init.have-parent" value="true"/>
+ </execmodules>
+</target>
+
+<!-- Invoke the 'clobber' on all configured modules -->
+<target name="_buildmagic:modules:clobber"
depends="_buildmagic:init">
+ <execmodules target="clobber"
+ modules="${modules}"
+ root="${project.root}/@MODULE@">
+ <before target="_module-@MODULE@-@TARGET@-prepare"/>
+ <header message="${executemodules.header}"/>
+ <footer message="${executemodules.footer}"/>
+ <after target="_module-@MODULE@-@TARGET@"/>
+ <property name="init.have-parent" value="true"/>
+ </execmodules>
+</target>
+
+<!-- ================================================================== -->
+<!-- Compile -->
+<!-- ================================================================== -->
+
+<!-- Compile all class files -->
+<target name="_default:compile-classes" depends="_buildmagic:init"
unless="compile.disable">
+ <mkdir dir="${build.classes}"/>
+
+ <!-- Hack, required to avoid duplicate javac targets -->
+ <mkdir dir="${build.gen.classes}"/>
+
+ <!-- Remove classes which depend on changed files, so they will rebuild. -->
+ <depend srcdir="${source.java}:${build.gen.classes}"
+ destdir="${build.classes}"
+ dump="${javac.depend.dump}"
+ closure="${javac.depend.closure}">
+ <include name="${javac.includes}"/>
+ <exclude name="${javac.excludes}"/>
+ </depend>
+
+ <javac destdir="${build.classes}"
+ optimize="${javac.optimize}"
+ target="${javac.target}"
+ debug="${javac.debug}"
+ source="${javac.source}"
+ depend="${javac.depend}"
+ verbose="${javac.verbose}"
+ deprecation="${javac.deprecation}"
+ includeAntRuntime="${javac.include.ant.runtime}"
+ includeJavaRuntime="${javac.include.java.runtime}"
+ failonerror="${javac.fail.onerror}">
+ <src path="${source.java}:${build.gen.classes}"/>
+ <classpath refid="javac.classpath"/>
+
+ <include name="${javac.includes}"/>
+ <exclude name="${javac.excludes}"/>
+ </javac>
+</target>
+
+<!-- Compile all module test class files -->
+<target name="_default:compile-test-classes"
depends="_buildmagic:init" unless="compile.disable">
+
+ <mkdir dir="${build.test}"/>
+
+ <!-- Hack, required to avoid duplicate javac targets -->
+ <mkdir dir="${build.gen.test}"/>
+
+ <!-- Remove classes which depend on changed files, so they will rebuild. -->
+ <depend srcdir="${source.test}:${build.gen.test}"
+ destdir="${build.test}"
+ dump="${javac.depend.dump}"
+ closure="${javac.depend.closure}">
+ <include name="${javac.includes}"/>
+ <exclude name="${javac.excludes}"/>
+ </depend>
+
+ <javac destdir="${build.test}"
+ optimize="${javac.optimize}"
+ target="${javac.target}"
+ debug="${javac.debug}"
+ depend="${javac.depend}"
+ verbose="${javac.verbose}"
+ deprecation="${javac.deprecation}"
+ includeAntRuntime="${javac.include.ant.runtime}"
+ includeJavaRuntime="${javac.include.java.runtime}"
+ failonerror="${javac.fail.onerror}">
+ <src path="${source.test}:${build.gen.test}"/>
+ <classpath>
+ <path refid="javac.classpath"/>
+ <pathelement location="${build.classes}"/>
+ </classpath>
+ <include name="${javac.includes}"/>
+ <exclude name="${javac.excludes}"/>
+ </javac>
+</target>
+
+<target name="_default:check-exists-etc">
+ <condition property="source.etc.exists">
+ <available file="${source.etc}" type="dir"/>
+ </condition>
+</target>
+
+<!-- Compile manifests -->
+<target name="_default:compile-etc" depends="_buildmagic:init,
_default:check-exists-etc" unless="compile.disable"
if="source.etc.exists">
+ <mkdir dir="${build.etc}"/>
+ <copy todir="${build.etc}" filtering="yes">
+ <fileset dir="${source.etc}">
+ <include name="**"/>
+ </fileset>
+ </copy>
+</target>
+
+<target name="_default:check-exists-resources">
+ <condition property="source.resources.exists">
+ <available file="${source.resources}" type="dir"/>
+ </condition>
+</target>
+
+<!-- Compile resource files -->
+<target name="_default:compile-resources" depends="_buildmagic:init,
_default:check-exists-resources" unless="compile.disable"
if="source.resources.exists">
+ <mkdir dir="${build.resources}"/>
+ <copy todir="${build.resources}" filtering="yes">
+ <fileset dir="${source.resources}">
+ <patternset refid="compile-resources.filter.pattern"/>
+ </fileset>
+ </copy>
+ <copy todir="${build.resources}" filtering="no">
+ <fileset dir="${source.resources}">
+ <patternset refid="compile-resources.pattern"/>
+ </fileset>
+ </copy>
+</target>
+
+<patternset id="compile-resources.filter.pattern">
+ <include name="**/*"/>
+</patternset>
+
+<patternset id="compile-resources.pattern">
+ <exclude name="INVALID_FILE_DOES_NOT_EXISTS"/>
+</patternset>
+
+<!-- Compile stylesheets files -->
+<target name="_default:compile-stylesheets"
depends="_buildmagic:init" unless="compile.disable">
+ <mkdir dir="${build.stylesheets}"/>
+ <copy todir="${build.stylesheets}" filtering="yes">
+ <fileset dir="${source.stylesheets}">
+ <include name="**/*"/>
+ </fileset>
+ </copy>
+</target>
+
+<!-- Compile bin scripts -->
+<target name="_default:compile-bin" depends="_buildmagic:init"
unless="compile.disable">
+ <mkdir dir="${build.bin}"/>
+ <copy todir="${build.bin}" filtering="yes">
+ <fileset dir="${source.bin}">
+ <include name="**/*"/>
+ </fileset>
+ </copy>
+
+ <call target="_default:fix-bin"/>
+</target>
+
+<target name="_default:fix-bin" depends="_buildmagic:init">
+ <fixcrlf srcdir="${build.bin}"
+ eol="lf" eof="remove"
+ includes="**/*.sh"/>
+
+ <fixcrlf srcdir="${build.bin}"
+ eol="crlf" eof="remove"
+ includes="**/*.bat, **/*.cmd"/>
+
+ <chmod perm="+x">
+ <fileset dir="${build.bin}">
+ <include name="**/*.sh"/>
+ </fileset>
+ </chmod>
+</target>
+
+<target name="_default:compile-web" depends="_buildmagic:init"
unless="compile.disable">
+ <mkdir dir="${build.web}"/>
+ <copy todir="${build.web}" filtering="yes">
+ <fileset dir="${source.web}">
+ <patternset refid="compile-web.filter.pattern"/>
+ </fileset>
+ </copy>
+ <copy todir="${build.web}" filtering="no">
+ <fileset dir="${source.web}">
+ <patternset refid="compile-web.pattern"/>
+ </fileset>
+ </copy>
+</target>
+
+<patternset id="compile-web.pattern">
+ <exclude name="INVALID_FILE_DOES_NOT_EXISTS"/>
+</patternset>
+
+<patternset id="compile-web.filter.pattern">
+ <include name="**/*"/>
+</patternset>
+
+<target name="_default:compile-checksums"
depends="_buildmagic:init" unless="compile.disable">
+ <checksum>
+ <fileset dir="${build.lib}">
+ <include name="*.jar"/>
+ <include name="*.zip"/>
+ </fileset>
+ </checksum>
+</target>
+
+<!-- Compile RMI stubs -->
+<target name="_default:compile-rmi" depends="_buildmagic:init"
unless="compile.disable">
+ <rmic base="${build.classes}"
+ verify="${rmic.verify}"
+ iiop="${rmic.iiop}"
+ iiopopts="${rmic.iiopops}"
+ idl="${rmic.idl}"
+ idlopts="${rmic.idlops}"
+ debug="${rmic.debug}"
+ stubVersion="${rmic.stubVersion}">
+ <classpath refid="javac.classpath"/>
+ <patternset refid="compile-rmi.pattern"/>
+ </rmic>
+</target>
+
+<patternset id="compile-rmi.pattern">
+ <exclude name="INVALID_FILE_DOES_NOT_EXISTS"/>
+</patternset>
+
+<!-- Compile ddl files for each database -->
+<target name="_default:compile-ddl" depends="_buildmagic:init"
unless="compile.disable">
+ <xslt
+ basedir="${build.resources}"
+ destdir="${build.resources}"
+ includes="*/setup.xml"
+ style="${jboss.nukes.root}/resources/setup-xml2ddl.xsl"
+ extension=".ddl"/>
+</target>
+
+<!-- ================================================================== -->
+<!-- Tests -->
+<!-- ================================================================== -->
+<!-- default test target. To test a module, include
+ <target name="tests" depends="_default:tests"/>
+ in the module build file-->
+
+ <target name="_default:tests" unless="tests.disable">
+ <echo message="build.reports: ${build.reports}"/>
+ <echo message="build.test: ${build.test}"/>
+
+ <mkdir dir="${build.test}"/>
+
+ <!-- Hack, required to avoid duplicate javac targets -->
+ <mkdir dir="${build.gen.test}"/>
+
+ <path id="tests.classpath">
+ <pathelement path="${classpath}"/>
+ <pathelement path="${local.classpath}"/>
+ <pathelement path="${project.tools}/lib/ant.jar"/>
+ <pathelement path="${project.tools}/lib/junit.jar"/>
+ <pathelement path="${project.tools}/lib/optional.jar"/>
+ <path refid="thirdparty.classpath"/>
+<!-- FIXME: Need to add at least log4j here, what else? -->
+ <path refid="apache.log4j.classpath"/>
+ </path>
+
+ <!--default value, reset earlier if desired-->
+ <property name="log4j.configuration"
value="file:${project.root}/testsuite/src/resources/log4j.xml"/>
+ <property name="test.pattern" value="**/*TestCase.class"/>
+ <echo message="test.pattern: ${test.pattern}"/>
+
+ <property name="jbosstest.data.dir"
location="${module.output}/data"/>
+ <echo message="jbosstest.data.dir: ${jbosstest.data.dir}"/>
+
+ <mkdir dir="${build.reports}"/>
+ <mkdir dir="${build.log}"/>
+ <junit dir="${module.output}"
+ printsummary="${junit.printsummary}"
+ haltonerror="${junit.haltonerror}"
+ haltonfailure="${junit.haltonfailure}"
+ fork="${junit.fork}"
+ timeout="${junit.timeout}"
+ jvm="${junit.jvm}">
+
+ <jvmarg value="${junit.jvm.options}"/>
+ <sysproperty key="build.log" value="${build.log}"/>
+ <sysproperty key="log4j.configuration"
value="${log4j.configuration}"/>
+ <sysproperty key="jbosstest.data.dir"
value="${jbosstest.data.dir}"/>
+
+ <classpath>
+ <pathelement location="${build.classes}"/>
+ <pathelement location="${build.test}"/>
+ <pathelement location="${build.resources}"/>
+ <path refid="tests.classpath"/>
+ </classpath>
+
+ <formatter type="xml"
usefile="${junit.formatter.usefile}"/>
+
+ <batchtest todir="${build.reports}"
+ haltonerror="${junit.batchtest.haltonerror}"
+ haltonfailure="${junit.batchtest.haltonfailure}"
+ fork="${junit.batchtest.fork}">
+
+ <fileset dir="${build.test}">
+ <include name="${test.pattern}"/>
+ </fileset>
+ </batchtest>
+ </junit>
+ </target>
+ <!-- end _default:tests-->
+
+ <macrodef name="execute-tests">
+ <element name="x-sysproperty" optional="true"/>
+ <element name="x-test"/>
+ <element name="x-classpath"/>
+ <sequential>
+ <property name="test.reports"
value="${module.output}/tests"/>
+ <echo><![CDATA[
+ build.reports=${build.reports}
+ test.reports=${test.reports}
+ module.output=${module.output}
+ driver.path=${driver.path}
+ junit.printsummary=${junit.printsummary}
+ junit.batchtest.haltonerror=${junit.batchtest.haltonerror}
+ junit.batchtest.haltonfailure=${junit.batchtest.haltonfailure}
+ junit.batchtest.fork=${junit.batchtest.fork}
+ junit.timeout=${junit.timeout}
+ junit.jvm=${junit.jvm}
+ junit.jvm.options=${junit.jvm.options}
+ junit.formatter.usefile=${junit.formatter.usefile}
+ ]]></echo>
+ <mkdir dir="${build.reports}"/>
+ <mkdir dir="${test.reports}"/>
+ <junit_
+ dir="${module.output}"
+ printsummary="${junit.printsummary}"
+ haltonerror="${junit.haltonerror}"
+ haltonfailure="${junit.haltonfailure}"
+ fork="${junit.fork}"
+ timeout="${junit.timeout}"
+ jvm="${junit.jvm}">
+ <formatter type="plain" usefile="false"/>
+ <formatter
+
classname="org.jboss.ant.taskdefs.XMLJUnitMultipleResultFormatter"
+ usefile="${junit.formatter.usefile}"
+ extension="${jboss-junit-configuration}.xml"/>
+ <sysproperty key="build.resources"
value="${build.resources}"/>
+ <sysproperty key="build.lib"
value="${build.lib}"/>
+ <!-- definition of the property for keeping results between configuration
-->
+ <sysproperty key="jboss-junit-configuration"
value="${jboss-junit-configuration}"/>
+ <x-sysproperty/>
+ <jvmarg value="${junit.jvm.options}"/>
+ <x-test/>
+ <classpath>
+ <path refid="jboss.test.classpath"/>
+ <pathelement path="${driver.path}"/>
+ <x-classpath/>
+ </classpath>
+ </junit_>
+ </sequential>
+ </macrodef>
+
+<!-- ================================================================== -->
+<!-- Documents -->
+<!-- ================================================================== -->
+
+<target name="_default:docs" description="Builds all
documentation."
+ depends="docs-api,
+ docs-todo"/>
+
+<!-- ======== -->
+<!-- JavaDocs -->
+<!-- ======== -->
+
+
+
+<target name="docs-javadocs-check" depends="_buildmagic:init">
+
+ <!-- if index.html is newer than the sources we are up to date -->
+ <uptodate property="docs-javadocs.disable"
+ targetfile="${build.api}/index.html">
+ <srcfiles dir="${source.java}" includes="**/*.java"/>
+ </uptodate>
+</target>
+<target name="docs-javadocs" depends="_buildmagic:init">
+ <call target="docs-javadocs_1_4" if="HAVE_JDK_1.4" />
+ <call target="docs-javadocs_1_3" unless="HAVE_JDK_1.4" />
+</target>
+ <!-- Generate Javadoc if we are out of date -->
+<target name="docs-javadocs_1_4"
+ depends="docs-javadocs-check"
+ unless="docs-javadocs.disable">
+
+ <mkdir dir="${build.api}"/>
+ <javadoc packagenames="${javadoc.packages}"
+ sourcepath="${source.classes}:${build.gen.classes}"
+ destdir="${build.api}"
+ classpathref="javadoc.classpath"
+ windowtitle="${javadoc.windowtitle}"
+ splitindex="${javadoc.splitindex}"
+ author="${javadoc.author}"
+ version="${javadoc.version}"
+ public="${javadoc.public}"
+ package="${javadoc.package}"
+ protected="${javadoc.protected}"
+ private="${javadoc.private}"
+ use="${javadoc.use}"
+ verbose="${javadoc.verbose}">
+ <doctitle><![CDATA[<h1>${module.Name} API
Documentation</h1>]]></doctitle>
+ <bottom><![CDATA[
+ <i>
+ <div align="center">
+ <font size="-1">Copyright © 2002 JBoss Group, LLC. All
Rights Reserved.</font>
+ </div>
+ </i>
+ ]]></bottom>
+
+ <!--
+ <link
href="http://java.sun.com/j2se/1.3/docs/api"/>
+ -->
+
+ <!-- Added links and tags by Yanik Crepeau <yanik(a)exScriptis.com> 2003-05-13
-->
+ <!--Thes tag declarations will shut down the Unknown tag warning during the
javadoc process -->
+ <link
href="http://java.sun.com/j2se/1.4.1/docs/api/"/>
+ <tag name="ejb.interface-method" description="ejb interface method
delcaration" enabled="false" />
+ <tag name="ejb.persistence" description="ejb persistence
declaration" enabled="false" />
+ <tag name="ejb.pk-field" description="ejb primary-key field
declaration" enabled="false" />
+ <tag name="ejb.pk" description="ejb" enabled="false"
/>
+ <tag name="ejb.bean" description="ejb"
enabled="false" />
+ <tag name="ejb.transaction" description="ejb"
enabled="false" />
+ <tag name="ejb.finder" description="ejb"
enabled="false" />
+ <tag name="ejb.relation" description="ejb"
enabled="false" />
+ <tag name="ejb.create-method" description="ejb"
enabled="false" />
+
+ <tag name="jboss.query" description="jboss"
enabled="false" />
+ <tag name="jboss.lazy-load-group" description="jboss"
enabled="false" />
+ <tag name="jboss.load-group" description="jboss"
enabled="false" />
+ <tag name="jboss.persistence" description="jboss"
enabled="false" />
+ <tag name="jboss.entity-command" description="jboss"
enabled="false" />
+ <tag name="jboss.method-attribute" description="jboss"
enabled="false" />
+ <tag name="jboss.relation" description="jboss"
enabled="false" />
+ <tag name="jboss.method-attribute" description="jboss"
enabled="false" />
+ <tag name="jboss.relation-read-ahead" description="jboss"
enabled="false" />
+ <tag name="jboss.relation-table" description="jboss"
enabled="false" />
+ <tag name="jboss.table-attribute" description="jboss"
enabled="false" />
+
+ <tag name="jmx.managed-attribute" description="jmx"
enabled="false" />
+ <tag name="jmx.managed-constructor" description="jmx"
enabled="false" />
+ <tag name="jboss.method-attributes" description="jboss"
enabled="false" />
+
+ </javadoc>
+</target>
+
+<target name="docs-javadocs_1_3"
+ depends="docs-javadocs-check"
+ unless="docs-javadocs.disable">
+
+ <mkdir dir="${build.api}"/>
+ <javadoc packagenames="${javadoc.packages}"
+ sourcepath="${source.classes}:${build.gen.classes}"
+ destdir="${build.api}"
+ classpathref="javadoc.classpath"
+ windowtitle="${javadoc.windowtitle}"
+ splitindex="${javadoc.splitindex}"
+ author="${javadoc.author}"
+ version="${javadoc.version}"
+ public="${javadoc.public}"
+ package="${javadoc.package}"
+ protected="${javadoc.protected}"
+ private="${javadoc.private}"
+ use="${javadoc.use}"
+ verbose="${javadoc.verbose}">
+ <doctitle><![CDATA[<h1>${module.Name} API
Documentation</h1>]]></doctitle>
+ <bottom><![CDATA[
+ <i>
+ <div align="center">
+ <font size="-1">Copyright © 2002 JBoss Group, LLC. All
Rights Reserved.</font>
+ </div>
+ </i>
+ ]]></bottom>
+
+ <!--
+ <link
href="http://java.sun.com/j2se/1.3/docs/api"/>
+ -->
+
+ </javadoc>
+</target>
+
+<target name="docs-api" depends="docs-javadocs"/>
+
+<target name="javadocs" depends="docs-javadocs"/>
+
+<!-- ========= -->
+<!-- TODO Docs -->
+<!-- ========= -->
+
+<target name="docs-todo-check" depends="_buildmagic:init">
+
+ <!-- if index.html is newer than the sources we are up to date -->
+ <uptodate property="docs-todo.disable"
+ targetfile="${build.todo}/index.html">
+ <srcfiles dir="${source.java}" includes="**/*.java"/>
+ </uptodate>
+ </target>
+
+ <!-- Generate TODO list from @todo tags -->
+ <target name="docs-todo"
+ depends="docs-todo-check"
+ unless="docs-todo.disable">
+
+ <mkdir dir="${build.todo}"/>
+ <todo destdir="${build.todo}">
+ <fileset dir="${source.java}">
+ <include name="**/*.java"/>
+ </fileset>
+
+ <info/>
+ </todo>
+</target>
+
+<target name="todo" depends="docs-todo"/>
+
+<!-- ============== -->
+<!-- JMX MBean Docs -->
+<!-- ============== -->
+
+<target name="jmx-docs" depends="_buildmagic:init">
+
+ <mkdir dir="${build.jmx-doc}"/>
+ <jmxdoclet destdir="${build.jmx-doc}"
+ force="false"
+ excludedtags="@version,@author">
+ <fileset dir="${source.java}">
+ <include name="**/*.java"/>
+ </fileset>
+ <jbossXmlDoc/>
+ </jmxdoclet>
+
+</target>
+
+<!-- Generate the plain HTML jmx docs -->
+<target name="docs-jmx-html-plain" depends="jmx-docs">
+
+ <!-- Force the use of SAXON XSLT -->
+ <property system="true"
+ name="javax.xml.transform.TransformerFactory"
+ value="com.icl.saxon.TransformerFactoryImpl"/>
+
+ <mkdir dir="${build.jmx-api}"/>
+ <style style="${project.thirdparty}/oasis/docbook-xsl/html/docbook.xsl"
+ processor="trax"
+ extension=".html"
+ basedir="${build.jmx-doc}"
+ destdir="${build.jmx-api}">
+ <include name="**/*.xml"/>
+ <param name="quiet"
expression="${oasis.docbook.xsl.chunker.quiet}"/>
+ <param name="base.dir"
expression="${build.jmx-api}${file.separator}"/>
+ <xmlcatalog>
+ <dtd
+ publicId="-//OASIS//DTD DocBook XML V4.1.2//EN"
+ location="${project.thirdparty}/oasis/docbook-xml/docbookx.dtd"/>
+ </xmlcatalog>
+ </style>
+
+</target>
+
+
+<!-- ================================================================== -->
+<!-- Cleaning -->
+<!-- ================================================================== -->
+
+<!-- Clean up all build output -->
+<target name="_default:clean"
+ description="Cleans up most generated files."
+ depends="_buildmagic:clean">
+</target>
+
+<!-- Clean up all generated files -->
+<target name="_default:clobber"
+ description="Cleans up all generated files."
+ depends="_buildmagic:clobber, clean">
+</target>
+
+<target name="rebuild" depends="clean,most"/>
+
+
+<!-- ================================================================== -->
+<!-- Misc. -->
+<!-- ================================================================== -->
+
+<target name="_default:main"
+ description="Executes the default target (most)."
+ depends="most"/>
+
+<target name="_default:all"
+ description="Builds everything."
+ depends="most,docs"/>
+
+<target name="_default:most"
+ description="Builds almost everything."
+ depends="output"/>
+
+<target name="_default:help"
+ description="Show this help message."
+ depends="_buildmagic:help:standard"/>
+
+
+
+
+<!-- ================================================================== -->
+<!-- Cleaning -->
+<!-- ================================================================== -->
+
+<!-- Clean up all build output -->
+<target name="_buildmagic:clean" depends="_buildmagic:init">
+ <delete dir="${module.output}"/>
+</target>
+
+<!-- Clean up all generated files -->
+<target name="_buildmagic:clobber" depends="_buildmagic:init">
+ <delete file="${module.root}/local.properties"/>
+
+ <!-- Try to stop the build log before we delete the file. -->
+ <record name="${module.root}/build.log" action="stop"/>
+
+ <!--
+ | This file may be opened still due and fail to be removed on win32
+ | systems, so lets just ignore those errors for now.
+ -->
+ <delete file="${module.root}/build.log" quiet="true"
failonerror="false"/>
+</target>
+
+
+<!-- ================================================================== -->
+<!-- Help -->
+<!-- ================================================================== -->
+
+<target name="_buildmagic:help:standard"
depends="_buildmagic:init">
+ <projecthelp taskname="help">
+ <header><![CDATA[
+ The ${module.Name} module.
+]]></header>
+ <footer><![CDATA[
+ -projecthelp for all targets
+ -help for full options
+]]></footer>
+ </projecthelp>
+</target>
+
+<target name="_buildmagic:help:build"
depends="_buildmagic:init">
+ <projecthelp taskname="help">
+ <header><![CDATA[
+ The ${module.Name} module.
+]]></header>
+ <footer><![CDATA[
+ -Dgroups=<group>[(,<group>)*] Specify the module groups.
+ -Dmodules=<module>[(,<module>)*] Specify the modules.
+ (overrides groups).
+ -projecthelp for all targets
+ -help for full options
+]]></footer>
+ </projecthelp>
+</target>
+
+<target name="configure-project"
unless="configure-project.disable">
+
+ <!-- Bits for building source archives -->
+ <patternset id="source.ignore">
+ <exclude name="**/output/**"/>
+ </patternset>
+ <patternset id="source.free">
+ <exclude name="tools/**"/>
+ <exclude name="thirdparty/**"/>
+ <include name="**"/>
+ </patternset>
+ <patternset id="source.external">
+ <include name="tools/**"/>
+ <include name="thirdparty/**"/>
+ </patternset>
+
+ <!-- The header and footer displayed during each module execution -->
+ <property name="executemodules.header"><![CDATA[
+ ==============================================================
+ ==
+ == Executing '@TARGET@' in module '@MODULE@'...
+ ==
+ ==]]></property>
+
+ <property name="executemodules.footer"><![CDATA[
+ ==
+ ==
+ == Finished '@TARGET@' in module '@MODULE@'.
+ ==
+ ==============================================================
+ ]]></property>
+
+ <property name="executemodules.exportproperties">
+ version.major,
+ version.minor,
+ version.revision,
+ version.tag,
+ version.name,
+ version.cvstag,
+
+ specification.title,
+ specification.version,
+ specification.vendor,
+
+ implementation.title,
+ implementation.version,
+ implementation.vendor,
+ implementation.vendor.id,
+ implementation.url
+ </property>
+
+ <!-- Show the module configuration -->
+ <echo>groups: ${groups}</echo>
+ <echo>modules: ${modules}</echo>
+
+ <property name="configure-project.disable" value="true"
system="true"/>
+
+</target>
+
+
+<!-- ================================================================== -->
+<!-- Release -->
+<!-- ================================================================== -->
+
+<target name="_buildmagic:release:zip"
depends="_buildmagic:init">
+ <zip zipfile="${module.output}/${release.id}.zip">
+ <fileset dir="${module.output}">
+ <include name="${release.id}/**"/>
+ </fileset>
+ </zip>
+</target>
+
+<target name="_buildmagic:release:tar"
depends="_buildmagic:init">
+ <tar tarfile="${module.output}/${release.id}.tar"
longfile="gnu"
+ basedir="${module.output}"
+ includes="${release.id}/**">
+ </tar>
+</target>
+
+<target name="_buildmagic:release:tgz"
depends="_buildmagic:release:tar">
+ <gzip src="${module.output}/${release.id}.tar"
+ zipfile="${module.output}/${release.id}.tgz"/>
+</target>
+
+
+<!-- ================================================================== -->
+<!-- Install -->
+<!-- ================================================================== -->
+
+<target name="_buildmagic:install:default"
depends="_buildmagic:init">
+ <!-- Copy the output directory to the install directory -->
+ <mkdir dir="${install.root}"/>
+ <copy todir="${install.root}" filtering="no">
+ <fileset dir="${module.output}">
+ <include name="**/*"/>
+ <exclude name="${install.id}/**"/>
+ </fileset>
+ </copy>
+</target>
+
+<!-- Configure deployment tasks -->
+<target name="_buildmagic:configure:deployment">
+ <path id="portal.task.classpath">
+ <pathelement location="${project.tools}/lib/ant.jar"/>
+ <pathelement location="${project.tools}/lib/explode.jar"/>
+ <pathelement
location="${project.tools}/lib/cargo-core-uberjar-0.8.jar"/>
+ </path>
+ <taskdef
+ name="deploy"
+ classname="org.jboss.portal.common.ant.Deploy"
+ classpathref="portal.task.classpath"/>
+ <taskdef
+ name="undeploy"
+ classname="org.jboss.portal.common.ant.Undeploy"
+ classpathref="portal.task.classpath"/>
+</target>
Property changes on: modules/web/trunk/tools/etc/buildfragments/buildmagic.ent
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/buildfragments/common.properties
===================================================================
--- modules/web/trunk/tools/etc/buildfragments/common.properties
(rev 0)
+++ modules/web/trunk/tools/etc/buildfragments/common.properties 2007-08-14 10:47:21 UTC
(rev 7913)
@@ -0,0 +1,36 @@
+### ====================================================================== ###
+## ##
+## Copyright (c) 1998-2000 by Jason Dillon <jason(a)planet57.com> ##
+## ##
+## This file is part of BuildMagic; an extension to Ant. ##
+## ##
+## This library is free software; you can redistribute it and/or modify ##
+## it under the terms of the GNU Lesser General Public License as ##
+## published by the Free Software Foundation; either version 2 of the ##
+## License, or (at your option) any later version. ##
+## ##
+## This library is distributed in the hope that it will be useful, but ##
+## WITHOUT ANY WARRANTY; without even the implied warranty of ##
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ##
+## Lesser General Public License for more details. ##
+## ##
+### ====================================================================== ###
+## ##
+## Common Properties ##
+## ##
+### ====================================================================== ###
+
+### $Id: common.properties 21 2005-01-14 23:14:21Z vietj $ ###
+
+buildmagic.resolveproperties.force=false
+buildmagic.propertyfilter.all=true
+
+### Jython Support ###
+
+true=1
+false=0
+
+### Misc ###
+
+/=${file.separator}
+sun.boot.classpath=${sun.boot.class.path}
Property changes on: modules/web/trunk/tools/etc/buildfragments/common.properties
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/buildfragments/defaults.ent
===================================================================
--- modules/web/trunk/tools/etc/buildfragments/defaults.ent (rev
0)
+++ modules/web/trunk/tools/etc/buildfragments/defaults.ent 2007-08-14 10:47:21 UTC (rev
7913)
@@ -0,0 +1,150 @@
+<!-- $Id: defaults.ent 6209 2007-02-11 13:25:59Z bdaw $ -->
+
+<target name="configure-defaults"
unless="configure-defaults.disable">
+
+ <!-- =============== -->
+ <!-- Module defaults -->
+ <!-- =============== -->
+
+ <basename property="module.name" file="${basedir}"/>
+ <property name="module.Name" value="${ant.project.name}"/>
+
+ <property name="version.major" value="2"/>
+ <property name="version.minor" value="4"/>
+ <property name="version.revision" value="0"/>
+ <property name="version.tag" value="BETA2"/>
+ <property name="version.name" value="Devil"/>
+ <property name="module.version"
value="${version.major}.${version.minor}.${version.revision}${version.tag}"/>
+
+ <!-- This must be set to the CVS tag for any release -->
+ <property name="version.cvstag" value="JBoss_4_0_0_DR3"/>
+
+ <!-- Manifest version info -->
+ <property name="specification.title" value="JBoss"/>
+ <property name="specification.version"
value="${version.major}.${version.minor}"/>
+ <property name="specification.vendor" value="JBoss Group, LLC
(
http://jboss.org)"/>
+
+ <property name="implementation.title" value="JBoss
[${version.name}]"/>
+ <property name="implementation.url"
value="http://jboss.org"/>
+ <property name="implementation.version"
+
value="${version.major}.${version.minor}.${version.revision}${version.tag} (build:
CVSTag=${version.cvstag} date=${build.id})"/>
+ <property name="implementation.vendor" value="JBoss Group,
LLC"/>
+ <property name="implementation.vendor.id"
value="${implementation.url}"/>
+
+
+ <!-- ========= -->
+ <!-- Locations -->
+ <!-- ========= -->
+
+ <!-- Where source files live -->
+ <property name="source.classes"
value="${module.source}/main"/>
+ <property name="source.docs" value="${module.source}/docs"/>
+ <property name="source.etc" value="${module.source}/etc"/>
+ <property name="source.examples"
value="${module.source}/examples"/>
+ <property name="source.bin" value="${module.source}/bin"/>
+ <property name="source.resources"
value="${module.source}/resources"/>
+ <property name="source.stylesheets"
value="${module.source}/stylesheets"/>
+ <property name="source.web" value="${module.source}/web"/>
+ <property name="source.test" value="${module.source}/test"/>
+
+ <!-- Where build generated files will go -->
+ <property name="build.api" value="${module.output}/api"/>
+ <property name="build.bin" value="${module.output}/bin"/>
+ <property name="build.classes"
value="${module.output}/classes"/>
+ <property name="build.docs" value="${module.output}/docs"/>
+ <property name="build.stylesheets"
value="${module.output}/stylesheets"/>
+ <property name="build.etc" value="${module.output}/etc"/>
+ <property name="build.examples"
value="${module.output}/examples"/>
+ <property name="build.gen" value="${module.output}/gen"/>
+ <property name="build.gen.classes"
value="${build.gen}/classes"/>
+ <property name="build.jmx-api"
value="${module.output}/jmx-api"/>
+ <property name="build.jmx-doc"
value="${module.output}/jmx-doc"/>
+ <property name="build.lib" value="${module.output}/lib"/>
+ <property name="build.deploy"
value="${module.output}/deploy"/>
+ <property name="build.reports"
value="${module.output}/reports"/>
+ <property name="build.resources"
value="${module.output}/resources"/>
+ <property name="build.todo" value="${module.output}/todo"/>
+ <property name="build.web" value="${module.output}/web"/>
+ <property name="build.log" value="${module.output}/log"/>
+ <property name="build.cache"
value="${module.output}/cache"/>
+ <property name="build.test" value="${module.output}/test"/>
+ <property name="build.gen.test" value="${build.gen}/test"/>
+
+ <!-- Legacy -->
+ <property name="build.metadata"
value="${module.output}/metadata"/>
+ <property name="build.gen-src"
value="${build.gen.classes}"/>
+ <property name="source.java" value="${source.classes}"/>
+ <property name="source.metadata"
value="${module.source}/metadata"/>
+
+ <!-- Install/Release structure -->
+ <property name="install.id"
value="${module.name}-${module.version}"/>
+ <property name="release.id" value="${install.id}"/>
+ <property name="install.root"
value="${module.output}/${install.id}"/>
+
+ <property name="install.docs" value="${install.root}/docs"/>
+ <property name="install.api" value="${install.docs}/api"/>
+ <property name="install.jmx-api"
value="${install.docs}/jmx-api"/>
+ <property name="install.todo" value="${install.docs}/todo"/>
+ <property name="install.examples"
value="${install.docs}/examples"/>
+ <property name="install.dtd" value="${install.docs}/dtd"/>
+ <property name="install.bin" value="${install.root}/bin"/>
+ <property name="install.etc" value="${install.root}/etc"/>
+ <property name="install.client"
value="${install.root}/client"/>
+ <property name="install.lib" value="${install.root}/lib"/>
+ <property name="install.tools"
value="${install.root}/tools"/>
+ <property name="install.tools.xdoclet"
value="${install.tools}/xdoclet"/>
+
+
+ <!-- ============= -->
+ <!-- Task defaults -->
+ <!-- ============= -->
+
+ <property name="xdoclet.mergedir"
value="${project.tools}/etc/xdoclet/templates"/>
+
+ <!-- Access to environment variables -->
+ <property environment="env"/>
+
+ <!-- The combined thirdparty classpath -->
+ <path id="thirdparty.classpath">
+ <path refid="library.classpath"/>
+ <path refid="dependentmodule.classpath"/>
+ </path>
+
+ <property name="jar.update" value="true"/>
+ <property name="jar.index" value="true"/>
+
+ <property name="javac.depend.dump" value="true"/>
+ <property name="javac.depend.closure" value="false"/>
+ <property name="javac.depend.cachedir"
value="${build.cache}/depends"/>
+
+
+ <property name="javac.source" value="1.4"/>
+ <property name="javac.target" value="1.4"/>
+ <property name="rmic.stubVersion" value="1.2"/>
+
+ <!-- classpath and local.classpath must have a value using with a path -->
+ <property name="classpath" value=""/>
+ <property name="local.classpath" value=""/>
+
+ <!-- The classpath required to build classes. -->
+ <path id="javac.classpath">
+ <pathelement path="${classpath}"/>
+ <pathelement path="${local.classpath}"/>
+ <path refid="thirdparty.classpath"/>
+ </path>
+
+ <!-- The classpath required to build javadocs. -->
+ <path id="javadoc.classpath">
+ <path refid="javac.classpath"/>
+ </path>
+
+
+ <!-- Packages to include when generating api documentation -->
+ <property name="javadoc.packages" value="org.jboss.*"/>
+
+ <!-- Override JUnit defaults -->
+ <property name="junit.timeout" value="1800000"/> <!-- 30
minutes -->
+ <property name="junit.batchtest.todir"
value="${build.reports}"/>
+ <property name="junit.jvm.options" value="-Ddummy"/>
+
+</target>
Property changes on: modules/web/trunk/tools/etc/buildfragments/defaults.ent
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/buildfragments/modules.ent
===================================================================
--- modules/web/trunk/tools/etc/buildfragments/modules.ent (rev
0)
+++ modules/web/trunk/tools/etc/buildfragments/modules.ent 2007-08-14 10:47:21 UTC (rev
7913)
@@ -0,0 +1,202 @@
+<!-- $Id: modules.ent 7727 2007-07-11 21:52:16Z thomas.heute(a)jboss.com $ -->
+
+<target name="configure-modules"
unless="configure-modules.disabled">
+
+ <!-- common -->
+ <property name="jboss.portal-common.root"
value="${project.root}/common/output"/>
+ <property name="jboss.portal-common.lib"
value="${jboss.portal-common.root}/lib"/>
+ <path id="jboss.portal-common.classpath">
+ <pathelement
path="${jboss.portal-common.lib}/portal-common-lib.jar"/>
+ </path>
+
+ <!-- web -->
+ <property name="jboss.portal-web.root"
value="${project.root}/web/output"/>
+ <property name="jboss.portal-web.lib"
value="${jboss.portal-web.root}/lib"/>
+ <path id="jboss.portal-web.classpath">
+ <pathelement path="${jboss.portal-web.lib}/portal-web-lib.jar"/>
+ </path>
+
+ <!-- test -->
+ <property name="jboss.portal-test.root"
value="${project.root}/test/output"/>
+ <property name="jboss.portal-test.lib"
value="${jboss.portal-test.root}/lib"/>
+ <path id="jboss.portal-test.classpath">
+ <pathelement path="${jboss.portal-test.lib}/portal-test-lib.jar"/>
+ <pathelement
path="${jboss.portal-test.lib}/portal-test-agent-lib.jar"/>
+ </path>
+
+ <!-- cms -->
+ <property name="jboss.portal-cms.root"
value="${project.root}/cms/output"/>
+ <property name="jboss.portal-cms.lib"
value="${jboss.portal-cms.root}/lib"/>
+ <path id="jboss.portal-cms.classpath">
+ <pathelement path="${jboss.portal-cms.lib}/portal-cms-lib.jar"/>
+ </path>
+
+ <!-- search -->
+ <property name="jboss.portal-search.root"
value="${project.root}/search/output"/>
+ <property name="jboss.portal-search.lib"
value="${jboss.portal-search.root}/lib"/>
+ <path id="jboss.portal-search.classpath">
+ <pathelement
path="${jboss.portal-search.lib}/portal-search-lib.jar"/>
+ </path>
+
+ <!-- server -->
+ <property name="jboss.portal-server.root"
value="${project.root}/server/output"/>
+ <property name="jboss.portal-server.lib"
value="${jboss.portal-server.root}/lib"/>
+ <path id="jboss.portal-server.classpath">
+ <pathelement
path="${jboss.portal-server.lib}/portal-server-lib.jar"/>
+ <pathelement
path="${jboss.portal-server.lib}/portal-server-test-framework-lib.jar"/>
+ </path>
+
+ <!-- api -->
+ <property name="jboss.portlet-api.root"
value="${project.root}/api/output"/>
+ <property name="jboss.portlet-api.lib"
value="${jboss.portlet-api.root}/lib"/>
+ <path id="jboss.portlet-api.classpath">
+ <pathelement path="${jboss.portlet-api.lib}/portlet-api-lib.jar"/>
+ <pathelement path="${jboss.portlet-api.lib}/portal-api-lib.jar"/>
+ </path>
+
+ <!-- faces -->
+ <property name="jboss.portal-faces.root"
value="${project.root}/faces/output"/>
+ <property name="jboss.portal-faces.lib"
value="${jboss.portal-faces.root}/lib"/>
+ <path id="jboss.portal-faces.classpath">
+ <pathelement path="${jboss.portal-faces.lib}/portal-faces-lib.jar"/>
+ </path>
+
+ <!-- jems -->
+ <property name="jboss.portal-jems.root"
value="${project.root}/jems/output"/>
+ <property name="jboss.portal-jems.lib"
value="${jboss.portal-jems.root}/lib"/>
+ <path id="jboss.portal-jems.classpath">
+ <pathelement path="${jboss.portal-jems.lib}/portal-jems-lib.jar"/>
+ </path>
+
+ <!-- portlet -->
+ <property name="jboss.portal-portlet.root"
value="${project.root}/portlet/output"/>
+ <property name="jboss.portal-portlet.lib"
value="${jboss.portal-portlet.root}/lib"/>
+ <path id="jboss.portal-portlet.classpath">
+ <pathelement
path="${jboss.portal-portlet.lib}/portal-portlet-lib.jar"/>
+ <pathelement
path="${jboss.portal-portlet.lib}/portal-portlet-test-lib.jar"/>
+ <pathelement
path="${jboss.portal-portlet.lib}/portal-portlet-test-framework-lib.jar"/>
+ </path>
+
+ <!-- portlet-server -->
+ <property name="jboss.portal-portlet-server.root"
value="${project.root}/portlet-server/output"/>
+ <property name="jboss.portal-portlet-server.lib"
value="${jboss.portal-portlet-server.root}/lib"/>
+ <path id="jboss.portal-portlet-server.classpath">
+ <pathelement
path="${jboss.portal-portlet-server.lib}/portal-portlet-server-lib.jar"/>
+ </path>
+
+ <!-- portlet-federation -->
+ <property name="jboss.portal-portlet-federation.root"
value="${project.root}/portlet-federation/output"/>
+ <property name="jboss.portal-portlet-federation.lib"
value="${jboss.portal-portlet-federation.root}/lib"/>
+ <path id="jboss.portal-portlet-federation.classpath">
+ <pathelement
path="${jboss.portal-portlet-federation.lib}/portal-portlet-federation-lib.jar"/>
+ </path>
+
+ <!-- bridge -->
+ <property name="jboss.portal-bridge.root"
value="${project.root}/bridge/output"/>
+ <property name="jboss.portal-bridge.lib"
value="${jboss.portal-bridge.root}/lib"/>
+ <path id="jboss.portal-bridge.classpath">
+ <pathelement
path="${jboss.portal-bridge.lib}/portal-bridge-lib.jar"/>
+ </path>
+
+ <!-- format -->
+ <property name="jboss.portal-format.root"
value="${project.root}/format/output"/>
+ <property name="jboss.portal-format.lib"
value="${jboss.portal-format.root}/lib"/>
+ <path id="jboss.portal-format.classpath">
+ <pathelement
path="${jboss.portal-format.lib}/portal-format-lib.jar"/>
+ </path>
+
+ <!-- core -->
+ <property name="jboss.portal-core.root"
value="${project.root}/core/output"/>
+ <property name="jboss.portal-core.lib"
value="${jboss.portal-core.root}/lib"/>
+ <path id="jboss.portal-core.classpath">
+ <pathelement path="${jboss.portal-core.lib}/portal-core-lib.jar"/>
+ <pathelement
path="${jboss.portal-core.lib}/jboss-portlet-api-lib.jar"/>
+ </path>
+
+ <!-- core-admin -->
+ <property name="jboss.portal-core-admin.root"
value="${project.root}/core-admin/output"/>
+ <property name="jboss.portal-core-admin.lib"
value="${jboss.portal-core-admin.root}/lib"/>
+ <path id="jboss.portal-core-admin.classpath">
+ <pathelement
path="${jboss.portal-core-admin.lib}/portal-core-admin-lib.jar"/>
+ </path>
+
+ <!-- core-cms -->
+ <property name="jboss.portal-core-cms.root"
value="${project.root}/core-cms/output"/>
+ <property name="jboss.portal-core-cms.lib"
value="${jboss.portal-core-cms.root}/lib"/>
+ <path id="jboss.portal-core-cms.classpath">
+ <pathelement
path="${jboss.portal-core-cms.lib}/portal-core-cms-lib.jar"/>
+ </path>
+
+ <!-- core-management -->
+ <property name="jboss.portal-core-management.root"
value="${project.root}/core-management/output"/>
+ <property name="jboss.portal-core-management.lib"
value="${jboss.portal-core-management.root}/lib"/>
+ <path id="jboss.portal-core-management.classpath">
+ <pathelement
path="${jboss.portal-core-management.lib}/portal-core-management-lib.jar"/>
+ </path>
+
+ <!-- core-samples -->
+ <property name="jboss.portal-core-samples.root"
value="${project.root}/core-samples/output"/>
+ <property name="jboss.portal-core-samples.lib"
value="${jboss.portal-core-samples.root}/lib"/>
+ <path id="jboss.portal-core-samples.classpath">
+ <pathelement
path="${jboss.portal-core-samples.lib}/portal-core-samples-lib.jar"/>
+ </path>
+
+ <!-- core-wsrp -->
+ <property name="jboss.portal-core-wsrp.root"
value="${project.root}/core-wsrp/output"/>
+ <property name="jboss.portal-core-wsrp.lib"
value="${jboss.portal-core-wsrp.root}/lib"/>
+ <path id="jboss.portal-core-wsrp.classpath">
+ <pathelement
path="${jboss.portal-core-wsrp.lib}/portal-core-wsrp-lib.jar"/>
+ </path>
+
+ <!-- theme -->
+ <property name="jboss.portal-theme.root"
value="${project.root}/theme/output"/>
+ <property name="jboss.portal-theme.lib"
value="${jboss.portal-theme.root}/lib"/>
+ <path id="jboss.portal-theme.classpath">
+ <pathelement path="${jboss.portal-theme.lib}/portal-theme-lib.jar"/>
+ </path>
+
+ <!-- wsrp -->
+ <property name="jboss.portal-wsrp.root"
value="${project.root}/wsrp/output"/>
+ <property name="jboss.portal-wsrp.lib"
value="${jboss.portal-wsrp.root}/lib"/>
+ <path id="jboss.portal-wsrp.classpath">
+ <pathelement path="${jboss.portal-wsrp.lib}/portal-wsrp-lib.jar"/>
+ <pathelement
path="${jboss.portal-wsrp.lib}/portal-wsrp-test-lib.jar"/>
+ </path>
+
+ <!-- registration -->
+ <property name="jboss.portal-registration.root"
value="${project.root}/registration/output"/>
+ <property name="jboss.portal-registration.lib"
value="${jboss.portal-registration.root}/lib"/>
+ <path id="jboss.portal-registration.classpath">
+ <pathelement
path="${jboss.portal-registration.lib}/portal-registration-lib.jar"/>
+ <pathelement
path="${jboss.portal-registration.lib}/portal-registration-test-lib.jar"/>
+ </path>
+
+ <!-- security -->
+ <property name="jboss.portal-security.root"
value="${project.root}/security/output"/>
+ <property name="jboss.portal-security.lib"
value="${jboss.portal-security.root}/lib"/>
+ <path id="jboss.portal-security.classpath">
+ <pathelement
path="${jboss.portal-security.lib}/portal-security-lib.jar"/>
+ <pathelement
path="${jboss.portal-security.lib}/portal-security-test-lib.jar"/>
+ </path>
+
+ <!-- identity -->
+ <property name="jboss.portal-identity.root"
value="${project.root}/identity/output"/>
+ <property name="jboss.portal-identity.lib"
value="${jboss.portal-identity.root}/lib"/>
+ <path id="jboss.portal-identity.classpath">
+ <pathelement
path="${jboss.portal-identity.lib}/portal-identity-lib.jar"/>
+ </path>
+
+ <!-- workflow -->
+ <property name="jboss.portal-workflow.root"
value="${project.root}/workflow/output"/>
+ <property name="jboss.portal-workflow.lib"
value="${jboss.portal-workflow.root}/lib"/>
+ <path id="jboss.portal-workflow.classpath">
+ <pathelement
path="${jboss.portal-workflow.lib}/portal-workflow-lib.jar"/>
+ </path>
+
+ <!-- samples -->
+ <property name="jboss.portal-samples.root"
value="${project.root}/samples/output"/>
+ <property name="jboss.portal-samples.lib"
value="${jboss.portal-samples.root}/lib"/>
+ <path id="jboss.portal-samples.classpath">
+ <pathelement
path="${jboss.portal-samples.lib}/portal-samples-lib.jar"/>
+ </path>
+</target>
Property changes on: modules/web/trunk/tools/etc/buildfragments/modules.ent
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/buildfragments/targets.ent
===================================================================
--- modules/web/trunk/tools/etc/buildfragments/targets.ent (rev
0)
+++ modules/web/trunk/tools/etc/buildfragments/targets.ent 2007-08-14 10:47:21 UTC (rev
7913)
@@ -0,0 +1,149 @@
+<!-- $Id: targets.ent 2946 2006-06-26 20:07:31Z rgenova $ -->
+
+<!-- ================================================================== -->
+<!-- Initialization -->
+<!-- ================================================================== -->
+
+<!--
+ | Initialize the build system. Must depend on '_buildmagic:init'.
+ | Other targets should depend on 'init' or things will mysteriously fail.
+ -->
+
+<target name="_default:init" unless="init.disable"
depends="_buildmagic:init">
+ <available property="source.resources.exists"
+ file="${source.resources}"
+ type="dir"
+ />
+ <available property="source.etc.exists"
+ file="${source.etc}"
+ type="dir"
+ />
+</target>
+
+
+
+
+
+
+<!-- ================================================================== -->
+<!-- Install & Release -->
+<!-- ================================================================== -->
+
+<!--
+ | These are almost never overriden, so no need to force module build.xml
+ | to define them.
+ -->
+
+<target name="release-zip"
+ description="Builds a ZIP distribution."
+ depends="_buildmagic:release:zip"/>
+
+<target name="release-tar"
+ description="Builds a TAR distribution."
+ depends="_buildmagic:release:tar"/>
+
+<target name="release-tgz"
+ description="Builds a TAR-GZ distribution."
+ depends="_buildmagic:release:tgz"/>
+
+<target name="release-all"
+ description="Builds a distribution for each archive type."
+ depends="release-zip, release-tgz"/>
+
+
+ <!-- ================================================================== -->
+ <!-- Project (build module) Targets -->
+ <!-- ================================================================== -->
+
+<!-- jason: this needs to be cleaned up -->
+
+ <!-- ================================================================== -->
+ <!-- Module Pass-through Targets -->
+ <!-- ================================================================== -->
+
+ <!--
+ | These targets will execute all configured modules with the specified
+ | target.
+ -->
+
+ <target name="modules-all"
depends="_buildmagic:modules:all"/>
+ <target name="modules-most"
depends="_buildmagic:modules:most"/>
+ <target name="modules-main"
depends="_buildmagic:modules:main"/>
+ <target name="modules-release"
depends="_buildmagic:modules:release"/>
+ <target name="modules-tests"
depends="_buildmagic:modules:tests"/>
+ <target name="modules-clean"
depends="_buildmagic:modules:clean"/>
+ <target name="modules-clobber"
depends="_buildmagic:modules:clobber"/>
+
+
+
+
+ <!-- ================================================================== -->
+ <!-- Source Archives -->
+ <!-- ================================================================== -->
+
+ <target name="source-free-zip" depends="_default:init"
+ description="Builds a ZIP free source distribution.">
+ <mkdir dir="${module.output}"/>
+ <zip zipfile="${module.output}/${release.id}-free-src.zip">
+ <fileset dir="${project.root}">
+ <patternset refid="source.ignore"/>
+ <patternset refid="source.free"/>
+ </fileset>
+ </zip>
+ </target>
+
+ <target name="source-external-zip" depends="_default:init"
+ description="Builds a ZIP external source distribution.">
+ <mkdir dir="${module.output}"/>
+ <zip zipfile="${module.output}/${release.id}-external-src.zip">
+ <fileset dir="${project.root}">
+ <patternset refid="source.ignore"/>
+ <patternset refid="source.external"/>
+ </fileset>
+ </zip>
+ </target>
+
+ <target name="source-zip" depends="source-free-zip,
source-external-zip"
+ description="Builds a ZIP source distribution."/>
+
+ <target name="source-free-tar" depends="_default:init"
+ description="Builds a TAR free source distribution.">
+ <mkdir dir="${module.output}"/>
+ <tar tarfile="${module.output}/${release.id}-free-src.tar"
longfile="gnu"
+ basedir="${project.root}">
+ <patternset refid="source.ignore"/>
+ <patternset refid="source.free"/>
+ </tar>
+ </target>
+
+ <target name="source-external-tar" depends="_default:init"
+ description="Builds a TAR external source distribution.">
+ <mkdir dir="${module.output}"/>
+ <tar tarfile="${module.output}/${release.id}-external-src.tar"
longfile="gnu"
+ basedir="${project.root}">
+ <patternset refid="source.ignore"/>
+ <patternset refid="source.external"/>
+ </tar>
+ </target>
+
+ <target name="source-tar" depends="source-free-tar,
source-external-tar"
+ description="Builds a TAR source distribution."/>
+
+ <target name="source-free-tgz" depends="source-free-tar"
+ description="Builds a TAR-GZIP free source distribution.">
+ <gzip src="${module.output}/${release.id}-free-src.tar"
+ zipfile="${module.output}/${release.id}-free-src.tgz"/>
+ </target>
+
+ <target name="source-external-tgz"
depends="source-external-tar"
+ description="Builds a TAR-GZIP external source distribution.">
+ <gzip src="${module.output}/${release.id}-external-src.tar"
+ zipfile="${module.output}/${release.id}-external-src.tgz"/>
+ </target>
+
+ <target name="source-tgz" depends="source-free-tgz,
source-external-tgz"
+ description="Builds a TAR-GZIP source distribution."/>
+
+ <target name="source-all"
+ depends="source-tar, source-tgz, source-zip"
+ description="Builds all source distributions."/>
Property changes on: modules/web/trunk/tools/etc/buildfragments/targets.ent
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/buildfragments/task.properties
===================================================================
--- modules/web/trunk/tools/etc/buildfragments/task.properties
(rev 0)
+++ modules/web/trunk/tools/etc/buildfragments/task.properties 2007-08-14 10:47:21 UTC
(rev 7913)
@@ -0,0 +1,83 @@
+### ====================================================================== ###
+## ##
+## Default Task Properties ##
+## ##
+### ====================================================================== ###
+
+### $Id: task.properties 21 2005-01-14 23:14:21Z vietj $ ###
+
+### Javac Defaults ###
+
+javac.includes=**/*.java
+javac.excludes=
+javac.defaultexcludes=yes
+
+javac.boot.classpath=${sun.boot.classpath}
+javac.classpath=${classpath}
+
+javac.debug=off
+javac.optimize=on
+javac.deprecation=on
+javac.target=1.2
+javac.verbose=off
+javac.depend=off
+javac.source=1.3
+
+javac.include.ant.runtime=no
+javac.include.java.runtime=no
+javac.fail.onerror=true
+
+classpath=
+classpath.local=
+classpath.thirdparty=
+
+### Javadoc Defaults ###
+
+javadoc.classpath=${javac.classpath}
+javadoc.sourcepath=
+javadoc.source.path=
+javadoc.source.files=
+
+javadoc.public=false
+javadoc.package=false
+javadoc.protected=true
+javadoc.private=false
+javadoc.version=true
+javadoc.author=true
+javadoc.use=true
+javadoc.verbose=false
+
+javadoc.windowtitle=${module.Name} API
+javadoc.doctitle=${module.Name}
+javadoc.splitindex=no
+
+### RMIC Defaults ###
+
+rmic.base=${build.classes}
+rmic.stubVersion=${javac.target}
+rmic.verify=true
+rmic.sourcebase=
+rmic.debug=false
+rmic.iiop=false
+rmic.iiopopts=
+rmic.idl=false
+rmic.idlopts=
+rmic.includes=
+rmic.excludes=
+
+### JUnit Defaults ###
+
+junit.printsummary=true
+junit.haltonerror=false
+junit.haltonfailure=false
+junit.fork=true
+junit.timeout=300000
+junit.jvm=java
+junit.jvm.options=
+
+junit.formatter.type=xml
+junit.formatter.usefile=true
+
+junit.batchtest.fork=${junit.fork}
+junit.batchtest.haltonerror=${junit.haltonerror}
+junit.batchtest.haltonfailure=${junit.haltonfailure}
Property changes on: modules/web/trunk/tools/etc/buildfragments/task.properties
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/buildfragments/tools.ent
===================================================================
--- modules/web/trunk/tools/etc/buildfragments/tools.ent (rev 0)
+++ modules/web/trunk/tools/etc/buildfragments/tools.ent 2007-08-14 10:47:21 UTC (rev
7913)
@@ -0,0 +1,133 @@
+<!-- $Id: tools.ent 2946 2006-06-26 20:07:31Z rgenova $ -->
+
+<target name="configure-tools"
unless="configure-tools.disable">
+
+ <!-- <call target="_configure:explode:task"
unless="_configure:explode:task.done">
+ <available file="${project.tools}/lib/explode.jar"/>
+ </call>-->
+
+ <!--<call target="_configure:jflex:task"
unless="_configure:jflex:task.done">
+ <available file="${jflex.jflex.lib}/jflex.jar"/>
+ </call>-->
+
+ <call target="_configure:jbossaop:task"
unless="_configure:jbossaop:task.done">
+ <available file="${jboss.aop.lib}/jboss-aop.jar"/>
+ </call>
+
+ <call target="_configure:xdoclet:task"
unless="_configure:xdoclet:task.done">
+ <available file="${xdoclet.xdoclet.lib}/xdoclet.jar"/>
+ <available file="${xdoclet.xdoclet.lib}/xdoclet-jmx-module.jar"/>
+ </call>
+
+ <call target="_configure:xdoclet:ejbdoclet"
unless="_configure:xdoclet:ejbdoclet.done">
+ <available file="${xdoclet.xdoclet.lib}/xdoclet.jar"/>
+ <available file="${xdoclet.xdoclet.lib}/xdoclet-ejb-module.jar"/>
+ </call>
+
+ <call target="_configure:xdoclet:jmxdoclet"
unless="_configure:xdoclet:jmxdoclet.done">
+ <available file="${xdoclet.xdoclet.lib}/xdoclet.jar"/>
+ <available file="${xdoclet.xdoclet.lib}/xdoclet-jmx-module.jar"/>
+ </call>
+
+ <!-- <call target="_configure:xdoclet:hibernatedoclet"
unless="_configure:xdoclet:hibernatedoclet.done">
+ <available file="${xdoclet.xdoclet.lib}/xdoclet.jar"/>
+ <available
file="${xdoclet.xdoclet.lib}/xdoclet-hibernate-module.jar"/>
+ </call>
+
+ <call target="_configure:xdoclet:webdoclet"
unless="_configure:xdoclet:webdoclet.done">
+ <available file="${xdoclet.xdoclet.lib}/xdoclet.jar"/>
+ <available file="${xdoclet.xdoclet.lib}/xdoclet-web-module.jar"/>
+ <available file="${sun.servlet.lib}/servlet-api.jar"/>
+ </call>-->
+
+</target>
+
+<!--<target name="_configure:explode:task">
+ <path id="explode.task.classpath">
+ <pathelement location="${project.tools}/lib/explode.jar"/>
+ <path refid="apache.ant.classpath"/>
+ </path>
+ <taskdef name="explode"
+ classname="org.jboss.portal.common.ant.Explode"
+ classpathref="explode.task.classpath"/>
+ <property name="_configure:explode:task.done" value="true"
system="true"/>
+</target>-->
+
+<!--<target name="_configure:jflex:task">
+ <taskdef name="jflex"
+ classname="JFlex.anttask.JFlexTask"
+ classpathref="jflex.jflex.classpath"/>
+ <property name="_configure:jflex:task.done" value="true"
system="true"/>
+</target>-->
+
+<target name="_configure:jbossaop:task">
+ <path id="jbossaop.task.classpath">
+ <path refid="jboss.aop.classpath"/>
+ <path refid="javassist.javassist.classpath"/>
+ <path refid="oswego.concurrent.classpath"/>
+ <path refid="trove.trove.classpath"/>
+ <path refid="qdox.qdox.classpath"/>
+ </path>
+ <taskdef name="annotationc"
+ classname="org.jboss.aop.ant.AnnotationC"
+ classpathref="jbossaop.task.classpath"/>
+ <taskdef name="aopc"
+ classname="org.jboss.aop.ant.AopC"
+ classpathref="jbossaop.task.classpath"/>
+</target>
+
+<target name="_configure:xdoclet:task">
+ <path id="xdoclet.base.task.classpath">
+ <path refid="xdoclet.xdoclet.classpath"/>
+ <path refid="apache.ant.classpath"/>
+ </path>
+ <taskdef name="jmxdoclet"
+ classname="xdoclet.modules.jmx.JMXDocletTask"
+ classpathref="xdoclet.task.classpath"/>
+ <taskdef name="todo"
+ classname="xdoclet.modules.doc.DocumentDocletTask"
+ classpathref="xdoclet.task.classpath"/>
+ <property name="_configure:xdoclet:task.done" value="true"
system="true"/>
+</target>
+
+<target name="_configure:xdoclet:ejbdoclet">
+ <path id="ejbdoclet.task.classpath">
+ <path refid="xdoclet.task.classpath"/>
+ <pathelement
location="${jboss.home}/server/default/lib/jboss-j2ee.jar"/>
+ </path>
+ <taskdef name="ejbdoclet"
+ classname="xdoclet.modules.ejb.EjbDocletTask"
+ classpathref="ejbdoclet.task.classpath"/>
+ <property name="_configure:xdoclet:ejbdoclet.done" value="true"
system="true"/>
+</target>
+
+<target name="_configure:xdoclet:jmxdoclet">
+ <path id="jmxdoclet.task.classpath">
+ <path refid="xdoclet.task.classpath"/>
+ </path>
+ <taskdef name="jmxdoclet"
+ classname="xdoclet.modules.jmx.JMXDocletTask"
+ classpathref="jmxdoclet.task.classpath"/>
+ <property name="_configure:xdoclet:jmxdoclet.done" value="true"
system="true"/>
+</target>
+
+<!--<target name="_configure:xdoclet:hibernatedoclet">
+ <path id="hibernatedoclet.task.classpath">
+ <path refid="xdoclet.xdoclet.classpath"/>
+ </path>
+ <taskdef name="hibernatedoclet"
+ classname="xdoclet.modules.hibernate.HibernateDocletTask"
+ classpathref="hibernatedoclet.task.classpath"/>
+ <property name="_configure:xdoclet:ejbdoclet.done" value="true"
system="true"/>
+</target>
+
+<target name="_configure:xdoclet:webdoclet">
+ <path id="webdoclet.task.classpath">
+ <path refid="xdoclet.task.classpath"/>
+ <pathelement location="${sun.servlet.lib}/servlet-api.jar"/>
+ </path>
+ <taskdef name="webdoclet"
+ classname="xdoclet.modules.web.WebDocletTask"
+ classpathref="webdoclet.task.classpath"/>
+ <property name="_configure:xdoclet:webdoclet.done" value="true"
system="true"/>
+</target>-->
Property changes on: modules/web/trunk/tools/etc/buildfragments/tools.ent
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/buildmagic/aliases.ent
===================================================================
--- modules/web/trunk/tools/etc/buildmagic/aliases.ent (rev 0)
+++ modules/web/trunk/tools/etc/buildmagic/aliases.ent 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,54 @@
+<!-- list of aliases used to bridge gap between buildmagic defs and jbossbuild -->
+
+
+<path id="apache.commons.classpath">
+ <pathelement
path="${apache.collections.lib}/commons-collections.jar"/>
+ <pathelement path="${apache.logging.lib}/commons-logging.jar"/>
+ <pathelement path="${apache.httpclient.lib}/commons-httpclient.jar"/>
+ <pathelement path="${apache.fileupload.lib}/commons-fileupload.jar"/>
+ <pathelement path="${apache.lang.lib}/commons-lang-2.0.jar"/>
+</path>
+
+<property name="xdoclet-xdoclet.lib"
value="${xdoclet.xdoclet.lib}"/>
+<path id="xdoclet.task.classpath">
+ <path refid="xdoclet.xdoclet.classpath"/>
+</path>
+
+<property name="trove.lib" value="${trove.trove.lib}"/>
+<path id="trove.classpath">
+ <path refid="trove.trove.classpath"/>
+</path>
+
+<path id="qdox.classpath">
+ <path refid="qdox.qdox.classpath"/>
+</path>
+
+<property name="javassist.lib"
value="${javassist.javassist.lib}"/>
+<path id="javassist.classpath">
+ <path refid="javassist.javassist.classpath"/>
+</path>
+
+<property name="hibernate.lib"
value="${hibernate.hibernate.lib}"/>
+<path id="hibernate3.classpath">
+ <path refid="hibernate.hibernate.classpath"/>
+</path>
+
+<property name="odmg.lib" value="${odmg.odmg.lib}"/>
+<path id="odmg.classpath">
+ <path refid="odmg.odmg.classpath"/>
+</path>
+
+<property name="cglib.lib" value="${cglib.cglib.lib}"/>
+<path id="cglib.classpath">
+ <path refid="cglib.cglib.classpath"/>
+</path>
+
+
+
+<!-- Ant -->
+<property name="apache.ant.root" value="${project.tools}"/>
+<property name="apache.ant.lib"
value="${apache.ant.root}/lib"/>
+<path id="apache.ant.classpath">
+ <pathelement path="${apache.ant.lib}/ant.jar"/>
+</path>
+
\ No newline at end of file
Property changes on: modules/web/trunk/tools/etc/buildmagic/aliases.ent
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/changelog.xsl
===================================================================
--- modules/web/trunk/tools/etc/changelog.xsl (rev 0)
+++ modules/web/trunk/tools/etc/changelog.xsl 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,148 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<xsl:stylesheet
+
xmlns:xsl='http://www.w3.org/1999/XSL/Transform'
+ version='1.0'>
+
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+
+-->
+ <xsl:param name="title"/>
+ <xsl:param name="module"/>
+ <xsl:param name="cvsweb"/>
+
+ <xsl:output method="html" indent="yes"
encoding="US-ASCII"
+ doctype-public="-//W3C//DTD HTML 4.01//EN"
+
doctype-system="http://www.w3.org/TR/html401/strict.dtd"/>
+
+ <!-- Copy standard document elements. Elements that
+ should be ignored must be filtered by apply-templates
+ tags. -->
+ <xsl:template match="*">
+ <xsl:copy>
+ <xsl:copy-of select="attribute::*[. != '']"/>
+ <xsl:apply-templates/>
+ </xsl:copy>
+ </xsl:template>
+
+ <xsl:template match="changelog">
+ <html>
+ <head>
+ <title><xsl:value-of select="$title"/></title>
+ <style type="text/css">
+ body, p {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 80%;
+ color: #000000;
+ background-color: #ffffff;
+ }
+ tr, td {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ background: #eeeee0;
+ }
+ td {
+ padding-left: 20px;
+ }
+ .dateAndAuthor {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-weight: bold;
+ text-align: left;
+ background: #a6caf0;
+ padding-left: 3px;
+ }
+ a {
+ color: #000000;
+ }
+ pre {
+ font-weight: bold;
+ }
+ </style>
+ </head>
+ <body>
+ <h1>
+ <a name="top"><xsl:value-of
select="$title"/></a>
+ </h1>
+ <p style="text-align: right">Designed for use with <a
href="http://ant.apache.org/">Apache Ant</a>.</p>
+ <hr/>
+ <table border="0" width="100%"
cellspacing="1">
+
+ <xsl:apply-templates select=".//entry">
+ <xsl:sort select="date" data-type="text"
order="descending"/>
+ <xsl:sort select="time" data-type="text"
order="descending"/>
+ </xsl:apply-templates>
+
+ </table>
+
+ </body>
+ </html>
+ </xsl:template>
+
+ <xsl:template match="entry">
+ <tr>
+ <td class="dateAndAuthor">
+ <xsl:value-of select="date"/><xsl:text>
</xsl:text><xsl:value-of select="time"/><xsl:text>
</xsl:text><xsl:value-of select="author"/>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <pre>
+<xsl:apply-templates select="msg"/></pre>
+ <ul>
+ <xsl:apply-templates select="file"/>
+ </ul>
+ </td>
+ </tr>
+ </xsl:template>
+
+ <xsl:template match="date">
+ <i><xsl:value-of select="."/></i>
+ </xsl:template>
+
+ <xsl:template match="time">
+ <i><xsl:value-of select="."/></i>
+ </xsl:template>
+
+ <xsl:template match="author">
+ <i>
+ <a>
+ <xsl:attribute name="href">mailto:<xsl:value-of
select="."/></xsl:attribute>
+ <xsl:value-of select="."/></a>
+ </i>
+ </xsl:template>
+
+ <xsl:template match="file">
+ <li>
+ <a>
+ <xsl:choose>
+ <xsl:when test="string-length(prevrevision) = 0 ">
+ <xsl:attribute name="href"><xsl:value-of
select="$cvsweb"/><xsl:value-of select="$module"
/>/<xsl:value-of select="name" />?rev=<xsl:value-of
select="revision"
/>&content-type=text/x-cvsweb-markup</xsl:attribute>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:attribute name="href"><xsl:value-of
select="$cvsweb"/><xsl:value-of select="$module"
/>/<xsl:value-of select="name" />?r1=<xsl:value-of
select="revision" />&r2=<xsl:value-of
select="prevrevision"/></xsl:attribute>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:value-of select="name" /> (<xsl:value-of
select="revision"/>)</a>
+ </li>
+ </xsl:template>
+
+ <!-- Any elements within a msg are processed,
+ so that we can preserve HTML tags. -->
+ <xsl:template match="msg">
+ <xsl:apply-templates/>
+ </xsl:template>
+
+</xsl:stylesheet>
Property changes on: modules/web/trunk/tools/etc/changelog.xsl
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/checkstyle/checkstyle-frames.xsl
===================================================================
--- modules/web/trunk/tools/etc/checkstyle/checkstyle-frames.xsl
(rev 0)
+++ modules/web/trunk/tools/etc/checkstyle/checkstyle-frames.xsl 2007-08-14 10:47:21 UTC
(rev 7913)
@@ -0,0 +1,293 @@
+<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0"
+
xmlns:lxslt="http://xml.apache.org/xslt"
+ xmlns:redirect="org.apache.xalan.lib.Redirect"
+ extension-element-prefixes="redirect">
+
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+-->
+
+ <xsl:output method="html" indent="yes"
encoding="US-ASCII"/>
+ <xsl:decimal-format decimal-separator="."
grouping-separator="," />
+
+ <xsl:param name="output.dir" select="'.'"/>
+ <xsl:param name="basedir" select="'.'"/>
+
+ <xsl:template match="checkstyle">
+ <!-- create the index.html -->
+ <redirect:write file="{$output.dir}/index.html">
+ <xsl:call-template name="index.html"/>
+ </redirect:write>
+
+ <!-- create the stylesheet.css -->
+ <redirect:write file="{$output.dir}/stylesheet.css">
+ <xsl:call-template name="stylesheet.css"/>
+ </redirect:write>
+
+ <!-- create the overview-summary.html at the root -->
+ <redirect:write file="{$output.dir}/overview-frame.html">
+ <xsl:apply-templates select="." mode="overview"/>
+ </redirect:write>
+
+ <!-- create the all-classes.html at the root -->
+ <redirect:write file="{$output.dir}/allclasses-frame.html">
+ <xsl:apply-templates select="."
mode="all.classes"/>
+ </redirect:write>
+
+ <!-- process all files -->
+ <xsl:apply-templates select="file[count(error) != 0]"/>
+ </xsl:template>
+
+ <xsl:template name="index.html">
+ <html>
+ <head>
+ <title>CheckStyle Audit</title>
+ </head>
+ <frameset cols="20%,80%">
+ <frame src="allclasses-frame.html"
name="fileListFrame"/>
+ <frame src="overview-frame.html"
name="fileFrame"/>
+ </frameset>
+ <noframes>
+ <h2>Frame Alert</h2>
+ <p>
+ This document is designed to be viewed using the frames feature.
+ If you see this message, you are using a non-frame-capable web
client.
+ </p>
+ </noframes>
+ </html>
+ </xsl:template>
+
+ <xsl:template name="pageHeader">
+ <table border="0" cellpadding="0"
cellspacing="0" width="100%">
+ <tr>
+ <td class="text-align:right"><h2>CheckStyle
Audit</h2></td>
+ </tr>
+ <tr>
+ <td class="text-align:right">Designed for use with
+ <a
href='http://checkstyle.sourceforge.net/'>CheckStyle</a> and
+ <a
href='http://ant.apache.org/'>Ant</a>.</td>
+ </tr>
+ </table>
+ <hr size="1"/>
+ </xsl:template>
+
+ <xsl:template match="checkstyle" mode="overview">
+ <html>
+ <head>
+ <link rel="stylesheet" type="text/css"
href="stylesheet.css"/>
+ </head>
+ <body>
+ <!-- page header -->
+ <xsl:call-template name="pageHeader"/>
+
+ <!-- Summary part -->
+ <xsl:apply-templates select="."
mode="summary"/>
+ <hr size="1" width="100%"
align="left"/>
+
+ <!-- File list part -->
+ <xsl:apply-templates select="."
mode="filelist"/>
+ </body>
+ </html>
+ </xsl:template>
+
+ <xsl:template name="stylesheet.css">
+ .bannercell {
+ border: 0px;
+ padding: 0px;
+ }
+ body {
+ margin-left: 10;
+ margin-right: 10;
+ font:normal 80% arial,helvetica,sanserif;
+ background-color:#FFFFFF;
+ color:#000000;
+ }
+ .oddrow td {
+ background: #efefef;
+ }
+ .evenrow td {
+ background: #fff;
+ }
+ th, td {
+ text-align: left;
+ vertical-align: top;
+ }
+ th {
+ font-weight:bold;
+ background: #ccc;
+ color: black;
+ }
+ table, th, td {
+ font-size:100%;
+ border: none
+ }
+ table.log tr td, tr th {
+
+ }
+ h2 {
+ font-weight:bold;
+ font-size:140%;
+ margin-bottom: 5;
+ }
+ h3 {
+ font-size:100%;
+ font-weight:bold;
+ background: #525D76;
+ color: white;
+ text-decoration: none;
+ padding: 5px;
+ margin-right: 2px;
+ margin-left: 2px;
+ margin-bottom: 0;
+ }
+ </xsl:template>
+
+ <!--
+ Creates an all-classes.html file that contains a link to all files.
+ -->
+ <xsl:template match="checkstyle" mode="all.classes">
+ <html>
+ <head>
+ <link rel="stylesheet" type="text/css"
href="stylesheet.css"/>
+ </head>
+ <body>
+ <h2>Files</h2>
+ <p>
+ <table width="100%">
+ <!-- For each file create its part -->
+ <xsl:apply-templates select="file[count(error) !=
0]" mode="all.classes">
+ <xsl:sort select="substring-after(@name,
$basedir)"/>
+ </xsl:apply-templates>
+ </table>
+ </p>
+ </body>
+ </html>
+ </xsl:template>
+
+ <xsl:template match="checkstyle" mode="filelist">
+ <h3>Files</h3>
+ <table class="log" border="0" cellpadding="5"
cellspacing="2" width="100%">
+ <tr>
+ <th>Name</th>
+ <th>Errors</th>
+ </tr>
+ <xsl:apply-templates select="file[count(error) != 0]"
mode="filelist">
+ <xsl:sort select="count(error)" order="descending"
data-type="number"/>
+ </xsl:apply-templates>
+ </table>
+ </xsl:template>
+
+ <xsl:template match="file" mode="filelist">
+ <tr>
+ <xsl:call-template name="alternated-row"/>
+ <td nowrap="nowrap">
+ <a>
+ <xsl:attribute name="href">
+ <xsl:text>files/</xsl:text><xsl:value-of
select="substring-after(@name,
$basedir)"/><xsl:text>.html</xsl:text>
+ </xsl:attribute>
+ <xsl:value-of select="substring-after(@name,
$basedir)"/>
+ </a>
+ </td>
+ <td><xsl:value-of select="count(error)"/></td>
+ </tr>
+ </xsl:template>
+
+ <xsl:template match="file" mode="all.classes">
+ <tr>
+ <td nowrap="nowrap">
+ <a target="fileFrame">
+ <xsl:attribute name="href">
+ <xsl:text>files/</xsl:text><xsl:value-of
select="substring-after(@name,
$basedir)"/><xsl:text>.html</xsl:text>
+ </xsl:attribute>
+ <xsl:value-of select="substring-after(@name,
$basedir)"/>
+ </a>
+ </td>
+ </tr>
+ </xsl:template>
+
+ <!--
+ transform string like a/b/c to ../../../
+ @param path the path to transform into a descending directory path
+ -->
+ <xsl:template name="path">
+ <xsl:param name="path"/>
+ <xsl:if test="contains($path,'/')">
+ <xsl:text>../</xsl:text>
+ <xsl:call-template name="path">
+ <xsl:with-param name="path"><xsl:value-of
select="substring-after($path,'/')"/></xsl:with-param>
+ </xsl:call-template>
+ </xsl:if>
+ <xsl:if test="not(contains($path,'/')) and not($path =
'')">
+ <xsl:text>../</xsl:text>
+ </xsl:if>
+ </xsl:template>
+
+ <xsl:template match="file">
+ <redirect:write file="{$output.dir}/files/{substring-after(@name,
$basedir)}.html">
+ <html>
+ <head>
+ <link rel="stylesheet" type="text/css">
+ <xsl:attribute name="href"><xsl:call-template
name="path"><xsl:with-param name="path"
select="substring-after(@name,
$basedir)"/></xsl:call-template><xsl:text>stylesheet.css</xsl:text></xsl:attribute>
+ </link>
+ </head>
+ <body>
+ <xsl:call-template name="pageHeader"/>
+ <h3>File <xsl:value-of select="substring-after(@name,
$basedir)"/></h3>
+ <table class="log" border="0"
cellpadding="5" cellspacing="2" width="100%">
+ <tr>
+ <th>Error Description</th>
+ <th>Line:Column</th>
+ </tr>
+ <xsl:for-each select="error">
+ <tr>
+ <xsl:call-template
name="alternated-row"/>
+ <td><a
title="{@source}"><xsl:value-of
select="@message"/></a></td>
+ <td align="center"><xsl:value-of
select="@line"/><xsl:if test="@column">:<xsl:value-of
select="@column"/></xsl:if></td>
+ </tr>
+ </xsl:for-each>
+ </table>
+ </body>
+ </html>
+ </redirect:write>
+ </xsl:template>
+
+ <xsl:template match="checkstyle" mode="summary">
+ <h3>Summary</h3>
+ <xsl:variable name="fileCount" select="count(file)"/>
+ <xsl:variable name="errorCount"
select="count(file/error)"/>
+ <xsl:variable name="fileErrorCount"
select="count(file[count(error) != 0])"/>
+ <table class="log" border="0" cellpadding="5"
cellspacing="2" width="100%">
+ <tr>
+ <th>Total Files</th>
+ <th>Files With Errors</th>
+ <th>Errors</th>
+ </tr>
+ <tr>
+ <xsl:call-template name="alternated-row"/>
+ <td><xsl:value-of select="$fileCount"/></td>
+ <td><xsl:value-of
select="$fileErrorCount"/></td>
+ <td><xsl:value-of
select="$errorCount"/></td>
+ </tr>
+ </table>
+ </xsl:template>
+
+ <xsl:template name="alternated-row">
+ <xsl:attribute name="class">
+ <xsl:if test="position() mod 2 = 1">oddrow</xsl:if>
+ <xsl:if test="position() mod 2 = 0">evenrow</xsl:if>
+ </xsl:attribute>
+ </xsl:template>
+</xsl:stylesheet>
\ No newline at end of file
Added: modules/web/trunk/tools/etc/checkstyle/checkstyle-text.xsl
===================================================================
--- modules/web/trunk/tools/etc/checkstyle/checkstyle-text.xsl
(rev 0)
+++ modules/web/trunk/tools/etc/checkstyle/checkstyle-text.xsl 2007-08-14 10:47:21 UTC
(rev 7913)
@@ -0,0 +1,33 @@
+<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
+
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+-->
+
+ <xsl:strip-space elements="checkstyle"/>
+ <xsl:preserve-space elements="file"/>
+ <xsl:output method="text"/>
+ <xsl:template match="checkstyle/file/error">
+ <xsl:value-of select="../@name"/>
+ <xsl:text>:</xsl:text>
+ <xsl:value-of select="@line"/>
+ <xsl:text>:</xsl:text>
+ <xsl:value-of select="@column"/>
+ <xsl:text> </xsl:text>
+ <xsl:value-of select="@message"/>
+ </xsl:template>
+</xsl:stylesheet>
+
Added: modules/web/trunk/tools/etc/checkstyle/checkstyle-xdoc.xsl
===================================================================
--- modules/web/trunk/tools/etc/checkstyle/checkstyle-xdoc.xsl
(rev 0)
+++ modules/web/trunk/tools/etc/checkstyle/checkstyle-xdoc.xsl 2007-08-14 10:47:21 UTC
(rev 7913)
@@ -0,0 +1,129 @@
+<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0"
+
xmlns:lxslt="http://xml.apache.org/xslt"
+ xmlns:redirect="org.apache.xalan.lib.Redirect"
+ extension-element-prefixes="redirect">
+
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+-->
+
+ <xsl:output method="xml" indent="yes"/>
+ <xsl:decimal-format decimal-separator="."
grouping-separator="," />
+
+ <xsl:param name="output.dir" select="'.'"/>
+ <xsl:param name="basedir" select="'.'"/>
+
+ <xsl:template match="checkstyle">
+ <document>
+ <properties>
+ <title>Checkstyle Audit</title>
+ </properties>
+
+ <body>
+ <xsl:apply-templates select="." mode="summary"/>
+ <!-- File list part -->
+ <xsl:apply-templates select="." mode="filelist"/>
+ <xsl:apply-templates select="file[count(error) != 0]"/>
+ </body>
+ </document>
+ </xsl:template>
+
+ <xsl:template match="checkstyle" mode="filelist">
+ <section name="Files">
+ <table>
+ <tr>
+ <th>Name</th>
+ <th>Errors</th>
+ </tr>
+ <xsl:apply-templates select="file[count(error) != 0]"
mode="filelist">
+ <xsl:sort select="count(error)" order="descending"
data-type="number"/>
+ </xsl:apply-templates>
+ </table>
+ </section>
+ </xsl:template>
+
+ <xsl:template match="file" mode="filelist">
+ <tr>
+ <xsl:call-template name="alternated-row"/>
+ <td nowrap="nowrap">
+ <a>
+ <xsl:attribute name="href">
+ <xsl:text>files</xsl:text><xsl:value-of
select="substring-after(@name,
$basedir)"/><xsl:text>.html</xsl:text>
+ </xsl:attribute>
+ <xsl:value-of select="substring-after(@name,
$basedir)"/>
+ </a>
+ </td>
+ <td><xsl:value-of select="count(error)"/></td>
+ </tr>
+ </xsl:template>
+
+ <xsl:template match="file">
+ <redirect:write file="{$output.dir}/files{substring-after(@name,
$basedir)}.xml">
+ <document>
+ <properties>
+ <title>Checkstyle Audit</title>
+ </properties>
+
+ <body>
+ <section name="Details for {substring-after(@name,
$basedir)}">
+ <table>
+ <tr>
+ <th>Error Description</th>
+ <th>Line</th>
+ </tr>
+ <xsl:for-each select="error">
+ <tr>
+ <xsl:call-template name="alternated-row"/>
+ <td><a title="{@source}"><xsl:value-of
select="@message"/></a></td>
+ <td><xsl:value-of
select="@line"/></td>
+ </tr>
+ </xsl:for-each>
+ </table>
+ </section>
+ </body>
+ </document>
+ </redirect:write>
+ </xsl:template>
+
+ <xsl:template match="checkstyle" mode="summary">
+ <section name="Summary">
+ <xsl:variable name="fileCount" select="count(file)"/>
+ <xsl:variable name="errorCount"
select="count(file/error)"/>
+ <xsl:variable name="fileErrorCount"
select="count(file[count(error) != 0])"/>
+ <table>
+ <tr>
+ <th>Files</th>
+ <th>Files With Errors</th>
+ <th>Errors</th>
+ </tr>
+ <tr>
+ <xsl:call-template name="alternated-row"/>
+ <td><xsl:value-of select="$fileCount"/></td>
+ <td><xsl:value-of
select="$fileErrorCount"/></td>
+ <td><xsl:value-of
select="$errorCount"/></td>
+ </tr>
+ </table>
+ </section>
+ </xsl:template>
+
+ <xsl:template name="alternated-row">
+ <xsl:attribute name="class">
+ <xsl:if test="position() mod 2 = 1">oddrow</xsl:if>
+ <xsl:if test="position() mod 2 = 0">evenrow</xsl:if>
+ </xsl:attribute>
+ </xsl:template>
+</xsl:stylesheet>
+
Added: modules/web/trunk/tools/etc/checkstyle-frames.xsl
===================================================================
--- modules/web/trunk/tools/etc/checkstyle-frames.xsl (rev 0)
+++ modules/web/trunk/tools/etc/checkstyle-frames.xsl 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,324 @@
+<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0"
+
xmlns:lxslt="http://xml.apache.org/xslt"
+ xmlns:redirect="org.apache.xalan.xslt.extensions.Redirect"
+ extension-element-prefixes="redirect">
+
+<!--
+ The Apache Software License, Version 1.1
+
+ Copyright (c) 2002 The Apache Software Foundation. All rights
+ reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions
+ are met:
+
+ 1. Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+
+ 2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in
+ the documentation and/or other materials provided with the
+ distribution.
+
+ 3. The end-user documentation included with the redistribution, if
+ any, must include the following acknowlegement:
+ "This product includes software developed by the
+ Apache Software Foundation (
http://www.apache.org/)."
+ Alternately, this acknowlegement may appear in the software itself,
+ if and wherever such third-party acknowlegements normally appear.
+
+ 4. The names "The Jakarta Project", "Ant", and "Apache
Software
+ Foundation" must not be used to endorse or promote products derived
+ from this software without prior written permission. For written
+ permission, please contact apache(a)apache.org.
+
+ 5. Products derived from this software may not be called "Apache"
+ nor may "Apache" appear in their names without prior written
+ permission of the Apache Group.
+
+ THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+ WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
+ ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+ USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ SUCH DAMAGE.
+ ====================================================================
+
+ This software consists of voluntary contributions made by many
+ individuals on behalf of the Apache Software Foundation. For more
+ information on the Apache Software Foundation, please see
+ <
http://www.apache.org/>.
+ -->
+
+ <xsl:output method="html" indent="yes"
encoding="US-ASCII"/>
+ <xsl:decimal-format decimal-separator="."
grouping-separator="," />
+
+ <xsl:param name="output.dir" select="'.'"/>
+
+ <xsl:template match="checkstyle">
+ <!-- create the index.html -->
+ <redirect:write file="{$output.dir}/index.html">
+ <xsl:call-template name="index.html"/>
+ </redirect:write>
+
+ <!-- create the stylesheet.css -->
+ <redirect:write file="{$output.dir}/stylesheet.css">
+ <xsl:call-template name="stylesheet.css"/>
+ </redirect:write>
+
+ <!-- create the overview-summary.html at the root -->
+ <redirect:write file="{$output.dir}/overview-frame.html">
+ <xsl:apply-templates select="." mode="overview"/>
+ </redirect:write>
+
+ <!-- create the all-classes.html at the root -->
+ <redirect:write file="{$output.dir}/allclasses-frame.html">
+ <xsl:apply-templates select="."
mode="all.classes"/>
+ </redirect:write>
+
+ <!-- process all files -->
+ <xsl:apply-templates select="file"/>
+ </xsl:template>
+
+ <xsl:template name="index.html">
+ <html>
+ <head>
+ <title>CheckStyle Audit</title>
+ </head>
+ <frameset cols="20%,80%">
+ <frame src="allclasses-frame.html"
name="fileListFrame"/>
+ <frame src="overview-frame.html"
name="fileFrame"/>
+ </frameset>
+ <noframes>
+ <h2>Frame Alert</h2>
+ <p>
+ This document is designed to be viewed using the frames feature. If
you see this message, you are using a non-frame-capable web client.
+ </p>
+ </noframes>
+ </html>
+ </xsl:template>
+
+ <xsl:template name="pageHeader">
+ <table border="0" cellpadding="0"
cellspacing="0" width="100%">
+ <tr>
+ <td class="text-align:right"><h2>CheckStyle
Audit</h2></td>
+ </tr>
+ <tr>
+ <td class="text-align:right">Designed for use with <a
href='http://checkstyle.sourceforge.net/'>CheckStyle</a> and <a
href='http://jakarta.apache.org'>Ant</a>.</td>
+ </tr>
+ </table>
+ <hr size="1"/>
+ </xsl:template>
+
+ <xsl:template match="checkstyle" mode="overview">
+ <html>
+ <head>
+ <link rel="stylesheet" type="text/css"
href="stylesheet.css"/>
+ </head>
+ <body>
+ <!-- page header -->
+ <xsl:call-template name="pageHeader"/>
+
+ <!-- Summary part -->
+ <xsl:apply-templates select="."
mode="summary"/>
+ <hr size="1" width="100%"
align="left"/>
+
+ <!-- File list part -->
+ <xsl:apply-templates select="."
mode="filelist"/>
+ </body>
+ </html>
+ </xsl:template>
+
+ <xsl:template name="stylesheet.css">
+ .bannercell {
+ border: 0px;
+ padding: 0px;
+ }
+ body {
+ margin-left: 10;
+ margin-right: 10;
+ font:normal 80% arial,helvetica,sanserif;
+ background-color:#FFFFFF;
+ color:#000000;
+ }
+ .a td {
+ background: #efefef;
+ }
+ .b td {
+ background: #fff;
+ }
+ th, td {
+ text-align: left;
+ vertical-align: top;
+ }
+ th {
+ font-weight:bold;
+ background: #ccc;
+ color: black;
+ }
+ table, th, td {
+ font-size:100%;
+ border: none
+ }
+ table.log tr td, tr th {
+
+ }
+ h2 {
+ font-weight:bold;
+ font-size:140%;
+ margin-bottom: 5;
+ }
+ h3 {
+ font-size:100%;
+ font-weight:bold;
+ background: #525D76;
+ color: white;
+ text-decoration: none;
+ padding: 5px;
+ margin-right: 2px;
+ margin-left: 2px;
+ margin-bottom: 0;
+ }
+ </xsl:template>
+
+ <!--
+ Creates an all-classes.html file that contains a link to all files.
+ -->
+ <xsl:template match="checkstyle" mode="all.classes">
+ <html>
+ <head>
+ <link rel="stylesheet" type="text/css"
href="stylesheet.css"/>
+ </head>
+ <body>
+ <h2>Files</h2>
+ <p>
+ <table width="100%">
+ <!-- For each file create its part -->
+ <xsl:apply-templates select="file"
mode="all.classes">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table>
+ </p>
+ </body>
+ </html>
+ </xsl:template>
+
+ <xsl:template match="checkstyle" mode="filelist">
+ <h3>Files</h3>
+ <table class="log" border="0" cellpadding="5"
cellspacing="2" width="100%">
+ <tr>
+ <th>Name</th>
+ <th>Errors</th>
+ </tr>
+ <xsl:apply-templates select="file"
mode="filelist">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table>
+ </xsl:template>
+
+ <xsl:template match="file" mode="filelist">
+ <tr>
+ <xsl:call-template name="alternated-row"/>
+ <td nowrap="nowrap">
+ <a>
+ <xsl:attribute name="href">
+ <xsl:text>files/</xsl:text><xsl:value-of
select="@name"/><xsl:text>.html</xsl:text>
+ </xsl:attribute>
+ <xsl:value-of select="@name"/>
+ </a>
+ </td>
+ <td><xsl:value-of select="count(error)"/></td>
+ </tr>
+ </xsl:template>
+
+ <xsl:template match="file" mode="all.classes">
+ <tr>
+ <td nowrap="nowrap">
+ <a target="fileFrame">
+ <xsl:attribute name="href">
+ <xsl:text>files/</xsl:text><xsl:value-of
select="@name"/><xsl:text>.html</xsl:text>
+ </xsl:attribute>
+ <xsl:value-of select="@name"/>
+ </a>
+ </td>
+ </tr>
+ </xsl:template>
+
+ <!--
+ transform string like a/b/c to ../../../
+ @param path the path to transform into a descending directory path
+ -->
+ <xsl:template name="path">
+ <xsl:param name="path"/>
+ <xsl:if test="contains($path,'/')">
+ <xsl:text>../</xsl:text>
+ <xsl:call-template name="path">
+ <xsl:with-param name="path"><xsl:value-of
select="substring-after($path,'/')"/></xsl:with-param>
+ </xsl:call-template>
+ </xsl:if>
+ <xsl:if test="not(contains($path,'/')) and not($path =
'')">
+ <xsl:text>../</xsl:text>
+ </xsl:if>
+ </xsl:template>
+
+ <xsl:template match="file">
+ <redirect:write file="{$output.dir}/files/{(a)name}.html">
+ <html>
+ <head>
+ <link rel="stylesheet" type="text/css">
+ <xsl:attribute name="href"><xsl:call-template
name="path"><xsl:with-param name="path"
select="@name"/></xsl:call-template><xsl:text>stylesheet.css</xsl:text></xsl:attribute>
+ </link>
+ </head>
+ <body>
+ <xsl:call-template name="pageHeader"/>
+ <h3>File <xsl:value-of
select="@name"/></h3>
+ <table class="log" border="0"
cellpadding="5" cellspacing="2" width="100%">
+ <tr>
+ <th>Error Description</th>
+ <th>Line</th>
+ </tr>
+ <xsl:for-each select="error">
+ <tr>
+ <xsl:call-template
name="alternated-row"/>
+ <td><xsl:value-of
select="@message"/></td>
+ <td><xsl:value-of
select="@line"/></td>
+ </tr>
+ </xsl:for-each>
+ </table>
+ </body>
+ </html>
+ </redirect:write>
+ </xsl:template>
+
+ <xsl:template match="checkstyle" mode="summary">
+ <h3>Summary</h3>
+ <xsl:variable name="fileCount" select="count(file)"/>
+ <xsl:variable name="errorCount"
select="count(file/error)"/>
+ <table class="log" border="0" cellpadding="5"
cellspacing="2" width="100%">
+ <tr>
+ <th>Files</th>
+ <th>Errors</th>
+ </tr>
+ <tr>
+ <xsl:call-template name="alternated-row"/>
+ <td><xsl:value-of select="$fileCount"/></td>
+ <td><xsl:value-of
select="$errorCount"/></td>
+ </tr>
+ </table>
+ </xsl:template>
+
+ <xsl:template name="alternated-row">
+ <xsl:attribute name="class">
+ <xsl:if test="position() mod 2 = 1">a</xsl:if>
+ <xsl:if test="position() mod 2 = 0">b</xsl:if>
+ </xsl:attribute>
+ </xsl:template>
+</xsl:stylesheet>
+
Property changes on: modules/web/trunk/tools/etc/checkstyle-frames.xsl
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/coverage-frames.xsl
===================================================================
--- modules/web/trunk/tools/etc/coverage-frames.xsl (rev 0)
+++ modules/web/trunk/tools/etc/coverage-frames.xsl 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,488 @@
+<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0"
+
xmlns:lxslt="http://xml.apache.org/xslt"
+ xmlns:redirect="org.apache.xalan.lib.Redirect"
+ extension-element-prefixes="redirect">
+<xsl:output method="html" indent="yes"/>
+<xsl:decimal-format decimal-separator="." grouping-separator=","
/>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+-->
+
+<!--
+
+ Sample stylesheet to be used with JProbe 3.0 XML output.
+
+ It creates a set of HTML files a la javadoc where you can browse easily
+ through all packages and classes.
+
+ It is best used with JProbe Coverage Ant task that gives you the benefit
+ of a reference classpath so that you have the list of classes/methods
+ that are not used at all in a given classpath.
+
+ @author Stephane Bailliez <a href="mailto:sbailliez@apache.org"/>
+
+-->
+
+<!-- default output directory is current directory -->
+<xsl:param name="output.dir" select="'.'"/>
+
+<!-- ======================================================================
+ Root element
+ ======================================================================= -->
+<xsl:template match="/snapshot">
+ <!-- create the index.html -->
+ <redirect:write file="{$output.dir}/index.html">
+ <xsl:call-template name="index.html"/>
+ </redirect:write>
+
+ <!-- create the stylesheet.css -->
+ <redirect:write file="{$output.dir}/stylesheet.css">
+ <xsl:call-template name="stylesheet.css"/>
+ </redirect:write>
+
+ <!-- create the overview-packages.html at the root -->
+ <redirect:write file="{$output.dir}/overview-summary.html">
+ <xsl:apply-templates select="."
mode="overview.packages"/>
+ </redirect:write>
+
+ <!-- create the all-packages.html at the root -->
+ <redirect:write file="{$output.dir}/overview-frame.html">
+ <xsl:apply-templates select="." mode="all.packages"/>
+ </redirect:write>
+
+ <!-- create the all-classes.html at the root -->
+ <redirect:write file="{$output.dir}/allclasses-frame.html">
+ <xsl:apply-templates select="." mode="all.classes"/>
+ </redirect:write>
+
+ <!-- process all packages -->
+ <xsl:apply-templates select="./package" mode="write"/>
+</xsl:template>
+
+<!-- =======================================================================
+ Frameset definition. Entry point for the report.
+ 3 frames: packageListFrame, classListFrame, classFrame
+ ======================================================================= -->
+<xsl:template name="index.html">
+<html>
+ <head><title>Coverage Results.</title></head>
+ <frameset cols="20%,80%">
+ <frameset rows="30%,70%">
+ <frame src="overview-frame.html"
name="packageListFrame"/>
+ <frame src="allclasses-frame.html"
name="classListFrame"/>
+ </frameset>
+ <frame src="overview-summary.html" name="classFrame"/>
+ </frameset>
+ <noframes>
+ <h2>Frame Alert</h2>
+ <p>
+ This document is designed to be viewed using the frames feature. If you see this
message, you are using a non-frame-capable web client.
+ </p>
+ </noframes>
+</html>
+</xsl:template>
+
+<!-- =======================================================================
+ Stylesheet CSS used
+ ======================================================================= -->
+<!-- this is the stylesheet css to use for nearly everything -->
+<xsl:template name="stylesheet.css">
+ .bannercell {
+ border: 0px;
+ padding: 0px;
+ }
+ body {
+ margin-left: 10;
+ margin-right: 10;
+ font:normal 80% arial,helvetica,sanserif;
+ background-color:#FFFFFF;
+ color:#000000;
+ }
+ .a td {
+ background: #efefef;
+ }
+ .b td {
+ background: #fff;
+ }
+ th, td {
+ text-align: left;
+ vertical-align: top;
+ }
+ th {
+ font-weight:bold;
+ background: #ccc;
+ color: black;
+ }
+ table, th, td {
+ font-size:100%;
+ border: none
+ }
+ table.log tr td, tr th {
+
+ }
+ h2 {
+ font-weight:bold;
+ font-size:140%;
+ margin-bottom: 5;
+ }
+ h3 {
+ font-size:100%;
+ font-weight:bold;
+ background: #525D76;
+ color: white;
+ text-decoration: none;
+ padding: 5px;
+ margin-right: 2px;
+ margin-left: 2px;
+ margin-bottom: 0;
+ }
+</xsl:template>
+
+<!-- =======================================================================
+ List of all classes in all packages
+ This will be the first page in the classListFrame
+ ======================================================================= -->
+<xsl:template match="snapshot" mode="all.classes">
+ <html>
+ <head>
+ <xsl:call-template name="create.stylesheet.link"/>
+ </head>
+ <body>
+ <h2>Classes</h2>
+ <table width="100%">
+ <xsl:for-each select="package/class">
+ <xsl:sort select="@name"/>
+ <xsl:variable name="package.name"
select="(ancestor::package)[last()]/@name"/>
+ <xsl:variable name="link">
+ <xsl:if test="not($package.name='')">
+ <xsl:value-of
select="translate($package.name,'.','/')"/><xsl:text>/</xsl:text>
+ </xsl:if><xsl:value-of
select="@name"/><xsl:text>.html</xsl:text>
+ </xsl:variable>
+ <tr>
+ <td nowrap="nowrap">
+ <a target="classFrame"
href="{$link}"><xsl:value-of select="@name"/></a>
+ </td>
+ </tr>
+ </xsl:for-each>
+ </table>
+ </body>
+ </html>
+</xsl:template>
+
+<!-- list of all packages -->
+<xsl:template match="snapshot" mode="all.packages">
+ <html>
+ <head>
+ <xsl:call-template name="create.stylesheet.link"/>
+ </head>
+ <body>
+ <h2><a href="overview-summary.html"
target="classFrame">Home</a></h2>
+ <h2>Packages</h2>
+ <table width="100%">
+ <xsl:for-each select="package">
+ <xsl:sort select="@name"
order="ascending"/>
+ <tr>
+ <td nowrap="nowrap">
+ <a
href="{translate((a)name,'.','/')}/package-summary.html"
target="classFrame">
+ <xsl:value-of select="@name"/>
+ </a>
+ </td>
+ </tr>
+ </xsl:for-each>
+ </table>
+ </body>
+ </html>
+</xsl:template>
+
+<!-- overview of statistics in packages -->
+<xsl:template match="snapshot" mode="overview.packages">
+ <html>
+ <head>
+ <xsl:call-template name="create.stylesheet.link"/>
+ </head>
+ <body
onload="open('allclasses-frame.html','classListFrame')">
+ <xsl:call-template name="pageHeader"/>
+ <h3>Summary</h3>
+ <table class="log" cellpadding="5"
cellspacing="2" width="100%">
+ <tr>
+ <!--th width="10%"
nowrap="nowrap">Date</th>
+ <th width="10%" nowrap="nowrap">Elapsed
time</th-->
+ <th width="10%" nowrap="nowrap">Reported
Classes</th>
+ <th width="10%" nowrap="nowrap">Methods
Hit</th>
+ <th width="10%" nowrap="nowrap">Lines
Hit</th>
+ </tr>
+ <tr class="a">
+ <!--td nowrap="nowrap"><xsl:value-of
select="execution_log/@program_start"/></td>
+ <td><xsl:value-of
select="format-number(execution_log/@elapsed_time div
1000,'0.0')"/>secs</td-->
+ <td><xsl:value-of
select="count(package/class)"/></td>
+ <td><xsl:value-of
select="format-number(cov.data/@hit_methods div
cov.data/(a)total_methods,'0.0%')"/></td>
+ <td><xsl:value-of select="format-number(cov.data/@hit_lines
div cov.data/(a)total_lines,'0.0%')"/></td>
+ </tr>
+ </table>
+ <table border="0" width="100%">
+ <tr>
+ <td style="text-align: justify;">
+ To ensure accurate test runs on Java applications, developers need to know how
much of
+ the code has been tested, and where to find any untested code. Coverage helps
you
+ locate untested code, and measure precisely how much code has been exercised.
+ The result is a higher quality application in a shorter period of time.
+ <p/>
+ </td>
+ </tr>
+ </table>
+
+ <h3>Packages</h3>
+ <table class="log" cellpadding="5"
cellspacing="2" width="100%">
+ <xsl:apply-templates select="package[1]"
mode="stats.header"/>
+ <!-- display packages and sort them via their coverage rate -->
+ <xsl:for-each select="package">
+ <xsl:sort data-type="number"
select="cov.data/@hit_lines div cov.data/@total_lines"/>
+ <tr>
+ <xsl:call-template name="alternate-row"/>
+ <td><a
href="{translate(@name,'.','/')}/package-summary.html"><xsl:value-of
select="@name"/></a></td>
+ <td><xsl:value-of
select="format-number(cov.data/@hit_methods div
cov.data/(a)total_methods,'0.0%')"/></td>
+ <td><xsl:value-of
select="format-number(cov.data/@hit_lines div
cov.data/(a)total_lines,'0.0%')"/></td>
+ </tr>
+ </xsl:for-each>
+ </table>
+ <xsl:call-template name="pageFooter"/>
+ </body>
+ </html>
+</xsl:template>
+
+<!--
+ detailed info for a package. It will output the list of classes
+, the summary page, and the info for each class
+-->
+<xsl:template match="package" mode="write">
+ <xsl:variable name="package.dir">
+ <xsl:if test="not(@name = '')"><xsl:value-of
select="translate(@name,'.','/')"/></xsl:if>
+ <xsl:if test="@name = ''">.</xsl:if>
+ </xsl:variable>
+
+ <!-- create a classes-list.html in the package directory -->
+ <redirect:write
file="{$output.dir}/{$package.dir}/package-frame.html">
+ <xsl:apply-templates select="." mode="classes.list"/>
+ </redirect:write>
+
+ <!-- create a package-summary.html in the package directory -->
+ <redirect:write
file="{$output.dir}/{$package.dir}/package-summary.html">
+ <xsl:apply-templates select="."
mode="package.summary"/>
+ </redirect:write>
+
+ <!-- for each class, creates a @name.html -->
+ <xsl:for-each select="class">
+ <redirect:write
file="{$output.dir}/{$package.dir}/{(a)name}.html">
+ <xsl:apply-templates select="."
mode="class.details"/>
+ </redirect:write>
+ </xsl:for-each>
+</xsl:template>
+
+<!-- list of classes in a package -->
+<xsl:template match="package" mode="classes.list">
+ <html>
+ <HEAD>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"
select="@name"/>
+ </xsl:call-template>
+ </HEAD>
+ <BODY>
+ <table width="100%">
+ <tr>
+ <td nowrap="nowrap">
+ <H2><a href="package-summary.html"
target="classFrame"><xsl:value-of
select="@name"/></a></H2>
+ </td>
+ </tr>
+ </table>
+
+ <H2>Classes</H2>
+ <TABLE WIDTH="100%">
+ <xsl:for-each select="class">
+ <xsl:sort select="@name"/>
+ <tr>
+ <td nowrap="nowrap">
+ <a href="{(a)name}.html"
target="classFrame"><xsl:value-of select="@name"/></a>
+ </td>
+ </tr>
+ </xsl:for-each>
+ </TABLE>
+ </BODY>
+ </html>
+</xsl:template>
+
+<!-- summary of a package -->
+<xsl:template match="package" mode="package.summary">
+ <HTML>
+ <HEAD>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"
select="@name"/>
+ </xsl:call-template>
+ </HEAD>
+ <!-- when loading this package, it will open the classes into the frame
-->
+ <BODY
onload="open('package-frame.html','classListFrame')">
+ <xsl:call-template name="pageHeader"/>
+ <h3>Package <xsl:value-of select="@name"/></h3>
+ <table class="log" cellpadding="5"
cellspacing="2" width="100%">
+ <xsl:apply-templates select="."
mode="stats.header"/>
+ <xsl:apply-templates select="." mode="stats"/>
+ </table>
+
+ <xsl:if test="count(class) > 0">
+ <H3>Classes</H3>
+ <table class="log" cellpadding="5"
cellspacing="2" width="100%">
+ <xsl:apply-templates select="."
mode="stats.header"/>
+ <xsl:apply-templates select="class"
mode="stats">
+ <xsl:sort data-type="number"
select="cov.data/@hit_lines div cov.data/@total_lines"/>
+ </xsl:apply-templates>
+ </table>
+ </xsl:if>
+ <xsl:call-template name="pageFooter"/>
+ </BODY>
+ </HTML>
+</xsl:template>
+
+<!-- details of a class -->
+<xsl:template match="class" mode="class.details">
+ <xsl:variable name="package.name"
select="(ancestor::package)[last()]/@name"/>
+ <HTML>
+ <HEAD>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"
select="$package.name"/>
+ </xsl:call-template>
+ </HEAD>
+ <BODY>
+ <xsl:call-template name="pageHeader"/>
+ <H3>Class <xsl:if test="not($package.name =
'')"><xsl:value-of
select="$package.name"/>.</xsl:if><xsl:value-of
select="@name"/></H3>
+
+ <!-- class summary -->
+ <table class="log" cellpadding="5"
cellspacing="2" width="100%">
+ <xsl:apply-templates select="."
mode="stats.header"/>
+ <xsl:apply-templates select="." mode="stats"/>
+ </table>
+
+ <!-- details of methods -->
+ <H3>Methods</H3>
+ <table class="log" cellpadding="5"
cellspacing="2" width="100%">
+ <xsl:apply-templates select="method[1]"
mode="stats.header"/>
+ <xsl:apply-templates select="method"
mode="stats">
+ <xsl:sort data-type="number"
select="cov.data/@hit_lines div cov.data/@total_lines"/>
+ </xsl:apply-templates>
+ </table>
+ <xsl:call-template name="pageFooter"/>
+ </BODY>
+ </HTML>
+
+</xsl:template>
+
+<!-- Page Header -->
+<xsl:template name="pageHeader">
+ <!-- jakarta logo -->
+ <table border="0" cellpadding="0" cellspacing="0"
width="100%">
+ <tr>
+ <td class="bannercell" rowspan="2">
+ <a
href="http://jakarta.apache.org/">
+ <img
src="http://jakarta.apache.org/images/jakarta-logo.gif"
alt="http://jakarta.apache.org" align="left"
border="0"/>
+ </a>
+ </td>
+ <td style="text-align:right"><h2>Source Code
Coverage</h2></td>
+ </tr>
+ <tr>
+ <td style="text-align:right">Designed for use with <a
href='http://www.sitraka.com/jprobe'>Sitraka JProbe</a> and <a
href='http://jakarta.apache.org'>Ant</a>.</td>
+ </tr>
+ </table>
+ <hr size="1"/>
+</xsl:template>
+
+<!-- Page Footer -->
+<xsl:template name="pageFooter">
+</xsl:template>
+
+
+<xsl:template name="table.header">
+ <tr>
+ <th width="80%">Name</th>
+ <th width="10%" nowrap="nowrap">Methods Hit</th>
+ <th width="10%" nowrap="nowrap">Lines Hit</th>
+ </tr>
+</xsl:template>
+
+<xsl:template match="method" mode="stats.header">
+ <tr>
+ <th width="90%">Name</th>
+ <th width="10%" nowrap="nowrap">Lines Hit</th>
+ </tr>
+</xsl:template>
+<xsl:template match="method" mode="stats">
+ <tr>
+ <xsl:call-template name="alternate-row"/>
+ <td><xsl:value-of select="@name"/></td>
+ <td>
+ <xsl:value-of select="format-number(cov.data/@hit_lines div
cov.data/(a)total_lines,'0.0%')"/>
+ </td>
+ </tr>
+</xsl:template>
+
+<xsl:template match="package|class" mode="stats.header">
+ <tr>
+ <th width="80%">Name</th>
+ <th width="10%" nowrap="nowrap">Methods Hit</th>
+ <th width="10%" nowrap="nowrap">Lines Hit</th>
+ </tr>
+</xsl:template>
+<xsl:template match="package|class" mode="stats">
+ <tr>
+ <xsl:call-template name="alternate-row"/>
+ <td><xsl:value-of select="@name"/></td>
+ <td><xsl:value-of select="format-number(cov.data/@hit_methods div
cov.data/(a)total_methods,'0.0%')"/></td>
+ <td><xsl:value-of select="format-number(cov.data/@hit_lines div
cov.data/(a)total_lines,'0.0%')"/></td>
+ </tr>
+</xsl:template>
+
+<!--
+ transform string like a.b.c to ../../../
+ @param path the path to transform into a descending directory path
+-->
+<xsl:template name="path">
+ <xsl:param name="path"/>
+ <xsl:if test="contains($path,'.')">
+ <xsl:text>../</xsl:text>
+ <xsl:call-template name="path">
+ <xsl:with-param name="path"><xsl:value-of
select="substring-after($path,'.')"/></xsl:with-param>
+ </xsl:call-template>
+ </xsl:if>
+ <xsl:if test="not(contains($path,'.')) and not($path =
'')">
+ <xsl:text>../</xsl:text>
+ </xsl:if>
+</xsl:template>
+
+
+<!-- create the link to the stylesheet based on the package name -->
+<xsl:template name="create.stylesheet.link">
+ <xsl:param name="package.name"/>
+ <LINK REL ="stylesheet" TYPE="text/css"
TITLE="Style"><xsl:attribute name="href"><xsl:if
test="not($package.name = 'unnamed package')"><xsl:call-template
name="path"><xsl:with-param name="path"
select="$package.name"/></xsl:call-template></xsl:if>stylesheet.css</xsl:attribute></LINK>
+</xsl:template>
+
+<!-- alternated row style -->
+<xsl:template name="alternate-row">
+<xsl:attribute name="class">
+ <xsl:if test="position() mod 2 = 1">a</xsl:if>
+ <xsl:if test="position() mod 2 = 0">b</xsl:if>
+</xsl:attribute>
+</xsl:template>
+
+</xsl:stylesheet>
+
+
Property changes on: modules/web/trunk/tools/etc/coverage-frames.xsl
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/jbossbuild/tasks.xml
===================================================================
--- modules/web/trunk/tools/etc/jbossbuild/tasks.xml (rev 0)
+++ modules/web/trunk/tools/etc/jbossbuild/tasks.xml 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,251 @@
+<?xml version="1.0"?>
+
+<!--
+ JBoss, the OpenSource J2EE webOS
+
+ Distributable under LGPL license.
+ See terms of license at
gnu.org.
+-->
+<project name="jboss.ant.tasks"
+ default="help-fragment"
+>
+<!-- ================================================================== -->
+<!-- Properties -->
+<!-- ================================================================== -->
+
+
+ <property name="cvs.prefix"
+ value=":pserver:anonymous@anoncvs.forge.jboss.com:/cvsroot/jboss"/>
+
+ <property name="jboss.tasks.path"
+ value="../tools/lib/jbossbuild.jar" />
+
+ <property name="jbossbuild.component.info"
+ value="component-info.xml"/>
+
+ <property name="jbossbuild.thirdparty.dir"
+ value="thirdparty"/>
+
+ <property name="jbossbuild.targetdefs.refid"
+ value="targets"/>
+
+
+
+<!-- ================================================================== -->
+<!-- Type Definitions -->
+<!-- ================================================================== -->
+
+ <!-- The generate type -->
+ <typedef name="generate"
+ classname="org.jboss.ant.types.Generate"
+ loaderRef="jboss.tasks.path"
+ classpath="${jboss.tasks.path}"
+ />
+
+ <!-- The build type -->
+ <typedef name="build"
+ classname="org.jboss.ant.types.build.Build"
+ loaderRef="jboss.tasks.path"
+ classpath="${jboss.tasks.path}"
+ />
+
+ <!-- The artifact type definition type -->
+ <typedef name="artifacttype"
+ classname="org.jboss.ant.types.build.ArtifactType"
+ loaderRef="jboss.tasks.path"
+ classpath="${jboss.tasks.path}"
+ />
+
+ <!-- The component definition type -->
+ <typedef name="componentdef"
+ classname="org.jboss.ant.types.component.ComponentDefinition"
+ loaderRef="jboss.tasks.path"
+ classpath="${jboss.tasks.path}"
+ />
+
+ <!-- The component type -->
+ <typedef name="component"
+ classname="org.jboss.ant.types.build.Component"
+ loaderRef="jboss.tasks.path"
+ classpath="${jboss.tasks.path}"
+ />
+
+ <!-- The includes type -->
+ <typedef name="includes"
+ classname="org.jboss.ant.types.Includes"
+ loaderRef="jboss.tasks.path"
+ classpath="${jboss.tasks.path}"
+ />
+
+ <!-- The build targets type -->
+ <typedef name="targets"
+ classname="org.jboss.ant.types.target.TargetDefinitions"
+ loaderRef="jboss.tasks.path"
+ classpath="${jboss.tasks.path}"
+ />
+
+
+<!-- ================================================================== -->
+<!-- Task Definitions -->
+<!-- ================================================================== -->
+
+
+ <!-- Generate a componentref graph and resolve the dependencies -->
+ <taskdef name="synchronizeinfo"
+ classname="org.jboss.ant.tasks.build.SynchronizeComponentsTask"
+ loaderRef="jboss.tasks.path"
+ classpath="${jboss.tasks.path}"
+ />
+
+ <!-- A task which allows a visitor to visit the graph -->
+ <taskdef name="visit-componentref-graph"
+ classname="org.jboss.ant.tasks.build.VisitComponentRefGraphTask"
+ loaderRef="jboss.tasks.path"
+ classpath="${jboss.tasks.path}"
+ />
+
+ <!-- Generate libraries.ent with version number in paths -->
+ <taskdef name="gen-lib-file"
+ classname="org.jboss.ant.tasks.build.GenerateLibrariesFile"
+ loaderRef="jboss.tasks.path"
+ classpath="${jboss.tasks.path}"
+ />
+
+
+
+ <!-- Executes a given target without reparsing the project file -->
+ <taskdef name="execute-target"
+ classname="org.jboss.ant.tasks.build.TargetExecutor"
+ loaderRef="jboss.tasks.path"
+ classpath="${jboss.tasks.path}"
+ />
+
+
+
+
+
+
+
+
+
+<!-- ================================================================== -->
+<!-- Artifact Definitions -->
+<!-- ================================================================== -->
+
+ <artifacttype type="jar" outputtype="lib"/>
+ <artifacttype type="zip" outputtype="lib"/>
+ <artifacttype type="sar" outputtype="lib"/>
+ <artifacttype type="rar" outputtype="lib"/>
+ <artifacttype type="war" outputtype="lib"/>
+ <artifacttype type="deployer" outputtype="lib"/>
+ <artifacttype type="api" outputtype="api"/>
+ <artifacttype type="xml" outputtype="resource"/>
+ <artifacttype type="policy" outputtype="resource"/>
+ <artifacttype type="properties" outputtype="resource"/>
+ <artifacttype type="sh" outputtype="bin"/>
+ <artifacttype type="bat" outputtype="bin"/>
+ <artifacttype type="conf" outputtype="bin"/>
+ <artifacttype type="dtd" outputtype="dtd"/>
+ <artifacttype type="xsd" outputtype="schema"/>
+ <artifacttype type="aop" outputtype="resource"/>
+ <artifacttype type="idl" outputtype="resource"/>
+ <artifacttype type="md5" outputtype="bin"/>
+ <artifacttype type="dir" outputtype="lib"/>
+ <artifacttype type="ddl" outputtype="resource"/>
+
+<!-- ================================================================== -->
+<!-- Target Definitions -->
+<!-- ================================================================== -->
+
+ <targets id="targets">
+
+ <!-- ============================================================ -->
+ <!-- Synchronize -->
+ <!-- Resynchronizes the project with cvs -->
+ <!-- ============================================================ -->
+
+ <targetdef target="synchronize"
description="Synchronize">
+
+ <!-- Update the main build folder and tools from cvs
+ then do the same for the components before running
+ the after synchronization processing
+ NOTE: Does not automatically invoke component builds
+ as the list of components maybe out-of-date at this point
+ and we need to conditionally do cvs co/update
+ -->
+ <main components="none">
+ <!-- cvs command="update -dP"
failonerror="true"/-->
+ <!--invoke target="synchronize" dir="../tools"/-->
+ <execute-target target="synchronize.components" />
+ <!-- execant target="synchronize.after.main"/-->
+ </main>
+
+ <componentmain unless="@{local}">
+ <mkdir dir="@{thirdpartyDir}"/>
+ <get src="(a){location}/${jbossbuild.component.info}"
+ dest="(a){thirdpartyDir}/${jbossbuild.component.info}"
+ useTimestamp="true"
+ verbose="true"
+ />
+ </componentmain>
+
+ <!-- If the component exists we just do a cvs update -->
+ <componentmain if="@{exists}">
+ <cvs dest="@{dir}" command="update"/>
+ <!-- NOTE: unable to delegate to component until JBBUILD-62 is resolved
-->
+ <!--invoke target="synchronize" dir="@{dir}"/-->
+ <!--execant target="synchronize.after"
dir="@{dir}"/-->
+ </componentmain>
+
+ <!-- If the component doesn't exist and we want to
+ get the source build check it out from cvs
+ -->
+ <componentmain unless="@{exists}" if="@{local}">
+ <cvs dest="(a){dir.parent}">
+ <commandline>
+ <argument value="-d"/>
+ <argument value="(a){build.cvsroot}"/>
+ <argument value="co"/>
+ <argument value="-d"/>
+ <argument value="@{id}"/>
+ <argument value="@{module}"/>
+ </commandline>
+ </cvs>
+ <!-- execant target="synchronize.after"
dir="@{dir}"/-->
+ </componentmain>
+
+ <!-- The component already exists do a cvs update
+ and run the after synchronization
+ -->
+ <component nomain="true">
+ <cvs command="update -dP" failonerror="true"/>
+ <!--execant target="synchronize.after"/-->
+ </component>
+
+ <!-- If we are not doing a source checkout of this
+ component, download the artifacts to thirdparty
+ -->
+ <artifact unless="(a){component.local}">
+ <mkdir dir="@{parentDir}"/>
+ <get src="@{location}"
+ dest="@{output}"
+ useTimestamp="true"
+ verbose="true"
+ />
+ </artifact>
+ </targetdef>
+
+
+ </targets>
+
+
+
+<!-- ================================================================== -->
+<!-- Targets -->
+<!-- ================================================================== -->
+
+ <target name="help-fragment">
+ <fail message="Do not execute this build fragment directly!"/>
+ </target>
+
+</project>
Property changes on: modules/web/trunk/tools/etc/jbossbuild/tasks.xml
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/jdepend-frames.xsl
===================================================================
--- modules/web/trunk/tools/etc/jdepend-frames.xsl (rev 0)
+++ modules/web/trunk/tools/etc/jdepend-frames.xsl 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,486 @@
+<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0"
+
xmlns:lxslt="http://xml.apache.org/xslt"
+ xmlns:redirect="org.apache.xalan.lib.Redirect"
+ extension-element-prefixes="redirect">
+<xsl:output method="html" indent="yes"
encoding="US-ASCII"/>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+
+-->
+<!--
+
+ Sample stylesheet to be used with JDepend XML output.
+
+ It creates a set of HTML files a la javadoc where you can browse easily
+ through all packages and classes.
+
+ @author <a href="mailto:jtulley@novell.com">Jeff Tulley</a>
+
+ -->
+<xsl:param name="output.dir" select="'.'"/>
+
+<xsl:template match="JDepend">
+ <!-- create the index.html -->
+ <redirect:write file="{$output.dir}/index.html">
+ <xsl:call-template name="index.html"/>
+ </redirect:write>
+
+ <!-- create the stylesheet.css -->
+ <redirect:write file="{$output.dir}/stylesheet.css">
+ <xsl:call-template name="stylesheet.css"/>
+ </redirect:write>
+
+ <!-- create the overview-packages.html at the root -->
+ <redirect:write file="{$output.dir}/overview-summary.html">
+ <xsl:apply-templates select="." mode="overview.packages"/>
+ </redirect:write>
+
+ <!-- create the overview-packages.html at the root -->
+ <redirect:write file="{$output.dir}/overview-packages.html">
+ <xsl:apply-templates select="." mode="packages.details"/>
+ </redirect:write>
+
+ <!-- create the overview-cycles.html at the root -->
+ <redirect:write file="{$output.dir}/overview-cycles.html">
+ <xsl:apply-templates select="." mode="cycles.details"/>
+ </redirect:write>
+
+ <!-- create the overview-cycles.html at the root -->
+ <redirect:write file="{$output.dir}/overview-explanations.html">
+ <xsl:apply-templates select="." mode="explanations"/>
+ </redirect:write>
+
+ <!-- create the all-packages.html at the root -->
+ <redirect:write file="{$output.dir}/all-packages.html">
+ <xsl:apply-templates select="Packages"
mode="all.packages"/>
+ </redirect:write>
+
+ <!-- create the all-cycles.html at the root -->
+ <redirect:write file="{$output.dir}/all-cycles.html">
+ <xsl:apply-templates select="Cycles" mode="all.cycles"/>
+ </redirect:write>
+</xsl:template>
+
+
+<xsl:template name="index.html">
+<html>
+ <head>
+ <title>JDepend Analysis</title>
+ </head>
+ <frameset cols="20%,80%">
+ <frameset rows="30%,70%">
+ <frame src="all-packages.html"
name="packageListFrame"/>
+ <frame src="all-cycles.html"
name="classListFrame"/>
+ </frameset>
+ <frame src="overview-summary.html"
name="classFrame"/>
+ </frameset>
+ <noframes>
+ <h2>Frame Alert</h2>
+ <p>
+ This document is designed to be viewed using the frames feature. If you see
this message, you are using a non-frame-capable web client.
+ </p>
+ </noframes>
+</html>
+</xsl:template>
+
+<!-- this is the stylesheet css to use for nearly everything -->
+<xsl:template name="stylesheet.css">
+ <style type="text/css">
+ body {
+ font:normal 68% verdana,arial,helvetica;
+ color:#000000;
+ }
+ table tr td, tr th {
+ font-size: 68%;
+ }
+ table.details tr th{
+ font-weight: bold;
+ text-align:left;
+ background:#a6caf0;
+ }
+ table.details tr td{
+ background:#eeeee0;
+ }
+
+ p {
+ line-height:1.5em;
+ margin-top:0.5em; margin-bottom:1.0em;
+ margin-left:2em;
+ margin-right:2em;
+ }
+ h1 {
+ margin: 0px 0px 5px; font: 165% verdana,arial,helvetica
+ }
+ h2 {
+ margin-top: 1em; margin-bottom: 0.5em; font: bold 125% verdana,arial,helvetica
+ }
+ h3 {
+ margin-bottom: 0.5em; font: bold 115% verdana,arial,helvetica
+ }
+ h4 {
+ margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
+ }
+ h5 {
+ margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
+ }
+ h6 {
+ margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
+ }
+ .Error {
+ font-weight:bold; color:red;
+ }
+ .Failure {
+ font-weight:bold; color:purple;
+ }
+ .Properties {
+ text-align:right;
+ }
+ </style>
+</xsl:template>
+
+<xsl:template match="JDepend" mode="overview.packages">
+ <html>
+ <head>
+ <link rel="stylesheet" type="text/css"
href="stylesheet.css"/>
+ </head>
+ <body>
+ <xsl:call-template name="pageHeader"/>
+ <table width="100%"><tr
align="left"><h2>Summary</h2><td>
+ </td><td align="right">
+ [summary]
+ [<a href="overview-packages.html">packages</a>]
+ [<a href="overview-cycles.html">cycles</a>]
+ [<a href="overview-explanations.html">explanations</a>]
+ </td></tr></table>
+ <table width="100%" class="details">
+ <tr>
+ <th>Package</th>
+ <th>Total Classes</th>
+ <th><a
href="overview-explanations.html#EXnumber">Abstract
Classes</a></th>
+ <th><a
href="overview-explanations.html#EXnumber">Concrete
Classes</a></th>
+ <th><a
href="overview-explanations.html#EXafferent">Afferent
Couplings</a></th>
+ <th><a
href="overview-explanations.html#EXefferent">Efferent
Couplings</a></th>
+ <th><a
href="overview-explanations.html#EXabstractness">Abstractness</a></th>
+ <th><a
href="overview-explanations.html#EXinstability">Instability</a></th>
+ <th><a
href="overview-explanations.html#EXdistance">Distance</a></th>
+
+ </tr>
+ <xsl:for-each select="./Packages/Package">
+ <xsl:if test="count(error) = 0">
+ <tr>
+ <td align="left">
+ <a>
+ <xsl:attribute
name="href">overview-packages.html#PK<xsl:value-of
select="@name"/>
+ </xsl:attribute>
+ <xsl:value-of select="@name"/>
+ </a>
+ </td>
+ <td align="right"><xsl:value-of
select="Stats/TotalClasses"/></td>
+ <td align="right"><xsl:value-of
select="Stats/AbstractClasses"/></td>
+ <td align="right"><xsl:value-of
select="Stats/ConcreteClasses"/></td>
+ <td align="right"><xsl:value-of
select="Stats/Ca"/></td>
+ <td align="right"><xsl:value-of
select="Stats/Ce"/></td>
+ <td align="right"><xsl:value-of
select="Stats/A"/></td>
+ <td align="right"><xsl:value-of
select="Stats/I"/></td>
+ <td align="right"><xsl:value-of
select="Stats/D"/></td>
+ </tr>
+ </xsl:if>
+ </xsl:for-each>
+ <xsl:for-each select="./Packages/Package">
+ <xsl:if test="count(error) > 0">
+ <tr>
+ <td align="left">
+ <xsl:value-of select="@name"/>
+ </td>
+ <td align="left"
colspan="8"><xsl:value-of select="error"/></td>
+ </tr>
+ </xsl:if>
+ </xsl:for-each>
+ </table>
+ </body>
+ </html>
+</xsl:template>
+
+<xsl:template match="JDepend" mode="packages.details">
+ <html>
+ <head>
+ <link rel="stylesheet" type="text/css"
href="stylesheet.css"/>
+ </head>
+ <body>
+ <xsl:call-template name="pageHeader"/>
+ <table width="100%"><tr
align="left"><h2>Packages</h2><td>
+ </td><td align="right">
+ [<a href="overview-summary.html">summary</a>]
+ [packages]
+ [<a href="overview-cycles.html">cycles</a>]
+ [<a href="overview-explanations.html">explanations</a>]
+ </td></tr></table>
+
+ <xsl:for-each select="./Packages/Package">
+ <xsl:if test="count(error) = 0">
+ <h3><a><xsl:attribute name="name">PK<xsl:value-of
select="@name"/></xsl:attribute>
+ <xsl:value-of select="@name"/></a></h3>
+
+ <table width="100%"><tr>
+ <td><a
href="overview-explanations.html#EXafferent">Afferent Couplings</a>:
<xsl:value-of select="Stats/Ca"/></td>
+ <td><a
href="overview-explanations.html#EXefferent">Efferent Couplings</a>:
<xsl:value-of select="Stats/Ce"/></td>
+ <td><a
href="overview-explanations.html#EXabstractness">Abstractness</a>:
<xsl:value-of select="Stats/A"/></td>
+ <td><a
href="overview-explanations.html#EXinstability">Instability</a>:
<xsl:value-of select="Stats/I"/></td>
+ <td><a
href="overview-explanations.html#EXdistance">Distance</a>:
<xsl:value-of select="Stats/D"/></td>
+ </tr></table>
+
+ <table width="100%" class="details">
+ <tr>
+ <th>Abstract Classes</th>
+ <th>Concrete Classes</th>
+ <th>Used by Packages</th>
+ <th>Uses Packages</th>
+ </tr>
+ <tr>
+ <td valign="top" width="25%">
+ <xsl:if test="count(AbstractClasses/Class)=0">
+ <i>None</i>
+ </xsl:if>
+ <xsl:for-each select="AbstractClasses/Class">
+ <xsl:value-of select="node()"/><br/>
+ </xsl:for-each>
+ </td>
+ <td valign="top" width="25%">
+ <xsl:if test="count(ConcreteClasses/Class)=0">
+ <i>None</i>
+ </xsl:if>
+ <xsl:for-each select="ConcreteClasses/Class">
+ <xsl:value-of select="node()"/><br/>
+ </xsl:for-each>
+ </td>
+ <td valign="top" width="25%">
+ <xsl:if test="count(UsedBy/Package)=0">
+ <i>None</i>
+ </xsl:if>
+ <xsl:for-each select="UsedBy/Package">
+ <a>
+ <xsl:attribute
name="href">overview-packages.html#PK<xsl:value-of
select="node()"/></xsl:attribute>
+ <xsl:value-of select="node()"/>
+ </a><br/>
+ </xsl:for-each>
+ </td>
+ <td valign="top" width="25%">
+ <xsl:if test="count(DependsUpon/Package)=0">
+ <i>None</i>
+ </xsl:if>
+ <xsl:for-each select="DependsUpon/Package">
+ <a>
+ <xsl:attribute
name="href">overview-packages.html#PK<xsl:value-of
select="node()"/></xsl:attribute>
+ <xsl:value-of select="node()"/>
+ </a><br/>
+ </xsl:for-each>
+ </td>
+ </tr>
+ </table>
+ </xsl:if>
+ </xsl:for-each>
+ <!-- this is often a long listing; provide a lower navigation table also -->
+ <table width="100%"><tr
align="left"><td></td><td align="right">
+ [<a href="overview-summary.html">summary</a>]
+ [packages]
+ [<a href="overview-cycles.html">cycles</a>]
+ [<a href="overview-explanations.html">explanations</a>]
+ </td></tr></table>
+ </body>
+ </html>
+</xsl:template>
+
+<xsl:template match="JDepend" mode="cycles.details">
+ <html>
+ <head>
+ <link rel="stylesheet" type="text/css"
href="stylesheet.css"/>
+ </head>
+ <body>
+ <xsl:call-template name="pageHeader"/>
+ <table width="100%"><tr
align="left"><h2>Cycles</h2><td>
+ </td><td align="right">
+ [<a href="overview-summary.html">summary</a>]
+ [<a href="overview-packages.html">packages</a>]
+ [cycles]
+ [<a href="overview-explanations.html">explanations</a>]
+ </td></tr></table>
+ <!--<table width="100%"><tr><td>
+ </td><td align="right">
+ [<a href="#NVsummary">summary</a>]
+ [<a href="#NVpackages">packages</a>]
+ [<a href="#NVcycles">cycles</a>]
+ [<a href="#NVexplanations">explanations</a>]
+ </td></tr></table> -->
+
+ <xsl:if test="count(Cycles/Package) = 0">
+ <p>There are no cyclic dependancies.</p>
+ </xsl:if>
+ <xsl:for-each select="Cycles/Package">
+ <h3><a><xsl:attribute name="name">#CY<xsl:value-of
select="@Name"/></xsl:attribute><xsl:value-of
select="@Name"/></a></h3><p>
+ <xsl:for-each select="Package">
+ <xsl:value-of select="."/><br/>
+ </xsl:for-each></p>
+ </xsl:for-each>
+ <!-- this is often a long listing; provide a lower navigation table also -->
+ <table width="100%"><tr
align="left"><td></td><td align="right">
+ [<a href="overview-summary.html">summary</a>]
+ [<a href="overview-packages.html">packages</a>]
+ [cycles]
+ [<a href="overview-explanations.html">explanations</a>]
+ </td></tr></table>
+ </body>
+ </html>
+</xsl:template>
+
+<xsl:template match="JDepend" mode="explanations">
+ <html>
+ <head>
+ <link rel="stylesheet" type="text/css"
href="stylesheet.css"/>
+ </head>
+ <body>
+ <xsl:call-template name="pageHeader"/>
+
+ <table width="100%"><tr
align="left"><h2>Explanations</h2><td>
+ </td><td align="right">
+ [<a href="overview-summary.html">summary</a>]
+ [<a href="overview-packages.html">packages</a>]
+ [<a href="overview-cycles.html">cycles</a>]
+ [explanations]
+ </td></tr></table>
+
+ <p>The following explanations are for quick reference and are lifted directly
from the original <a
href="http://www.clarkware.com/software/JDepend.html">JDepend
documentation</a>.</p>
+
+ <h3><a name="EXnumber">Number of Classes</a></h3>
+ <p>The number of concrete and abstract classes (and interfaces) in the package
is an indicator of the extensibility of the package.</p>
+ <h3><a name="EXafferent">Afferent Couplings</a></h3>
+ <p>The number of other packages that depend upon classes within the package is
an indicator of the package's responsibility. </p>
+ <h3><a name="EXefferent">Efferent Couplings</a></h3>
+ <p>The number of other packages that the classes in the package depend upon is
an indicator of the package's independence. </p>
+ <h3><a name="EXabstractness">Abstractness</a></h3>
+ <p>The ratio of the number of abstract classes (and interfaces) in the analyzed
package to the total number of classes in the analyzed package. </p>
+ <p>The range for this metric is 0 to 1, with A=0 indicating a completely
concrete package and A=1 indicating a completely abstract package. </p>
+ <h3><a name="EXinstability">Instability</a></h3>
+ <p>The ratio of efferent coupling (Ce) to total coupling (Ce / (Ce + Ca)). This
metric is an indicator of the package's resilience to change. </p>
+ <p>The range for this metric is 0 to 1, with I=0 indicating a completely stable
package and I=1 indicating a completely instable package. </p>
+ <h3><a name="EXdistance">Distance</a></h3>
+ <p>The perpendicular distance of a package from the idealized line A + I = 1.
This metric is an indicator of the package's balance between abstractness and
stability. </p>
+ <p>A package squarely on the main sequence is optimally balanced with respect
to its abstractness and stability. Ideal packages are either completely abstract and
stable (x=0, y=1) or completely concrete and instable (x=1, y=0). </p>
+ <p>The range for this metric is 0 to 1, with D=0 indicating a package that is
coincident with the main sequence and D=1 indicating a package that is as far from the
main sequence as possible. </p>
+
+ </body>
+ </html>
+</xsl:template>
+
+
+<!--
+Creates an html file that contains a link to all package links in
overview-packages.html.
+ @bug there will be a problem here, I don't know yet how to handle unnamed package
:(
+-->
+<xsl:template match="JDepend/Packages" mode="all.packages">
+ <html>
+ <head>
+ <link rel="stylesheet" type="text/css"
href="stylesheet.css"/>
+ </head>
+ <body>
+ <table width="100%"><tr
align="left"><td></td><td nowrap="nowrap"
align="right">
+ [<a href="overview-summary.html"
target="classFrame">summary</a>]
+ [<a href="overview-packages.html"
target="classFrame">packages</a>]
+ [<a href="overview-cycles.html"
target="classFrame">cycles</a>]
+ [<a href="overview-explanations.html"
target="classFrame">explanations</a>]
+ </td></tr></table>
+ <h2>Packages</h2>
+ <table width="100%">
+ <xsl:apply-templates select="Package[count(error)=0]"
mode="all.packages.link">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ <xsl:apply-templates select="Package[count(error) > 0]"
mode="all.packages.nolink">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table>
+ </body>
+ </html>
+</xsl:template>
+
+<xsl:template match="JDepend/Packages/Package"
mode="all.packages.link">
+ <tr>
+ <td nowrap="nowrap">
+ <a href="overview-packages.html#PK{@name}"
target="classFrame">
+ <xsl:value-of select="@name"/>
+ </a>
+ </td>
+ </tr>
+</xsl:template>
+
+<!--
+I do not know JDepend enough to know if every error results in a non-analyzed package,
+but that is how I am presenting it to the viewer. This may need to change.
+ @bug there will be a problem here, I don't know yet how to handle unnamed package
:(
+-->
+<xsl:template match="JDepend/Packages/Package"
mode="all.packages.nolink">
+ <tr>
+ <td nowrap="nowrap">
+ Not Analyzed: <xsl:value-of select="@name"/>
+ </td>
+ </tr>
+</xsl:template>
+
+<!--
+Creates an html file that contains a link to all package links in overview-cycles.html.
+ @bug there will be a problem here, I don't know yet how to handle unnamed package
:(
+-->
+<xsl:template match="JDepend/Cycles" mode="all.cycles">
+ <html>
+ <head>
+ <link rel="stylesheet" type="text/css"
href="stylesheet.css"/>
+ </head>
+ <body>
+ <table width="100%"><tr
align="left"><td></td><td nowrap="nowrap"
align="right">
+ [<a href="overview-summary.html"
target="classFrame">summary</a>]
+ [<a href="overview-packages.html"
target="classFrame">packages</a>]
+ [<a href="overview-cycles.html"
target="classFrame">cycles</a>]
+ [<a href="overview-explanations.html"
target="classFrame">explanations</a>]
+ </td></tr></table>
+ <h2>Cycles</h2>
+ <table width="100%">
+ <xsl:apply-templates select="Package"
mode="all.cycles">
+ <xsl:sort select="@Name"/>
+ </xsl:apply-templates>
+ </table>
+ </body>
+ </html>
+</xsl:template>
+
+<xsl:template match="JDepend/Cycles/Package"
mode="all.cycles">
+ <tr>
+ <td nowrap="nowrap">
+ <a href="overview-cycles.html#CY{@Name}"
target="classFrame"><xsl:value-of select="@Name"/></a>
+ </td>
+ </tr>
+</xsl:template>
+
+<!-- Page HEADER -->
+<xsl:template name="pageHeader">
+ <h1>JDepend Analysis</h1>
+ <table width="100%">
+ <tr>
+ <td align="left"></td>
+ <td align="right">Designed for use with <a
href="http://www.clarkware.com/software/JDepend.html">JDepen... and
<a href="http://jakarta.apache.org">Ant</a>.</td>
+ </tr>
+ </table>
+ <hr size="1"/>
+</xsl:template>
+
+</xsl:stylesheet>
Property changes on: modules/web/trunk/tools/etc/jdepend-frames.xsl
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/jdepend.xsl
===================================================================
--- modules/web/trunk/tools/etc/jdepend.xsl (rev 0)
+++ modules/web/trunk/tools/etc/jdepend.xsl 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,275 @@
+<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
+
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+-->
+
+<xsl:output method="html" indent="yes"
encoding="US-ASCII"/>
+
+<xsl:template match="JDepend">
+ <html>
+ <head>
+ <title>JDepend Analysis</title>
+
+ <style type="text/css">
+ body {
+ font:normal 68% verdana,arial,helvetica;
+ color:#000000;
+ }
+ table tr td, tr th {
+ font-size: 68%;
+ }
+ table.details tr th{
+ font-weight: bold;
+ text-align:left;
+ background:#a6caf0;
+ }
+ table.details tr td{
+ background:#eeeee0;
+ }
+
+ p {
+ line-height:1.5em;
+ margin-top:0.5em; margin-bottom:1.0em;
+ margin-left:2em;
+ margin-right:2em;
+ }
+ h1 {
+ margin: 0px 0px 5px; font: 165% verdana,arial,helvetica
+ }
+ h2 {
+ margin-top: 1em; margin-bottom: 0.5em; font: bold 125% verdana,arial,helvetica
+ }
+ h3 {
+ margin-bottom: 0.5em; font: bold 115% verdana,arial,helvetica
+ }
+ h4 {
+ margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
+ }
+ h5 {
+ margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
+ }
+ h6 {
+ margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
+ }
+ .Error {
+ font-weight:bold; color:red;
+ }
+ .Failure {
+ font-weight:bold; color:purple;
+ }
+ .Properties {
+ text-align:right;
+ }
+ </style>
+
+
+ </head>
+ <body>
+ <!--h1>JDepend Report</h1>
+ <ul>
+ <xsl:for-each select="./Packages/Package">
+ <xsl:sort select="@name"/>
+ <li><xsl:value-of select="@name"/></li>
+ </xsl:for-each>
+ </ul-->
+
+ <h1><a name="top">JDepend Analysis</a></h1>
+ <p align="right">Designed for use with <a
href="http://www.clarkware.com/software/JDepend.html">JDepen... and
<a href="http://jakarta.apache.org">Ant</a>.</p>
+ <hr size="2" />
+
+ <table width="100%"><tr><td>
+ <a name="NVsummary"><h2>Summary</h2></a>
+ </td><td align="right">
+ [<a href="#NVsummary">summary</a>]
+ [<a href="#NVpackages">packages</a>]
+ [<a href="#NVcycles">cycles</a>]
+ [<a href="#NVexplanations">explanations</a>]
+ </td></tr></table>
+
+ <table width="100%" class="details">
+ <tr>
+ <th>Package</th>
+ <th>Total Classes</th>
+ <th><a href="#EXnumber">Abstract
Classes</a></th>
+ <th><a href="#EXnumber">Concrete
Classes</a></th>
+ <th><a href="#EXafferent">Afferent
Couplings</a></th>
+ <th><a href="#EXefferent">Efferent
Couplings</a></th>
+ <th><a
href="#EXabstractness">Abstractness</a></th>
+ <th><a
href="#EXinstability">Instability</a></th>
+ <th><a
href="#EXdistance">Distance</a></th>
+
+ </tr>
+ <xsl:for-each select="./Packages/Package">
+ <xsl:if test="count(error) = 0">
+ <tr>
+ <td align="left">
+ <a>
+ <xsl:attribute name="href">#PK<xsl:value-of
select="@name"/>
+ </xsl:attribute>
+ <xsl:value-of select="@name"/>
+ </a>
+ </td>
+ <td align="right"><xsl:value-of
select="Stats/TotalClasses"/></td>
+ <td align="right"><xsl:value-of
select="Stats/AbstractClasses"/></td>
+ <td align="right"><xsl:value-of
select="Stats/ConcreteClasses"/></td>
+ <td align="right"><xsl:value-of
select="Stats/Ca"/></td>
+ <td align="right"><xsl:value-of
select="Stats/Ce"/></td>
+ <td align="right"><xsl:value-of
select="Stats/A"/></td>
+ <td align="right"><xsl:value-of
select="Stats/I"/></td>
+ <td align="right"><xsl:value-of
select="Stats/D"/></td>
+
+
+ </tr>
+ </xsl:if>
+ </xsl:for-each>
+ <xsl:for-each select="./Packages/Package">
+ <xsl:if test="count(error) > 0">
+ <tr>
+ <td align="left">
+ <xsl:value-of select="@name"/>
+ </td>
+ <td align="left" colspan="8"><xsl:value-of
select="error"/></td>
+ </tr>
+ </xsl:if>
+ </xsl:for-each>
+ </table>
+
+ <table width="100%"><tr><td>
+ <a name="NVpackages"><h2>Packages</h2></a>
+ </td><td align="right">
+ [<a href="#NVsummary">summary</a>]
+ [<a href="#NVpackages">packages</a>]
+ [<a href="#NVcycles">cycles</a>]
+ [<a href="#NVexplanations">explanations</a>]
+ </td></tr></table>
+
+ <xsl:for-each select="./Packages/Package">
+ <xsl:if test="count(error) = 0">
+ <h3><a><xsl:attribute
name="name">PK<xsl:value-of
select="@name"/></xsl:attribute>
+ <xsl:value-of select="@name"/></a></h3>
+
+ <table width="100%"><tr>
+ <td><a href="#EXafferent">Afferent
Couplings</a>: <xsl:value-of select="Stats/Ca"/></td>
+ <td><a href="#EXefferent">Efferent
Couplings</a>: <xsl:value-of select="Stats/Ce"/></td>
+ <td><a
href="#EXabstractness">Abstractness</a>: <xsl:value-of
select="Stats/A"/></td>
+ <td><a href="#EXinstability">Instability</a>:
<xsl:value-of select="Stats/I"/></td>
+ <td><a href="#EXdistance">Distance</a>:
<xsl:value-of select="Stats/D"/></td>
+ </tr></table>
+
+ <table width="100%" class="details">
+ <tr>
+ <th>Abstract Classes</th>
+ <th>Concrete Classes</th>
+ <th>Used by Packages</th>
+ <th>Uses Packages</th>
+ </tr>
+ <tr>
+ <td valign="top" width="25%">
+ <xsl:if test="count(AbstractClasses/Class)=0">
+ <i>None</i>
+ </xsl:if>
+ <xsl:for-each select="AbstractClasses/Class">
+ <xsl:value-of select="node()"/><br/>
+ </xsl:for-each>
+ </td>
+ <td valign="top" width="25%">
+ <xsl:if test="count(ConcreteClasses/Class)=0">
+ <i>None</i>
+ </xsl:if>
+ <xsl:for-each select="ConcreteClasses/Class">
+ <xsl:value-of select="node()"/><br/>
+ </xsl:for-each>
+ </td>
+ <td valign="top" width="25%">
+ <xsl:if test="count(UsedBy/Package)=0">
+ <i>None</i>
+ </xsl:if>
+ <xsl:for-each select="UsedBy/Package">
+ <a>
+ <xsl:attribute
name="href">#PK<xsl:value-of
select="node()"/></xsl:attribute>
+ <xsl:value-of select="node()"/>
+ </a><br/>
+ </xsl:for-each>
+ </td>
+ <td valign="top" width="25%">
+ <xsl:if test="count(DependsUpon/Package)=0">
+ <i>None</i>
+ </xsl:if>
+ <xsl:for-each select="DependsUpon/Package">
+ <a>
+ <xsl:attribute
name="href">#PK<xsl:value-of
select="node()"/></xsl:attribute>
+ <xsl:value-of select="node()"/>
+ </a><br/>
+ </xsl:for-each>
+ </td>
+ </tr>
+ </table>
+ </xsl:if>
+ </xsl:for-each>
+
+ <table width="100%"><tr><td>
+ <a name="NVcycles"><h2>Cycles</h2></a>
+ </td><td align="right">
+ [<a href="#NVsummary">summary</a>]
+ [<a href="#NVpackages">packages</a>]
+ [<a href="#NVcycles">cycles</a>]
+ [<a href="#NVexplanations">explanations</a>]
+ </td></tr></table>
+
+ <xsl:if test="count(Cycles/Package) = 0">
+ <p>There are no cyclic dependancies.</p>
+ </xsl:if>
+ <xsl:for-each select="Cycles/Package">
+ <h3><xsl:value-of select="@Name"/></h3><p>
+ <xsl:for-each select="Package">
+ <xsl:value-of select="."/><br/>
+ </xsl:for-each></p>
+ </xsl:for-each>
+
+ <table width="100%"><tr><td>
+ <a name="NVexplanations"><h2>Explanations</h2></a>
+ </td><td align="right">
+ [<a href="#NVsummary">summary</a>]
+ [<a href="#NVpackages">packages</a>]
+ [<a href="#NVcycles">cycles</a>]
+ [<a href="#NVexplanations">explanations</a>]
+ </td></tr></table>
+
+ <p>The following explanations are for quick reference and are lifted directly
from the original <a
href="http://www.clarkware.com/software/JDepend.html">JDepend
documentation</a>.</p>
+
+ <h3><a name="EXnumber">Number of Classes</a></h3>
+ <p>The number of concrete and abstract classes (and interfaces) in the
package is an indicator of the extensibility of the package.</p>
+ <h3><a name="EXafferent">Afferent
Couplings</a></h3>
+ <p>The number of other packages that depend upon classes within the package
is an indicator of the package's responsibility. </p>
+ <h3><a name="EXefferent">Efferent
Couplings</a></h3>
+ <p>The number of other packages that the classes in the package depend upon
is an indicator of the package's independence. </p>
+ <h3><a name="EXabstractness">Abstractness</a></h3>
+ <p>The ratio of the number of abstract classes (and interfaces) in the
analyzed package to the total number of classes in the analyzed package. </p>
+ <p>The range for this metric is 0 to 1, with A=0 indicating a completely
concrete package and A=1 indicating a completely abstract package. </p>
+ <h3><a name="EXinstability">Instability</a></h3>
+ <p>The ratio of efferent coupling (Ce) to total coupling (Ce / (Ce + Ca)).
This metric is an indicator of the package's resilience to change. </p>
+ <p>The range for this metric is 0 to 1, with I=0 indicating a completely
stable package and I=1 indicating a completely instable package. </p>
+ <h3><a name="EXdistance">Distance</a></h3>
+ <p>The perpendicular distance of a package from the idealized line A + I =
1. This metric is an indicator of the package's balance between abstractness and
stability. </p>
+ <p>A package squarely on the main sequence is optimally balanced with
respect to its abstractness and stability. Ideal packages are either completely abstract
and stable (x=0, y=1) or completely concrete and instable (x=1, y=0). </p>
+ <p>The range for this metric is 0 to 1, with D=0 indicating a package that
is coincident with the main sequence and D=1 indicating a package that is as far from the
main sequence as possible. </p>
+
+ </body>
+ </html>
+</xsl:template>
+
+</xsl:stylesheet>
Property changes on: modules/web/trunk/tools/etc/jdepend.xsl
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/junit-frames.xsl
===================================================================
--- modules/web/trunk/tools/etc/junit-frames.xsl (rev 0)
+++ modules/web/trunk/tools/etc/junit-frames.xsl 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,875 @@
+<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0"
+
xmlns:lxslt="http://xml.apache.org/xslt"
+
xmlns:redirect="http://xml.apache.org/xalan/redirect"
+ xmlns:stringutils="xalan://org.apache.tools.ant.util.StringUtils"
+ extension-element-prefixes="redirect">
+<xsl:output method="html" indent="yes"
encoding="US-ASCII"/>
+<xsl:decimal-format decimal-separator="."
grouping-separator=","/>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+ -->
+
+<!--
+
+ Sample stylesheet to be used with Ant JUnitReport output.
+
+ It creates a set of HTML files a la javadoc where you can browse easily
+ through all packages and classes.
+
+-->
+<xsl:param name="output.dir" select="'.'"/>
+
+
+<xsl:template match="testsuites">
+ <!-- create the index.html -->
+ <redirect:write file="{$output.dir}/index.html">
+ <xsl:call-template name="index.html"/>
+ </redirect:write>
+
+ <!-- create the stylesheet.css -->
+ <redirect:write file="{$output.dir}/stylesheet.css">
+ <xsl:call-template name="stylesheet.css"/>
+ </redirect:write>
+
+ <!-- create the overview-packages.html at the root -->
+ <redirect:write file="{$output.dir}/overview-summary.html">
+ <xsl:apply-templates select="."
mode="overview.packages"/>
+ </redirect:write>
+
+ <!-- create the all-packages.html at the root -->
+ <redirect:write file="{$output.dir}/overview-frame.html">
+ <xsl:apply-templates select="." mode="all.packages"/>
+ </redirect:write>
+
+ <!-- create the all-classes.html at the root -->
+ <redirect:write file="{$output.dir}/allclasses-frame.html">
+ <xsl:apply-templates select="." mode="all.classes"/>
+ </redirect:write>
+
+ <!-- create the all-tests.html at the root -->
+ <redirect:write file="{$output.dir}/all-tests.html">
+ <xsl:apply-templates select="." mode="all.tests"/>
+ </redirect:write>
+
+ <!-- create the alltests-fails.html at the root -->
+ <redirect:write file="{$output.dir}/alltests-fails.html">
+ <xsl:apply-templates select="." mode="all.tests">
+ <xsl:with-param name="type" select="'fails'"/>
+ </xsl:apply-templates>
+ </redirect:write>
+
+ <!-- create the alltests-errors.html at the root -->
+ <redirect:write file="{$output.dir}/alltests-errors.html">
+ <xsl:apply-templates select="." mode="all.tests">
+ <xsl:with-param name="type"
select="'errors'"/>
+ </xsl:apply-templates>
+ </redirect:write>
+
+ <!-- process all packages -->
+ <xsl:for-each select="./testsuite[not(./@package =
preceding-sibling::testsuite/@package)]">
+ <xsl:call-template name="package">
+ <xsl:with-param name="name" select="@package"/>
+ </xsl:call-template>
+ </xsl:for-each>
+</xsl:template>
+
+
+<xsl:template name="package">
+ <xsl:param name="name"/>
+ <xsl:variable name="package.dir">
+ <xsl:if test="not($name = '')"><xsl:value-of
select="translate($name,'.','/')"/></xsl:if>
+ <xsl:if test="$name = ''">.</xsl:if>
+ </xsl:variable>
+ <!--Processing package <xsl:value-of select="@name"/> in
<xsl:value-of select="$output.dir"/> -->
+ <!-- create a classes-list.html in the package directory -->
+ <redirect:write
file="{$output.dir}/{$package.dir}/package-frame.html">
+ <xsl:call-template name="classes.list">
+ <xsl:with-param name="name" select="$name"/>
+ </xsl:call-template>
+ </redirect:write>
+
+ <!-- create a package-summary.html in the package directory -->
+ <redirect:write
file="{$output.dir}/{$package.dir}/package-summary.html">
+ <xsl:call-template name="package.summary">
+ <xsl:with-param name="name" select="$name"/>
+ </xsl:call-template>
+ </redirect:write>
+
+ <!-- for each class, creates a @name.html -->
+ <!-- @bug there will be a problem with inner classes having the same name, it will
be overwritten -->
+ <xsl:for-each select="/testsuites/testsuite[@package = $name]">
+ <redirect:write
file="{$output.dir}/{$package.dir}/{@id}_{(a)name}.html">
+ <xsl:apply-templates select="." mode="class.details"/>
+ </redirect:write>
+ <xsl:if test="string-length(./system-out)!=0">
+ <redirect:write
file="{$output.dir}/{$package.dir}/{@id}_{(a)name}-out.txt">
+ <xsl:value-of disable-output-escaping="yes"
select="./system-out"/>
+ </redirect:write>
+ </xsl:if>
+ <xsl:if test="string-length(./system-err)!=0">
+ <redirect:write
file="{$output.dir}/{$package.dir}/{@id}_{(a)name}-err.txt">
+ <xsl:value-of disable-output-escaping="yes"
select="./system-err"/>
+ </redirect:write>
+ </xsl:if>
+ <xsl:if test="@failures != 0">
+ <redirect:write
file="{$output.dir}/{$package.dir}/{@id}_{(a)name}-fails.html">
+ <xsl:apply-templates select="." mode="class.details">
+ <xsl:with-param name="type"
select="'fails'"/>
+ </xsl:apply-templates>
+ </redirect:write>
+ </xsl:if>
+ <xsl:if test="@errors != 0">
+ <redirect:write
file="{$output.dir}/{$package.dir}/{@id}_{(a)name}-errors.html">
+ <xsl:apply-templates select="." mode="class.details">
+ <xsl:with-param name="type"
select="'errors'"/>
+ </xsl:apply-templates>
+ </redirect:write>
+ </xsl:if>
+ </xsl:for-each>
+</xsl:template>
+
+<xsl:template name="index.html">
+<html>
+ <head>
+ <title>Unit Test Results.</title>
+ </head>
+ <frameset cols="20%,80%">
+ <frameset rows="30%,70%">
+ <frame src="overview-frame.html"
name="packageListFrame"/>
+ <frame src="allclasses-frame.html"
name="classListFrame"/>
+ </frameset>
+ <frame src="overview-summary.html" name="classFrame"/>
+ <noframes>
+ <h2>Frame Alert</h2>
+ <p>
+ This document is designed to be viewed using the frames feature. If you
see this message, you are using a non-frame-capable web client.
+ </p>
+ </noframes>
+ </frameset>
+</html>
+</xsl:template>
+
+<!-- this is the stylesheet css to use for nearly everything -->
+<xsl:template name="stylesheet.css">
+body {
+ font:normal 68% verdana,arial,helvetica;
+ color:#000000;
+}
+table tr td, table tr th {
+ font-size: 68%;
+}
+table.details tr th{
+ font-weight: bold;
+ text-align:left;
+ background:#a6caf0;
+}
+table.details tr td{
+ background:#eeeee0;
+}
+
+p {
+ line-height:1.5em;
+ margin-top:0.5em; margin-bottom:1.0em;
+}
+h1 {
+ margin: 0px 0px 5px; font: 165% verdana,arial,helvetica
+}
+h2 {
+ margin-top: 1em; margin-bottom: 0.5em; font: bold 125% verdana,arial,helvetica
+}
+h3 {
+ margin-bottom: 0.5em; font: bold 115% verdana,arial,helvetica
+}
+h4 {
+ margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
+}
+h5 {
+ margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
+}
+h6 {
+ margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
+}
+.Error {
+ font-weight:bold; color:red;
+}
+.Failure {
+ font-weight:bold; color:purple;
+}
+.Properties {
+ text-align:right;
+}
+</xsl:template>
+
+<!-- Create list of all/failed/errored tests -->
+<xsl:template match="testsuites" mode="all.tests">
+ <xsl:param name="type" select="'all'"/>
+ <html>
+ <xsl:variable name="title">
+ <xsl:choose>
+ <xsl:when test="$type = 'fails'">
+ <xsl:text>All Failures</xsl:text>
+ </xsl:when>
+ <xsl:when test="$type = 'errors'">
+ <xsl:text>All Errors</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:text>All Tests</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <head>
+ <title>Unit Test Results: <xsl:value-of
select="$title"/></title>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"/>
+ </xsl:call-template>
+ </head>
+ <body>
+ <xsl:attribute
name="onload">open('allclasses-frame.html','classListFrame')</xsl:attribute>
+ <xsl:call-template name="pageHeader"/>
+ <h2><xsl:value-of select="$title"/></h2>
+
+ <table class="details" border="0"
cellpadding="5" cellspacing="2" width="95%">
+ <xsl:call-template name="testcase.test.header">
+ <xsl:with-param name="show.class"
select="'yes'"/>
+ </xsl:call-template>
+ <!--
+ test can even not be started at all (failure to load the class)
+ so report the error directly
+ -->
+ <xsl:if test="./error">
+ <tr class="Error">
+ <td colspan="4">
+ <xsl:apply-templates select="./error"/>
+ </td>
+ </tr>
+ </xsl:if>
+ <xsl:choose>
+ <xsl:when test="$type = 'fails'">
+ <xsl:apply-templates select=".//testcase[failure]"
mode="print.test">
+ <xsl:with-param name="show.class"
select="'yes'"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:when test="$type = 'errors'">
+ <xsl:apply-templates select=".//testcase[error]"
mode="print.test">
+ <xsl:with-param name="show.class"
select="'yes'"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select=".//testcase"
mode="print.test">
+ <xsl:with-param name="show.class"
select="'yes'"/>
+ </xsl:apply-templates>
+ </xsl:otherwise>
+ </xsl:choose>
+ </table>
+ </body>
+ </html>
+</xsl:template>
+
+
+<!-- ======================================================================
+ This page is created for every testsuite class.
+ It prints a summary of the testsuite and detailed information about
+ testcase methods.
+ ====================================================================== -->
+<xsl:template match="testsuite" mode="class.details">
+ <xsl:param name="type" select="'all'"/>
+ <xsl:variable name="package.name" select="@package"/>
+ <xsl:variable name="class.name"><xsl:if
test="not($package.name = '')"><xsl:value-of
select="$package.name"/>.</xsl:if><xsl:value-of
select="@name"/></xsl:variable>
+ <html>
+ <head>
+ <title>Unit Test Results: <xsl:value-of
select="$class.name"/></title>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"
select="$package.name"/>
+ </xsl:call-template>
+ <script type="text/javascript" language="JavaScript">
+ var TestCases = new Array();
+ var cur;
+ <xsl:apply-templates select="properties"/>
+ </script>
+ <script type="text/javascript"
language="JavaScript"><![CDATA[
+ function displayProperties (name) {
+ var win =
window.open('','JUnitSystemProperties','scrollbars=1,resizable=1');
+ var doc = win.document;
+ doc.open();
+ doc.write("<html><head><title>Properties of " +
name + "</title>");
+ doc.write("<style type=\"text/css\">");
+ doc.write("body {font:normal 68% verdana,arial,helvetica; color:#000000;
}");
+ doc.write("table tr td, table tr th { font-size: 68%; }");
+ doc.write("table.properties { border-collapse:collapse; border-left:solid
1 #cccccc; border-top:solid 1 #cccccc; padding:5px; }");
+ doc.write("table.properties th { text-align:left; border-right:solid 1
#cccccc; border-bottom:solid 1 #cccccc; background-color:#eeeeee; }");
+ doc.write("table.properties td { font:normal; text-align:left;
border-right:solid 1 #cccccc; border-bottom:solid 1 #cccccc; background-color:#fffffff;
}");
+ doc.write("h3 { margin-bottom: 0.5em; font: bold 115%
verdana,arial,helvetica }");
+ doc.write("</style>");
+ doc.write("</head><body>");
+ doc.write("<h3>Properties of " + name +
"</h3>");
+ doc.write("<div align=\"right\"><a
href=\"javascript:window.close();\">Close</a></div>");
+ doc.write("<table class='properties'>");
+
doc.write("<tr><th>Name</th><th>Value</th></tr>");
+ for (prop in TestCases[name]) {
+ doc.write("<tr><th>" + prop +
"</th><td>" + TestCases[name][prop] +
"</td></tr>");
+ }
+ doc.write("</table>");
+ doc.write("</body></html>");
+ doc.close();
+ win.focus();
+ }
+ ]]>
+ </script>
+ </head>
+ <body>
+ <xsl:call-template name="pageHeader"/>
+ <h3>Class <xsl:value-of
select="$class.name"/></h3>
+
+
+ <table class="details" border="0"
cellpadding="5" cellspacing="2" width="95%">
+ <xsl:call-template name="testsuite.test.header"/>
+ <xsl:apply-templates select="."
mode="print.test"/>
+ </table>
+
+ <xsl:choose>
+ <xsl:when test="$type = 'fails'">
+ <h2>Failures</h2>
+ </xsl:when>
+ <xsl:when test="$type = 'errors'">
+ <h2>Errors</h2>
+ </xsl:when>
+ <xsl:otherwise>
+ <h2>Tests</h2>
+ </xsl:otherwise>
+ </xsl:choose>
+ <table class="details" border="0"
cellpadding="5" cellspacing="2" width="95%">
+ <xsl:call-template name="testcase.test.header"/>
+ <!--
+ test can even not be started at all (failure to load the class)
+ so report the error directly
+ -->
+ <xsl:if test="./error">
+ <tr class="Error">
+ <td colspan="4"><xsl:apply-templates
select="./error"/></td>
+ </tr>
+ </xsl:if>
+ <xsl:choose>
+ <xsl:when test="$type = 'fails'">
+ <xsl:apply-templates select="./testcase[failure]"
mode="print.test"/>
+ </xsl:when>
+ <xsl:when test="$type = 'errors'">
+ <xsl:apply-templates select="./testcase[error]"
mode="print.test"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="./testcase"
mode="print.test"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </table>
+ <div class="Properties">
+ <a>
+ <xsl:attribute
name="href">javascript:displayProperties('<xsl:value-of
select="@package"/>.<xsl:value-of
select="@name"/>');</xsl:attribute>
+ Properties »
+ </a>
+ </div>
+ <xsl:if test="string-length(./system-out)!=0">
+ <div class="Properties">
+ <a>
+ <xsl:attribute name="href">./<xsl:value-of
select="@id"/>_<xsl:value-of
select="@name"/>-out.txt</xsl:attribute>
+ System.out »
+ </a>
+ </div>
+ </xsl:if>
+ <xsl:if test="string-length(./system-err)!=0">
+ <div class="Properties">
+ <a>
+ <xsl:attribute name="href">./<xsl:value-of
select="@id"/>_<xsl:value-of
select="@name"/>-err.txt</xsl:attribute>
+ System.err »
+ </a>
+ </div>
+ </xsl:if>
+ </body>
+ </html>
+</xsl:template>
+
+ <!--
+ Write properties into a JavaScript data structure.
+ This is based on the original idea by Erik Hatcher (ehatcher(a)apache.org)
+ -->
+ <xsl:template match="properties">
+ cur = TestCases['<xsl:value-of
select="../@package"/>.<xsl:value-of
select="../@name"/>'] = new Array();
+ <xsl:for-each select="property">
+ <xsl:sort select="@name"/>
+ cur['<xsl:value-of select="@name"/>'] =
'<xsl:call-template name="JS-escape"><xsl:with-param
name="string" select="@value"/></xsl:call-template>';
+ </xsl:for-each>
+ </xsl:template>
+
+
+<!-- ======================================================================
+ This page is created for every package.
+ It prints the name of all classes that belongs to this package.
+ @param name the package name to print classes.
+ ====================================================================== -->
+<!-- list of classes in a package -->
+<xsl:template name="classes.list">
+ <xsl:param name="name"/>
+ <html>
+ <head>
+ <title>Unit Test Classes: <xsl:value-of
select="$name"/></title>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"
select="$name"/>
+ </xsl:call-template>
+ </head>
+ <body>
+ <table width="100%">
+ <tr>
+ <td nowrap="nowrap">
+ <h2><a href="package-summary.html"
target="classFrame">
+ <xsl:value-of select="$name"/>
+ <xsl:if test="$name =
''"><none></xsl:if>
+ </a></h2>
+ </td>
+ </tr>
+ </table>
+
+ <h2>Classes</h2>
+ <table width="100%">
+ <xsl:for-each select="/testsuites/testsuite[./@package =
$name]">
+ <xsl:sort select="@name"/>
+ <tr>
+ <td nowrap="nowrap">
+ <a href="{@id}_{(a)name}.html"
target="classFrame"><xsl:value-of select="@name"/></a>
+ </td>
+ </tr>
+ </xsl:for-each>
+ </table>
+ </body>
+ </html>
+</xsl:template>
+
+
+<!--
+ Creates an all-classes.html file that contains a link to all package-summary.html
+ on each class.
+-->
+<xsl:template match="testsuites" mode="all.classes">
+ <html>
+ <head>
+ <title>All Unit Test Classes</title>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"/>
+ </xsl:call-template>
+ </head>
+ <body>
+ <h2>Classes</h2>
+ <table width="100%">
+ <xsl:apply-templates select="testsuite"
mode="all.classes">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table>
+ </body>
+ </html>
+</xsl:template>
+
+<xsl:template match="testsuite" mode="all.classes">
+ <xsl:variable name="package.name" select="@package"/>
+ <tr>
+ <td nowrap="nowrap">
+ <a target="classFrame">
+ <xsl:attribute name="href">
+ <xsl:if test="not($package.name='')">
+ <xsl:value-of
select="translate($package.name,'.','/')"/><xsl:text>/</xsl:text>
+ </xsl:if><xsl:value-of
select="@id"/>_<xsl:value-of
select="@name"/><xsl:text>.html</xsl:text>
+ </xsl:attribute>
+ <xsl:value-of select="@name"/>
+ </a>
+ </td>
+ </tr>
+</xsl:template>
+
+
+<!--
+ Creates an html file that contains a link to all package-summary.html files on
+ each package existing on testsuites.
+ @bug there will be a problem here, I don't know yet how to handle unnamed package
:(
+-->
+<xsl:template match="testsuites" mode="all.packages">
+ <html>
+ <head>
+ <title>All Unit Test Packages</title>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"/>
+ </xsl:call-template>
+ </head>
+ <body>
+ <h2><a href="overview-summary.html"
target="classFrame">Home</a></h2>
+ <h2>Packages</h2>
+ <table width="100%">
+ <xsl:apply-templates select="testsuite[not(./@package =
preceding-sibling::testsuite/@package)]" mode="all.packages">
+ <xsl:sort select="@package"/>
+ </xsl:apply-templates>
+ </table>
+ </body>
+ </html>
+</xsl:template>
+
+<xsl:template match="testsuite" mode="all.packages">
+ <tr>
+ <td nowrap="nowrap">
+ <a
href="./{translate((a)package,'.','/')}/package-summary.html"
target="classFrame">
+ <xsl:value-of select="@package"/>
+ <xsl:if test="@package =
''"><none></xsl:if>
+ </a>
+ </td>
+ </tr>
+</xsl:template>
+
+
+<xsl:template match="testsuites" mode="overview.packages">
+ <html>
+ <head>
+ <title>Unit Test Results: Summary</title>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"/>
+ </xsl:call-template>
+ </head>
+ <body>
+ <xsl:attribute
name="onload">open('allclasses-frame.html','classListFrame')</xsl:attribute>
+ <xsl:call-template name="pageHeader"/>
+ <h2>Summary</h2>
+ <xsl:variable name="testCount"
select="sum(testsuite/@tests)"/>
+ <xsl:variable name="errorCount"
select="sum(testsuite/@errors)"/>
+ <xsl:variable name="failureCount"
select="sum(testsuite/@failures)"/>
+ <xsl:variable name="timeCount"
select="sum(testsuite/@time)"/>
+ <xsl:variable name="successRate" select="($testCount -
$failureCount - $errorCount) div $testCount"/>
+ <table class="details" border="0"
cellpadding="5" cellspacing="2" width="95%">
+ <tr valign="top">
+ <th>Tests</th>
+ <th>Failures</th>
+ <th>Errors</th>
+ <th>Success rate</th>
+ <th>Time</th>
+ </tr>
+ <tr valign="top">
+ <xsl:attribute name="class">
+ <xsl:choose>
+ <xsl:when test="$errorCount >
0">Error</xsl:when>
+ <xsl:when test="$failureCount >
0">Failure</xsl:when>
+ <xsl:otherwise>Pass</xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+ <td><a title="Display all tests"
href="all-tests.html"><xsl:value-of
select="$testCount"/></a></td>
+ <td><a title="Display all failures"
href="alltests-fails.html"><xsl:value-of
select="$failureCount"/></a></td>
+ <td><a title="Display all errors"
href="alltests-errors.html"><xsl:value-of
select="$errorCount"/></a></td>
+ <td>
+ <xsl:call-template name="display-percent">
+ <xsl:with-param name="value"
select="$successRate"/>
+ </xsl:call-template>
+ </td>
+ <td>
+ <xsl:call-template name="display-time">
+ <xsl:with-param name="value"
select="$timeCount"/>
+ </xsl:call-template>
+ </td>
+ </tr>
+ </table>
+ <table border="0" width="95%">
+ <tr>
+ <td style="text-align: justify;">
+ Note: <em>failures</em> are anticipated and checked for with
assertions while <em>errors</em> are unanticipated.
+ </td>
+ </tr>
+ </table>
+
+ <h2>Packages</h2>
+ <table class="details" border="0"
cellpadding="5" cellspacing="2" width="95%">
+ <xsl:call-template name="testsuite.test.header"/>
+ <xsl:for-each select="testsuite[not(./@package =
preceding-sibling::testsuite/@package)]">
+ <xsl:sort select="@package"
order="ascending"/>
+ <!-- get the node set containing all testsuites that have the same
package -->
+ <xsl:variable name="insamepackage"
select="/testsuites/testsuite[./@package = current()/@package]"/>
+ <tr valign="top">
+ <!-- display a failure if there is any failure/error in the
package -->
+ <xsl:attribute name="class">
+ <xsl:choose>
+ <xsl:when test="sum($insamepackage/@errors) >
0">Error</xsl:when>
+ <xsl:when test="sum($insamepackage/@failures)
> 0">Failure</xsl:when>
+ <xsl:otherwise>Pass</xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+ <td><a
href="./{translate((a)package,'.','/')}/package-summary.html">
+ <xsl:value-of select="@package"/>
+ <xsl:if test="@package =
''"><none></xsl:if>
+ </a></td>
+ <td><xsl:value-of
select="sum($insamepackage/@tests)"/></td>
+ <td><xsl:value-of
select="sum($insamepackage/@errors)"/></td>
+ <td><xsl:value-of
select="sum($insamepackage/@failures)"/></td>
+ <td>
+ <xsl:call-template name="display-time">
+ <xsl:with-param name="value"
select="sum($insamepackage/@time)"/>
+ </xsl:call-template>
+ </td>
+ <td><xsl:value-of
select="$insamepackage/@timestamp"/></td>
+ <td><xsl:value-of
select="$insamepackage/@hostname"/></td>
+ </tr>
+ </xsl:for-each>
+ </table>
+ </body>
+ </html>
+</xsl:template>
+
+
+<xsl:template name="package.summary">
+ <xsl:param name="name"/>
+ <html>
+ <head>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"
select="$name"/>
+ </xsl:call-template>
+ </head>
+ <body>
+ <xsl:attribute
name="onload">open('package-frame.html','classListFrame')</xsl:attribute>
+ <xsl:call-template name="pageHeader"/>
+ <h3>Package <xsl:value-of select="$name"/></h3>
+
+ <!--table border="0" cellpadding="5"
cellspacing="2" width="95%">
+ <xsl:call-template name="class.metrics.header"/>
+ <xsl:apply-templates select="."
mode="print.metrics"/>
+ </table-->
+
+ <xsl:variable name="insamepackage"
select="/testsuites/testsuite[./@package = $name]"/>
+ <xsl:if test="count($insamepackage) > 0">
+ <h2>Classes</h2>
+ <p>
+ <table class="details" border="0"
cellpadding="5" cellspacing="2" width="95%">
+ <xsl:call-template name="testsuite.test.header"/>
+ <xsl:apply-templates select="$insamepackage"
mode="print.test">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table>
+ </p>
+ </xsl:if>
+ </body>
+ </html>
+</xsl:template>
+
+
+<!--
+ transform string like a.b.c to ../../../
+ @param path the path to transform into a descending directory path
+-->
+<xsl:template name="path">
+ <xsl:param name="path"/>
+ <xsl:if test="contains($path,'.')">
+ <xsl:text>../</xsl:text>
+ <xsl:call-template name="path">
+ <xsl:with-param name="path"><xsl:value-of
select="substring-after($path,'.')"/></xsl:with-param>
+ </xsl:call-template>
+ </xsl:if>
+ <xsl:if test="not(contains($path,'.')) and not($path =
'')">
+ <xsl:text>../</xsl:text>
+ </xsl:if>
+</xsl:template>
+
+
+<!-- create the link to the stylesheet based on the package name -->
+<xsl:template name="create.stylesheet.link">
+ <xsl:param name="package.name"/>
+ <link rel="stylesheet" type="text/css"
title="Style"><xsl:attribute name="href"><xsl:if
test="not($package.name = 'unnamed package')"><xsl:call-template
name="path"><xsl:with-param name="path"
select="$package.name"/></xsl:call-template></xsl:if>stylesheet.css</xsl:attribute></link>
+</xsl:template>
+
+
+<!-- Page HEADER -->
+<xsl:template name="pageHeader">
+ <h1>Unit Test Results</h1>
+ <table width="100%">
+ <tr>
+ <td align="left"></td>
+ <td align="right">Designed for use with <a
href="http://www.junit.org/">JUnit</a> and <a
href="http://ant.apache.org/">Ant</a>.</td>
+ </tr>
+ </table>
+ <hr size="1"/>
+</xsl:template>
+
+<!-- class header -->
+<xsl:template name="testsuite.test.header">
+ <tr valign="top">
+ <th width="80%">Name</th>
+ <th>Tests</th>
+ <th>Errors</th>
+ <th>Failures</th>
+ <th nowrap="nowrap">Time(s)</th>
+ <th nowrap="nowrap">Time Stamp</th>
+ <th>Host</th>
+ </tr>
+</xsl:template>
+
+<!-- method header -->
+<xsl:template name="testcase.test.header">
+ <xsl:param name="show.class" select="''"/>
+ <tr valign="top">
+ <xsl:if test="boolean($show.class)">
+ <th>Class</th>
+ </xsl:if>
+ <th>Name</th>
+ <th>Status</th>
+ <th width="80%">Type</th>
+ <th nowrap="nowrap">Time(s)</th>
+ </tr>
+</xsl:template>
+
+
+<!-- class information -->
+<xsl:template match="testsuite" mode="print.test">
+ <tr valign="top">
+ <xsl:attribute name="class">
+ <xsl:choose>
+ <xsl:when test="(a)errors[.&gt;
0]">Error</xsl:when>
+ <xsl:when test="(a)failures[.&gt;
0]">Failure</xsl:when>
+ <xsl:otherwise>Pass</xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+ <td><a title="Display all tests"
href="{@id}_{@name}.html"><xsl:value-of
select="@name"/></a></td>
+ <td><a title="Display all tests"
href="{@id}_{@name}.html"><xsl:apply-templates
select="@tests"/></a></td>
+ <td>
+ <xsl:choose>
+ <xsl:when test="@errors != 0">
+ <a title="Display only errors"
href="{@id}_{@name}-errors.html"><xsl:apply-templates
select="@errors"/></a>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="@errors"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </td>
+ <td>
+ <xsl:choose>
+ <xsl:when test="@failures != 0">
+ <a title="Display only failures"
href="{@id}_{@name}-fails.html"><xsl:apply-templates
select="@failures"/></a>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="@failures"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </td>
+ <td><xsl:call-template name="display-time">
+ <xsl:with-param name="value" select="@time"/>
+ </xsl:call-template>
+ </td>
+ <td><xsl:apply-templates select="@timestamp"/></td>
+ <td><xsl:apply-templates select="@hostname"/></td>
+ </tr>
+</xsl:template>
+
+<xsl:template match="testcase" mode="print.test">
+ <xsl:param name="show.class" select="''"/>
+ <tr valign="top">
+ <xsl:attribute name="class">
+ <xsl:choose>
+ <xsl:when test="error">Error</xsl:when>
+ <xsl:when test="failure">Failure</xsl:when>
+ <xsl:otherwise>TableRowColor</xsl:otherwise>
+ </xsl:choose>
+ </xsl:attribute>
+ <xsl:variable name="class.href">
+ <xsl:value-of select="concat(translate(../(a)package,'.','/'),
'/', ../@id, '_', ../@name, '.html')"/>
+ </xsl:variable>
+ <xsl:if test="boolean($show.class)">
+ <td><a href="{$class.href}"><xsl:value-of
select="../@name"/></a></td>
+ </xsl:if>
+ <td>
+ <a name="{@name}"/>
+ <xsl:choose>
+ <xsl:when test="boolean($show.class)">
+ <a href="{concat($class.href, '#',
@name)}"><xsl:value-of select="@name"/></a>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="@name"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </td>
+ <xsl:choose>
+ <xsl:when test="failure">
+ <td>Failure</td>
+ <td><xsl:apply-templates
select="failure"/></td>
+ </xsl:when>
+ <xsl:when test="error">
+ <td>Error</td>
+ <td><xsl:apply-templates
select="error"/></td>
+ </xsl:when>
+ <xsl:otherwise>
+ <td>Success</td>
+ <td></td>
+ </xsl:otherwise>
+ </xsl:choose>
+ <td>
+ <xsl:call-template name="display-time">
+ <xsl:with-param name="value" select="@time"/>
+ </xsl:call-template>
+ </td>
+ </tr>
+</xsl:template>
+
+
+<!-- Note : the below template error and failure are the same style
+ so just call the same style store in the toolkit template -->
+<xsl:template match="failure">
+ <xsl:call-template name="display-failures"/>
+</xsl:template>
+
+<xsl:template match="error">
+ <xsl:call-template name="display-failures"/>
+</xsl:template>
+
+<!-- Style for the error and failure in the testcase template -->
+<xsl:template name="display-failures">
+ <xsl:choose>
+ <xsl:when test="not(@message)">N/A</xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="@message"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <!-- display the stacktrace -->
+ <br/><br/>
+ <code>
+ <xsl:call-template name="br-replace">
+ <xsl:with-param name="word" select="."/>
+ </xsl:call-template>
+ </code>
+ <!-- the latter is better but might be problematic for non-21" monitors...
-->
+ <!--pre><xsl:value-of select="."/></pre-->
+</xsl:template>
+
+<xsl:template name="JS-escape">
+ <xsl:param name="string"/>
+ <xsl:param name="tmp1"
select="stringutils:replace(string($string),'\','\\')"/>
+ <xsl:param name="tmp2"
select="stringutils:replace(string($tmp1),"'","\'")"/>
+ <xsl:value-of select="$tmp2"/>
+</xsl:template>
+
+
+<!--
+ template that will convert a carriage return into a br tag
+ @param word the text from which to convert CR to BR tag
+-->
+<xsl:template name="br-replace">
+ <xsl:param name="word"/>
+ <xsl:value-of disable-output-escaping="yes"
select='stringutils:replace(string($word),"
","<br/>")'/>
+</xsl:template>
+
+<xsl:template name="display-time">
+ <xsl:param name="value"/>
+ <xsl:value-of select="format-number($value,'0.000')"/>
+</xsl:template>
+
+<xsl:template name="display-percent">
+ <xsl:param name="value"/>
+ <xsl:value-of select="format-number($value,'0.00%')"/>
+</xsl:template>
+</xsl:stylesheet>
Property changes on: modules/web/trunk/tools/etc/junit-frames.xsl
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/junit-noframes.xsl
===================================================================
--- modules/web/trunk/tools/etc/junit-noframes.xsl (rev 0)
+++ modules/web/trunk/tools/etc/junit-noframes.xsl 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,464 @@
+<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0"
+
xmlns:lxslt="http://xml.apache.org/xslt"
+ xmlns:stringutils="xalan://org.apache.tools.ant.util.StringUtils">
+<xsl:output method="html" indent="yes"
encoding="US-ASCII"
+ doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN" />
+<xsl:decimal-format decimal-separator="." grouping-separator=","
/>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+ -->
+
+<!--
+
+ Sample stylesheet to be used with Ant JUnitReport output.
+
+ It creates a non-framed report that can be useful to send via
+ e-mail or such.
+
+-->
+<xsl:template match="testsuites">
+ <html>
+ <head>
+ <title>Unit Test Results</title>
+ <style type="text/css">
+ body {
+ font:normal 68% verdana,arial,helvetica;
+ color:#000000;
+ }
+ table tr td, table tr th {
+ font-size: 68%;
+ }
+ table.details tr th{
+ font-weight: bold;
+ text-align:left;
+ background:#a6caf0;
+ }
+ table.details tr td{
+ background:#eeeee0;
+ }
+
+ p {
+ line-height:1.5em;
+ margin-top:0.5em; margin-bottom:1.0em;
+ }
+ h1 {
+ margin: 0px 0px 5px; font: 165% verdana,arial,helvetica
+ }
+ h2 {
+ margin-top: 1em; margin-bottom: 0.5em; font: bold 125% verdana,arial,helvetica
+ }
+ h3 {
+ margin-bottom: 0.5em; font: bold 115% verdana,arial,helvetica
+ }
+ h4 {
+ margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
+ }
+ h5 {
+ margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
+ }
+ h6 {
+ margin-bottom: 0.5em; font: bold 100% verdana,arial,helvetica
+ }
+ .Error {
+ font-weight:bold; color:red;
+ }
+ .Failure {
+ font-weight:bold; color:purple;
+ }
+ .Properties {
+ text-align:right;
+ }
+ </style>
+ <script type="text/javascript" language="JavaScript">
+ var TestCases = new Array();
+ var cur;
+ <xsl:for-each select="./testsuite">
+ <xsl:apply-templates select="properties"/>
+ </xsl:for-each>
+
+ </script>
+ <script type="text/javascript"
language="JavaScript"><![CDATA[
+ function displayProperties (name) {
+ var win =
window.open('','JUnitSystemProperties','scrollbars=1,resizable=1');
+ var doc = win.document;
+ doc.open();
+ doc.write("<html><head><title>Properties of " +
name + "</title>");
+ doc.write("<style>")
+ doc.write("body {font:normal 68% verdana,arial,helvetica; color:#000000;
}");
+ doc.write("table tr td, table tr th { font-size: 68%; }");
+ doc.write("table.properties { border-collapse:collapse; border-left:solid
1 #cccccc; border-top:solid 1 #cccccc; padding:5px; }");
+ doc.write("table.properties th { text-align:left; border-right:solid 1
#cccccc; border-bottom:solid 1 #cccccc; background-color:#eeeeee; }");
+ doc.write("table.properties td { font:normal; text-align:left;
border-right:solid 1 #cccccc; border-bottom:solid 1 #cccccc; background-color:#fffffff;
}");
+ doc.write("h3 { margin-bottom: 0.5em; font: bold 115%
verdana,arial,helvetica }");
+ doc.write("</style>");
+ doc.write("</head><body>");
+ doc.write("<h3>Properties of " + name +
"</h3>");
+ doc.write("<div align=\"right\"><a
href=\"javascript:window.close();\">Close</a></div>");
+ doc.write("<table class='properties'>");
+
doc.write("<tr><th>Name</th><th>Value</th></tr>");
+ for (prop in TestCases[name]) {
+ doc.write("<tr><th>" + prop +
"</th><td>" + TestCases[name][prop] +
"</td></tr>");
+ }
+ doc.write("</table>");
+ doc.write("</body></html>");
+ doc.close();
+ win.focus();
+ }
+ ]]>
+ </script>
+ </head>
+ <body>
+ <a name="top"></a>
+ <xsl:call-template name="pageHeader"/>
+
+ <!-- Summary part -->
+ <xsl:call-template name="summary"/>
+ <hr size="1" width="95%" align="left"/>
+
+ <!-- Package List part -->
+ <xsl:call-template name="packagelist"/>
+ <hr size="1" width="95%" align="left"/>
+
+ <!-- For each package create its part -->
+ <xsl:call-template name="packages"/>
+ <hr size="1" width="95%" align="left"/>
+
+ <!-- For each class create the part -->
+ <xsl:call-template name="classes"/>
+
+ </body>
+ </html>
+</xsl:template>
+
+
+
+ <!-- ================================================================== -->
+ <!-- Write a list of all packages with an hyperlink to the anchor of -->
+ <!-- of the package name. -->
+ <!-- ================================================================== -->
+ <xsl:template name="packagelist">
+ <h2>Packages</h2>
+ Note: package statistics are not computed recursively, they only sum up all of
its testsuites numbers.
+ <table class="details" border="0"
cellpadding="5" cellspacing="2" width="95%">
+ <xsl:call-template name="testsuite.test.header"/>
+ <!-- list all packages recursively -->
+ <xsl:for-each select="./testsuite[not(./@package =
preceding-sibling::testsuite/@package)]">
+ <xsl:sort select="@package"/>
+ <xsl:variable name="testsuites-in-package"
select="/testsuites/testsuite[./@package = current()/@package]"/>
+ <xsl:variable name="testCount"
select="sum($testsuites-in-package/@tests)"/>
+ <xsl:variable name="errorCount"
select="sum($testsuites-in-package/@errors)"/>
+ <xsl:variable name="failureCount"
select="sum($testsuites-in-package/@failures)"/>
+ <xsl:variable name="timeCount"
select="sum($testsuites-in-package/@time)"/>
+
+ <!-- write a summary for the package -->
+ <tr valign="top">
+ <!-- set a nice color depending if there is an error/failure
-->
+ <xsl:attribute name="class">
+ <xsl:choose>
+ <xsl:when test="$failureCount >
0">Failure</xsl:when>
+ <xsl:when test="$errorCount >
0">Error</xsl:when>
+ </xsl:choose>
+ </xsl:attribute>
+ <td><a href="#{@package}"><xsl:value-of
select="@package"/></a></td>
+ <td><xsl:value-of
select="$testCount"/></td>
+ <td><xsl:value-of
select="$errorCount"/></td>
+ <td><xsl:value-of
select="$failureCount"/></td>
+ <td>
+ <xsl:call-template name="display-time">
+ <xsl:with-param name="value"
select="$timeCount"/>
+ </xsl:call-template>
+ </td>
+ <td><xsl:value-of
select="$testsuites-in-package/@timestamp"/></td>
+ <td><xsl:value-of
select="$testsuites-in-package/@hostname"/></td>
+ </tr>
+ </xsl:for-each>
+ </table>
+ </xsl:template>
+
+
+ <!-- ================================================================== -->
+ <!-- Write a package level report -->
+ <!-- It creates a table with values from the document: -->
+ <!-- Name | Tests | Errors | Failures | Time -->
+ <!-- ================================================================== -->
+ <xsl:template name="packages">
+ <!-- create an anchor to this package name -->
+ <xsl:for-each select="/testsuites/testsuite[not(./@package =
preceding-sibling::testsuite/@package)]">
+ <xsl:sort select="@package"/>
+ <a name="{@package}"></a>
+ <h3>Package <xsl:value-of
select="@package"/></h3>
+
+ <table class="details" border="0"
cellpadding="5" cellspacing="2" width="95%">
+ <xsl:call-template name="testsuite.test.header"/>
+
+ <!-- match the testsuites of this package -->
+ <xsl:apply-templates select="/testsuites/testsuite[./@package
= current()/@package]" mode="print.test"/>
+ </table>
+ <a href="#top">Back to top</a>
+ <p/>
+ <p/>
+ </xsl:for-each>
+ </xsl:template>
+
+ <xsl:template name="classes">
+ <xsl:for-each select="testsuite">
+ <xsl:sort select="@name"/>
+ <!-- create an anchor to this class name -->
+ <a name="{@name}"></a>
+ <h3>TestCase <xsl:value-of select="@name"/></h3>
+
+ <table class="details" border="0"
cellpadding="5" cellspacing="2" width="95%">
+ <xsl:call-template name="testcase.test.header"/>
+ <!--
+ test can even not be started at all (failure to load the class)
+ so report the error directly
+ -->
+ <xsl:if test="./error">
+ <tr class="Error">
+ <td colspan="4"><xsl:apply-templates
select="./error"/></td>
+ </tr>
+ </xsl:if>
+ <xsl:apply-templates select="./testcase"
mode="print.test"/>
+ </table>
+ <div class="Properties">
+ <a>
+ <xsl:attribute
name="href">javascript:displayProperties('<xsl:value-of
select="@package"/>.<xsl:value-of
select="@name"/>');</xsl:attribute>
+ Properties »
+ </a>
+ </div>
+ <p/>
+
+ <a href="#top">Back to top</a>
+ </xsl:for-each>
+ </xsl:template>
+
+ <xsl:template name="summary">
+ <h2>Summary</h2>
+ <xsl:variable name="testCount"
select="sum(testsuite/@tests)"/>
+ <xsl:variable name="errorCount"
select="sum(testsuite/@errors)"/>
+ <xsl:variable name="failureCount"
select="sum(testsuite/@failures)"/>
+ <xsl:variable name="timeCount"
select="sum(testsuite/@time)"/>
+ <xsl:variable name="successRate" select="($testCount -
$failureCount - $errorCount) div $testCount"/>
+ <table class="details" border="0"
cellpadding="5" cellspacing="2" width="95%">
+ <tr valign="top">
+ <th>Tests</th>
+ <th>Failures</th>
+ <th>Errors</th>
+ <th>Success rate</th>
+ <th>Time</th>
+ </tr>
+ <tr valign="top">
+ <xsl:attribute name="class">
+ <xsl:choose>
+ <xsl:when test="$failureCount >
0">Failure</xsl:when>
+ <xsl:when test="$errorCount >
0">Error</xsl:when>
+ </xsl:choose>
+ </xsl:attribute>
+ <td><xsl:value-of select="$testCount"/></td>
+ <td><xsl:value-of select="$failureCount"/></td>
+ <td><xsl:value-of select="$errorCount"/></td>
+ <td>
+ <xsl:call-template name="display-percent">
+ <xsl:with-param name="value"
select="$successRate"/>
+ </xsl:call-template>
+ </td>
+ <td>
+ <xsl:call-template name="display-time">
+ <xsl:with-param name="value"
select="$timeCount"/>
+ </xsl:call-template>
+ </td>
+
+ </tr>
+ </table>
+ <table border="0" width="95%">
+ <tr>
+ <td style="text-align: justify;">
+ Note: <i>failures</i> are anticipated and checked for with assertions
while <i>errors</i> are unanticipated.
+ </td>
+ </tr>
+ </table>
+ </xsl:template>
+
+ <!--
+ Write properties into a JavaScript data structure.
+ This is based on the original idea by Erik Hatcher (ehatcher(a)apache.org)
+ -->
+ <xsl:template match="properties">
+ cur = TestCases['<xsl:value-of
select="../@package"/>.<xsl:value-of
select="../@name"/>'] = new Array();
+ <xsl:for-each select="property">
+ <xsl:sort select="@name"/>
+ cur['<xsl:value-of select="@name"/>'] =
'<xsl:call-template name="JS-escape"><xsl:with-param
name="string" select="@value"/></xsl:call-template>';
+ </xsl:for-each>
+ </xsl:template>
+
+<!-- Page HEADER -->
+<xsl:template name="pageHeader">
+ <h1>Unit Test Results</h1>
+ <table width="100%">
+ <tr>
+ <td align="left"></td>
+ <td align="right">Designed for use with <a
href='http://www.junit.org'>JUnit</a> and <a
href='http://ant.apache.org/ant'>Ant</a>.</td>
+ </tr>
+ </table>
+ <hr size="1"/>
+</xsl:template>
+
+<xsl:template match="testsuite" mode="header">
+ <tr valign="top">
+ <th width="80%">Name</th>
+ <th>Tests</th>
+ <th>Errors</th>
+ <th>Failures</th>
+ <th nowrap="nowrap">Time(s)</th>
+ </tr>
+</xsl:template>
+
+<!-- class header -->
+<xsl:template name="testsuite.test.header">
+ <tr valign="top">
+ <th width="80%">Name</th>
+ <th>Tests</th>
+ <th>Errors</th>
+ <th>Failures</th>
+ <th nowrap="nowrap">Time(s)</th>
+ <th nowrap="nowrap">Time Stamp</th>
+ <th>Host</th>
+ </tr>
+</xsl:template>
+
+<!-- method header -->
+<xsl:template name="testcase.test.header">
+ <tr valign="top">
+ <th>Name</th>
+ <th>Status</th>
+ <th width="80%">Type</th>
+ <th nowrap="nowrap">Time(s)</th>
+ </tr>
+</xsl:template>
+
+
+<!-- class information -->
+<xsl:template match="testsuite" mode="print.test">
+ <tr valign="top">
+ <!-- set a nice color depending if there is an error/failure -->
+ <xsl:attribute name="class">
+ <xsl:choose>
+ <xsl:when test="(a)failures[.&gt;
0]">Failure</xsl:when>
+ <xsl:when test="(a)errors[.&gt;
0]">Error</xsl:when>
+ </xsl:choose>
+ </xsl:attribute>
+
+ <!-- print testsuite information -->
+ <td><a href="#{@name}"><xsl:value-of
select="@name"/></a></td>
+ <td><xsl:value-of select="@tests"/></td>
+ <td><xsl:value-of select="@errors"/></td>
+ <td><xsl:value-of select="@failures"/></td>
+ <td>
+ <xsl:call-template name="display-time">
+ <xsl:with-param name="value" select="@time"/>
+ </xsl:call-template>
+ </td>
+ <td><xsl:apply-templates select="@timestamp"/></td>
+ <td><xsl:apply-templates select="@hostname"/></td>
+ </tr>
+</xsl:template>
+
+<xsl:template match="testcase" mode="print.test">
+ <tr valign="top">
+ <xsl:attribute name="class">
+ <xsl:choose>
+ <xsl:when test="failure | error">Error</xsl:when>
+ </xsl:choose>
+ </xsl:attribute>
+ <td><xsl:value-of select="@name"/></td>
+ <xsl:choose>
+ <xsl:when test="failure">
+ <td>Failure</td>
+ <td><xsl:apply-templates
select="failure"/></td>
+ </xsl:when>
+ <xsl:when test="error">
+ <td>Error</td>
+ <td><xsl:apply-templates
select="error"/></td>
+ </xsl:when>
+ <xsl:otherwise>
+ <td>Success</td>
+ <td></td>
+ </xsl:otherwise>
+ </xsl:choose>
+ <td>
+ <xsl:call-template name="display-time">
+ <xsl:with-param name="value" select="@time"/>
+ </xsl:call-template>
+ </td>
+ </tr>
+</xsl:template>
+
+
+<xsl:template match="failure">
+ <xsl:call-template name="display-failures"/>
+</xsl:template>
+
+<xsl:template match="error">
+ <xsl:call-template name="display-failures"/>
+</xsl:template>
+
+<!-- Style for the error and failure in the tescase template -->
+<xsl:template name="display-failures">
+ <xsl:choose>
+ <xsl:when test="not(@message)">N/A</xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="@message"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ <!-- display the stacktrace -->
+ <code>
+ <br/><br/>
+ <xsl:call-template name="br-replace">
+ <xsl:with-param name="word" select="."/>
+ </xsl:call-template>
+ </code>
+ <!-- the later is better but might be problematic for non-21" monitors...
-->
+ <!--pre><xsl:value-of select="."/></pre-->
+</xsl:template>
+
+<xsl:template name="JS-escape">
+ <xsl:param name="string"/>
+ <xsl:param name="tmp1"
select="stringutils:replace(string($string),'\','\\')"/>
+ <xsl:param name="tmp2"
select="stringutils:replace(string($tmp1),"'","\'")"/>
+ <xsl:value-of select="$tmp2"/>
+</xsl:template>
+
+
+<!--
+ template that will convert a carriage return into a br tag
+ @param word the text from which to convert CR to BR tag
+-->
+<xsl:template name="br-replace">
+ <xsl:param name="word"/>
+ <xsl:value-of disable-output-escaping="yes"
select='stringutils:replace(string($word),"
","<br/>")'/>
+</xsl:template>
+
+<xsl:template name="display-time">
+ <xsl:param name="value"/>
+ <xsl:value-of select="format-number($value,'0.000')"/>
+</xsl:template>
+
+<xsl:template name="display-percent">
+ <xsl:param name="value"/>
+ <xsl:value-of select="format-number($value,'0.00%')"/>
+</xsl:template>
+
+</xsl:stylesheet>
Property changes on: modules/web/trunk/tools/etc/junit-noframes.xsl
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/log.xsl
===================================================================
--- modules/web/trunk/tools/etc/log.xsl (rev 0)
+++ modules/web/trunk/tools/etc/log.xsl 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,202 @@
+<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
+<xsl:output method="html" indent="yes"
encoding="US-ASCII"/>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+
+-->
+
+<!--
+
+ The purpose have this XSL is to provide a nice way to look at the output
+ from the Ant XmlLogger (ie: ant -listener org.apache.tools.ant.XmlLogger )
+
+ @author <a href="mailto:sbailliez@apache.org">Stephane
Bailliez</a>
+
+-->
+<xsl:decimal-format decimal-separator="." grouping-separator=","
/>
+
+<xsl:template match="/">
+<html>
+ <head>
+ <style type="text/css">
+ .bannercell {
+ border: 0px;
+ padding: 0px;
+ }
+ body {
+ margin: 0;
+ font:normal 100% arial,helvetica,sanserif;
+ background-color:#FFFFFF;
+ color:#000000;
+ }
+ table.status {
+ font:bold 80% arial,helvetica,sanserif;
+ background-color:#525D76;
+ color:#ffffff;
+ }
+ table.log tr td, tr th {
+ font-size: 80%;
+ }
+ .error {
+ color:red;
+ }
+ .warn {
+ color:brown;
+ }
+ .info {
+ color:gray;
+ }
+ .debug{
+ color:gray;
+ }
+ .failed {
+ font-size:80%;
+ background-color: red;
+ color:#FFFFFF;
+ font-weight: bold
+ }
+ .complete {
+ font-size:80%;
+ background-color: #525D76;
+ color:#FFFFFF;
+ font-weight: bold
+ }
+ .a td {
+ background: #efefef;
+ }
+ .b td {
+ background: #fff;
+ }
+ th, td {
+ text-align: left;
+ vertical-align: top;
+ }
+ th {
+ background: #ccc;
+ color: black;
+ }
+ table, th, td {
+ border: none
+ }
+ h3 {
+ font:bold 80% arial,helvetica,sanserif;
+ background: #525D76;
+ color: white;
+ text-decoration: none;
+ padding: 5px;
+ margin-right: 2px;
+ margin-left: 2px;
+ margin-bottom: 0;
+ }
+ </style>
+ </head>
+ <body>
+ <!-- jakarta logo -->
+ <table border="0" cellpadding="0" cellspacing="0"
width="100%">
+ <tr>
+ <td valign="top" class="bannercell">
+ <a
href="http://jakarta.apache.org/">
+ <img
src="http://jakarta.apache.org/images/jakarta-logo.gif"
alt="http://jakarta.apache.org" align="left"
border="0"/>
+ </a>
+ </td>
+ <td style="text-align:right;vertical-align:bottom">
+ <a
href="http://ant.apache.org/">Apache Ant</a>
+ </td>
+ </tr>
+ </table>
+
+ <table border="0" width="100%">
+ <tr><td><hr noshade="yes"
size="1"/></td></tr>
+ </table>
+
+ <xsl:apply-templates select="build"/>
+
+ </body>
+</html>
+</xsl:template>
+
+<xsl:template match="build">
+ <!-- build status -->
+ <table width="100%">
+ <xsl:attribute name="class">
+ <xsl:if test="@error">failed</xsl:if>
+ <xsl:if test="not(@error)">complete</xsl:if>
+ </xsl:attribute>
+ <tr>
+ <xsl:if test="@error">
+ <td nowrap="yes">Build Failed</td>
+ </xsl:if>
+ <xsl:if test="not(@error)">
+ <td nowrap="yes">Build Complete</td>
+ </xsl:if>
+ <td style="text-align:right" nowrap="yes">Total Time:
<xsl:value-of select="@time"/></td>
+ </tr>
+ <tr>
+ <td colspan="2">
+ <xsl:if test="@error">
+ <tt><xsl:value-of
select="@error"/></tt><br/>
+ <i style="font-size:80%">See the <a
href="#stacktrace" alt="Click for
details">stacktrace</a>.</i>
+ </xsl:if>
+ </td>
+ </tr>
+ </table>
+ <table border="1" cellspacing="2" cellpadding="3"
width="100%" style="font-size:80%">
+ <tr class="a"><td
width="1">ant.file</td><td><xsl:value-of
select="substring-after(//message[contains(text(),'ant.file')],
'->')"/></td></tr>
+ <tr class="b"><td
width="1">ant.version</td><td><xsl:value-of
select="substring-after(//message[contains(text(),'ant.version')],
'->')"/></td></tr>
+ <tr class="a"><td
width="1">java.version</td><td><xsl:value-of
select="substring-after(//message[contains(text(),'java.vm.version')],
'->')"/></td></tr>
+ <tr class="b"><td
width="1">os.name</td><td><xsl:value-of
select="substring-after(//message[contains(text(),'os.name')],
'->')"/></td></tr>
+ </table>
+ <!-- build information -->
+ <h3>Build events</h3>
+ <table class="log" border="1" cellspacing="2"
cellpadding="3" width="100%">
+ <tr>
+ <th nowrap="yes" align="left"
width="1%">target</th>
+ <th nowrap="yes" align="left"
width="1%">task</th>
+ <th nowrap="yes" align="left">message</th>
+ </tr>
+ <xsl:apply-templates select=".//message[@priority !=
'debug']"/>
+ </table>
+ <p>
+ <!-- stacktrace -->
+ <xsl:if test="stacktrace">
+ <a name="stacktrace"/>
+ <h3>Error details</h3>
+ <table width="100%">
+ <tr><td>
+ <pre><xsl:value-of select="stacktrace"/></pre>
+ </td></tr>
+ </table>
+ </xsl:if>
+ </p>
+</xsl:template>
+
+<!-- report every message but those with debug priority -->
+<xsl:template match="message[@priority!='debug']">
+ <tr valign="top">
+ <!-- alternated row style -->
+ <xsl:attribute name="class">
+ <xsl:if test="position() mod 2 = 1">a</xsl:if>
+ <xsl:if test="position() mod 2 = 0">b</xsl:if>
+ </xsl:attribute>
+ <td nowrap="yes" width="1%"><xsl:value-of
select="../../@name"/></td>
+ <td nowrap="yes" style="text-align:right"
width="1%">[ <xsl:value-of select="../@name"/> ]</td>
+ <td class="{@priority}" nowrap="yes">
+ <xsl:value-of select="text()"/>
+ </td>
+ </tr>
+</xsl:template>
+
+</xsl:stylesheet>
Property changes on: modules/web/trunk/tools/etc/log.xsl
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/maudit-frames.xsl
===================================================================
--- modules/web/trunk/tools/etc/maudit-frames.xsl (rev 0)
+++ modules/web/trunk/tools/etc/maudit-frames.xsl 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,502 @@
+<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0"
+
xmlns:lxslt="http://xml.apache.org/xslt"
+ xmlns:redirect="org.apache.xalan.lib.Redirect"
+ extension-element-prefixes="redirect">
+<xsl:output method="html" indent="yes"
encoding="US-ASCII"/>
+<xsl:decimal-format decimal-separator="." grouping-separator=","
/>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+-->
+<!--
+
+ Stylesheet to transform an XML file generated by the Ant MAudit task into
+ a set of JavaDoc-like HTML page to make pages more convenient to be browsed.
+
+ It use the Xalan redirect extension to write to multiple output files.
+
+ @author Stephane Bailliez <a href="mailto:sbailliez@apache.org"/>
+-->
+
+<xsl:param name="output.dir" select="'.'"/>
+
+
+<xsl:template match="classes">
+ <!-- create the index.html -->
+ <redirect:write file="{$output.dir}/index.html">
+ <xsl:call-template name="index.html"/>
+ </redirect:write>
+
+ <!-- create the stylesheet.css -->
+ <redirect:write file="{$output.dir}/stylesheet.css">
+ <xsl:call-template name="stylesheet.css"/>
+ </redirect:write>
+
+ <!-- create the overview-packages.html at the root -->
+ <redirect:write file="{$output.dir}/overview-summary.html">
+ <xsl:apply-templates select="."
mode="overview.packages"/>
+ </redirect:write>
+
+ <!-- create the all-packages.html at the root -->
+ <redirect:write file="{$output.dir}/overview-frame.html">
+ <xsl:apply-templates select="." mode="all.packages"/>
+ </redirect:write>
+
+ <!-- create the all-classes.html at the root -->
+ <redirect:write file="{$output.dir}/allclasses-frame.html">
+ <xsl:apply-templates select="." mode="all.classes"/>
+ </redirect:write>
+
+ <!-- process all packages -->
+ <xsl:for-each select="./class[not(./@package =
preceding-sibling::class/@package)]">
+ <xsl:call-template name="package">
+ <xsl:with-param name="name" select="@package"/>
+ </xsl:call-template>
+ </xsl:for-each>
+</xsl:template>
+
+
+<xsl:template name="package">
+ <xsl:param name="name"/>
+ <xsl:variable name="package.dir">
+ <xsl:if test="not($name = '')"><xsl:value-of
select="translate($name,'.','/')"/></xsl:if>
+ <xsl:if test="$name = ''">.</xsl:if>
+ </xsl:variable>
+ <!--Processing package <xsl:value-of select="@name"/> in
<xsl:value-of select="$output.dir"/> -->
+ <!-- create a classes-list.html in the package directory -->
+ <redirect:write
file="{$output.dir}/{$package.dir}/package-frame.html">
+ <xsl:call-template name="classes.list">
+ <xsl:with-param name="name" select="$name"/>
+ </xsl:call-template>
+ </redirect:write>
+
+ <!-- create a package-summary.html in the package directory -->
+ <redirect:write
file="{$output.dir}/{$package.dir}/package-summary.html">
+ <xsl:call-template name="package.summary">
+ <xsl:with-param name="name" select="$name"/>
+ </xsl:call-template>
+ </redirect:write>
+
+ <!-- for each class, creates a @name.html -->
+ <!-- @bug there will be a problem with inner classes having the same name, it will
be overwritten -->
+ <xsl:for-each select="/classes/class[@package = $name]">
+ <redirect:write
file="{$output.dir}/{$package.dir}/{(a)name}.html">
+ <xsl:apply-templates select="."
mode="class.details"/>
+ </redirect:write>
+ </xsl:for-each>
+</xsl:template>
+
+<xsl:template name="index.html">
+<HTML>
+ <HEAD><TITLE>Audit Results.</TITLE></HEAD>
+ <FRAMESET cols="20%,80%">
+ <FRAMESET rows="30%,70%">
+ <FRAME src="overview-frame.html"
name="packageListFrame"/>
+ <FRAME src="allclasses-frame.html"
name="classListFrame"/>
+ </FRAMESET>
+ <FRAME src="overview-summary.html" name="classFrame"/>
+ </FRAMESET>
+ <noframes>
+ <H2>Frame Alert</H2>
+ <P>
+ This document is designed to be viewed using the frames feature. If you see this
message, you are using a non-frame-capable web client.
+ </P>
+ </noframes>
+</HTML>
+</xsl:template>
+
+
+<!-- this is the stylesheet css to use for nearly everything -->
+<xsl:template name="stylesheet.css">
+ .bannercell {
+ border: 0px;
+ padding: 0px;
+ }
+ body {
+ margin-left: 10;
+ margin-right: 10;
+ font:normal 80% arial,helvetica,sanserif;
+ background-color:#FFFFFF;
+ color:#000000;
+ }
+ .a td {
+ background: #efefef;
+ }
+ .b td {
+ background: #fff;
+ }
+ th, td {
+ text-align: left;
+ vertical-align: top;
+ }
+ th {
+ font-weight:bold;
+ background: #ccc;
+ color: black;
+ }
+ table, th, td {
+ font-size:100%;
+ border: none
+ }
+ table.log tr td, tr th {
+
+ }
+ h2 {
+ font-weight:bold;
+ font-size:140%;
+ margin-bottom: 5;
+ }
+ h3 {
+ font-size:100%;
+ font-weight:bold;
+ background: #525D76;
+ color: white;
+ text-decoration: none;
+ padding: 5px;
+ margin-right: 2px;
+ margin-left: 2px;
+ margin-bottom: 0;
+ }
+</xsl:template>
+
+
+<!-- print the violations of the class -->
+<xsl:template match="class" mode="class.details">
+ <xsl:variable name="package.name" select="@package"/>
+ <HTML>
+ <HEAD>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"
select="$package.name"/>
+ </xsl:call-template>
+ </HEAD>
+ <BODY>
+ <xsl:call-template name="pageHeader"/>
+ <H3>Class <xsl:if test="not($package.name =
'')"><xsl:value-of
select="$package.name"/>.</xsl:if><xsl:value-of
select="@name"/></H3>
+
+ <table class="log" border="0"
cellpadding="5" cellspacing="2" width="100%">
+ <xsl:call-template name="class.audit.header"/>
+ <xsl:apply-templates select="."
mode="print.audit"/>
+ </table>
+
+ <H3>Violations</H3>
+ <table class="log" border="0"
cellpadding="5" cellspacing="2" width="100%">
+ <xsl:call-template name="violation.audit.header"/>
+ <xsl:apply-templates select="./violation"
mode="print.audit">
+ <xsl:sort data-type="number"
select="@line"/>
+ </xsl:apply-templates>
+ </table>
+ <xsl:call-template name="pageFooter"/>
+ </BODY>
+ </HTML>
+</xsl:template>
+
+
+<!-- list of classes in a package -->
+<xsl:template name="classes.list">
+ <xsl:param name="name"/>
+ <HTML>
+ <HEAD>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"
select="$name"/>
+ </xsl:call-template>
+ </HEAD>
+ <BODY>
+ <table width="100%">
+ <tr>
+ <td nowrap="nowrap">
+ <H2><a href="package-summary.html"
target="classFrame"><xsl:value-of
select="$name"/></a></H2>
+ </td>
+ </tr>
+ </table>
+
+ <h2>Classes</h2>
+ <TABLE WIDTH="100%">
+ <xsl:apply-templates select="/classes/class[./@package =
$name]" mode="classes.list">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </TABLE>
+ </BODY>
+ </HTML>
+</xsl:template>
+<!-- the class to list -->
+<xsl:template match="class" mode="classes.list">
+ <tr>
+ <td nowrap="nowrap">
+ <!-- @bug naming to fix for inner classes -->
+ <a href="{(a)name}.html"
target="classFrame"><xsl:value-of select="@name"/></a>
+ </td>
+ </tr>
+</xsl:template>
+
+
+<!--
+ Creates an all-classes.html file that contains a link to all package-summary.html
+ on each class.
+-->
+<xsl:template match="classes" mode="all.classes">
+ <html>
+ <head>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"/>
+ </xsl:call-template>
+ </head>
+ <body>
+ <h2>Classes</h2>
+ <table width="100%">
+ <xsl:apply-templates select=".//class"
mode="all.classes">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table>
+ </body>
+ </html>
+</xsl:template>
+
+<xsl:template match="class" mode="all.classes">
+ <!-- (ancestor::package)[last()] is buggy in MSXML3 ? -->
+ <xsl:variable name="package.name" select="@package"/>
+ <tr>
+ <td nowrap="nowrap">
+ <a target="classFrame">
+ <xsl:attribute name="href">
+ <xsl:if test="not($package.name='')">
+ <xsl:value-of
select="translate($package.name,'.','/')"/><xsl:text>/</xsl:text>
+ </xsl:if><xsl:value-of
select="@name"/><xsl:text>.html</xsl:text>
+ </xsl:attribute>
+ <xsl:value-of select="@name"/>
+ </a>
+ </td>
+ </tr>
+</xsl:template>
+
+
+<!--
+ Creates an html file that contains a link to all package-summary.html files on
+ each package existing on testsuites.
+ @bug there will be a problem here, I don't know yet how to handle unnamed package
:(
+-->
+<xsl:template match="classes" mode="all.packages">
+ <html>
+ <head>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"/>
+ </xsl:call-template>
+ </head>
+ <body>
+ <h2><a href="overview-summary.html"
target="classFrame">Home</a></h2>
+ <h2>Packages</h2>
+ <table width="100%">
+ <xsl:apply-templates select="class[not(./@package =
preceding-sibling::class/@package)]" mode="all.packages">
+ <xsl:sort select="@package"
order="ascending"/>
+ </xsl:apply-templates>
+ </table>
+ </body>
+ </html>
+</xsl:template>
+
+<xsl:template match="class" mode="all.packages">
+ <tr>
+ <td nowrap="nowrap">
+ <a
href="{translate((a)package,'.','/')}/package-summary.html"
target="classFrame">
+ <xsl:value-of select="@package"/>
+ </a>
+ </td>
+ </tr>
+</xsl:template>
+
+
+<xsl:template match="classes" mode="overview.packages">
+ <html>
+ <head>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"/>
+ </xsl:call-template>
+ </head>
+ <body
onload="open('allclasses-frame.html','classListFrame')">
+ <xsl:call-template name="pageHeader"/>
+ <h3>Summary</h3>
+ <table class="log" border="0" cellpadding="5"
cellspacing="2" width="100%">
+ <tr>
+ <th>Audited classes</th>
+ <th>Reported classes</th>
+ <th>Violations</th>
+ </tr>
+ <tr class="a">
+ <td><xsl:value-of select="@audited"/></td>
+ <td><xsl:value-of select="@reported"/></td>
+ <td><xsl:value-of select="@violations"/></td>
+ </tr>
+ </table>
+ <table border="0" width="100%">
+ <tr>
+ <td style="text-align: justify;">
+ Note: Rules checked have originated from style guidelines suggested by the
language designers,
+ experience from the Java development community and insite experience. Violations
are generally
+ reported with a reference to the <a
href="http://java.sun.com/docs/books/jls/second_edition/html/jTOC.do...
Language Specifications</a> (JLS x.x.x)
+ and Metamata Audit rules (x.x).
+ Please consult these documents for additional information about violations.
+ <p/>
+ Rules checked also enforce adherence to <a
href="http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html&qu... Java
coding guidelines</a> in use at Jakarta.
+ <p/>
+ One should note that these violations do not necessary underline errors but
should be used
+ as an indication for <i>possible</i> errors. As always, use your best
judgment and review
+ them carefully, it might save you hours of debugging.
+ </td>
+ </tr>
+ </table>
+
+ <h3>Packages</h3>
+ <table class="log" border="0" cellpadding="5"
cellspacing="2" width="100%">
+ <xsl:call-template name="class.audit.header"/>
+ <xsl:for-each select="class[not(./@package =
preceding-sibling::class/@package)]">
+ <xsl:sort select="@package"
order="ascending"/>
+ <tr>
+ <xsl:call-template name="alternate-row"/>
+ <td><a
href="{translate(@package,'.','/')}/package-summary.html"><xsl:value-of
select="@package"/></a></td>
+ <td><xsl:value-of select="sum(/classes/class[./@package
= current()/@package]/@violations)"/></td>
+ </tr>
+ </xsl:for-each>
+ </table>
+ <xsl:call-template name="pageFooter"/>
+ </body>
+ </html>
+</xsl:template>
+
+
+<xsl:template name="package.summary">
+ <xsl:param name="name"/>
+ <HTML>
+ <HEAD>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"
select="$name"/>
+ </xsl:call-template>
+ </HEAD>
+ <BODY>
+ <xsl:attribute
name="onload">open('package-frame.html','classListFrame')</xsl:attribute>
+ <xsl:call-template name="pageHeader"/>
+ <h3>Package <xsl:value-of select="$name"/></h3>
+
+ <!--table border="0" cellpadding="5"
cellspacing="2" width="100%">
+ <xsl:call-template name="class.metrics.header"/>
+ <xsl:apply-templates select="."
mode="print.metrics"/>
+ </table-->
+
+ <xsl:if test="count(/classes/class[./@package = $name]) >
0">
+ <H3>Classes</H3>
+ <table class="log" border="0"
cellpadding="5" cellspacing="2" width="100%">
+ <xsl:call-template name="class.audit.header"/>
+ <xsl:apply-templates select="/classes/class[./@package =
$name]" mode="print.audit">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table>
+ </xsl:if>
+ <xsl:call-template name="pageFooter"/>
+ </BODY>
+ </HTML>
+</xsl:template>
+
+
+<!--
+ transform string like a.b.c to ../../../
+ @param path the path to transform into a descending directory path
+-->
+<xsl:template name="path">
+ <xsl:param name="path"/>
+ <xsl:if test="contains($path,'.')">
+ <xsl:text>../</xsl:text>
+ <xsl:call-template name="path">
+ <xsl:with-param name="path"><xsl:value-of
select="substring-after($path,'.')"/></xsl:with-param>
+ </xsl:call-template>
+ </xsl:if>
+ <xsl:if test="not(contains($path,'.')) and not($path =
'')">
+ <xsl:text>../</xsl:text>
+ </xsl:if>
+</xsl:template>
+
+
+<!-- create the link to the stylesheet based on the package name -->
+<xsl:template name="create.stylesheet.link">
+ <xsl:param name="package.name"/>
+ <LINK REL ="stylesheet" TYPE="text/css"
TITLE="Style"><xsl:attribute name="href"><xsl:if
test="not($package.name = 'unnamed package')"><xsl:call-template
name="path"><xsl:with-param name="path"
select="$package.name"/></xsl:call-template></xsl:if>stylesheet.css</xsl:attribute></LINK>
+</xsl:template>
+
+<!-- Page HEADER -->
+<xsl:template name="pageHeader">
+
+ <!-- jakarta logo -->
+ <table border="0" cellpadding="0" cellspacing="0"
width="100%">
+ <tr>
+ <td class="bannercell" rowspan="2">
+ <a
href="http://jakarta.apache.org/">
+ <img
src="http://jakarta.apache.org/images/jakarta-logo.gif"
alt="http://jakarta.apache.org" align="left"
border="0"/>
+ </a>
+ </td>
+ <td style="text-align:right"><h2>Source Code
Audit</h2></td>
+ </tr>
+ <tr>
+ <td style="text-align:right">Designed for use with <a
href='http://www.webgain.com/products/quality_analyzer/'>Webgain QA/Metamata
Audit</a> and <a
href='http://jakarta.apache.org'>Ant</a>.</td>
+ </tr>
+ </table>
+ <hr size="1"/>
+</xsl:template>
+
+<!-- Page HEADER -->
+<xsl:template name="pageFooter">
+</xsl:template>
+
+
+<!-- class header -->
+<xsl:template name="class.audit.header">
+ <tr>
+ <th width="80%">Name</th>
+ <th>Violations</th>
+ </tr>
+</xsl:template>
+
+<!-- method header -->
+<xsl:template name="violation.audit.header">
+ <tr>
+ <th>Line</th>
+ <th>Message</th>
+ </tr>
+</xsl:template>
+
+
+<!-- class information -->
+<xsl:template match="class" mode="print.audit">
+ <tr>
+ <xsl:call-template name="alternate-row"/>
+ <td><a href="{@name}.html"><xsl:value-of
select="@name"/></a></td>
+ <td><xsl:apply-templates select="@violations"/></td>
+ </tr>
+</xsl:template>
+
+<xsl:template match="violation" mode="print.audit">
+ <tr>
+ <xsl:call-template name="alternate-row"/>
+ <td><xsl:value-of select="@line"/></td>
+ <td><xsl:apply-templates select="@message"/></td>
+ </tr>
+</xsl:template>
+
+<!-- alternated row style -->
+<xsl:template name="alternate-row">
+<xsl:attribute name="class">
+ <xsl:if test="position() mod 2 = 1">a</xsl:if>
+ <xsl:if test="position() mod 2 = 0">b</xsl:if>
+</xsl:attribute>
+</xsl:template>
+
+</xsl:stylesheet>
+
Property changes on: modules/web/trunk/tools/etc/maudit-frames.xsl
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/mmetrics-frames.xsl
===================================================================
--- modules/web/trunk/tools/etc/mmetrics-frames.xsl (rev 0)
+++ modules/web/trunk/tools/etc/mmetrics-frames.xsl 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,1025 @@
+<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0"
+
xmlns:lxslt="http://xml.apache.org/xslt"
+
xmlns:xalan="http://xml.apache.org/xalan"
+ xmlns:redirect="org.apache.xalan.lib.Redirect"
+ exclude-result-prefixes="xalan"
+ extension-element-prefixes="redirect">
+<xsl:output method="html" indent="yes"
encoding="US-ASCII"/>
+<xsl:decimal-format decimal-separator="." grouping-separator=","
/>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+-->
+<!--
+ @author Stephane Bailliez <a href="mailto:sbailliez@apache.org"/>
+ -->
+<xsl:param name="output.dir" select="'.'"/>
+
+<!-- default max value for the metrics -->
+<xsl:param name="vg.max" select="10"/>
+<xsl:param name="loc.max" select="1000"/>
+<xsl:param name="dit.max" select="10"/>
+<xsl:param name="noa.max" select="250"/>
+<xsl:param name="nrm.max" select="50"/>
+<xsl:param name="nlm.max" select="250"/>
+<xsl:param name="wmc.max" select="250"/>
+<xsl:param name="rfc.max" select="50"/>
+<xsl:param name="dac.max" select="10"/>
+<xsl:param name="fanout.max" select="10"/>
+<xsl:param name="cbo.max" select="15"/>
+<xsl:param name="lcom.max" select="10"/>
+<xsl:param name="nocl.max" select="10"/>
+
+
+<!-- create a tree fragment to speed up processing -->
+<xsl:variable name="doctree.var">
+ <xsl:element name="classes">
+ <xsl:for-each select=".//class">
+ <xsl:element name="class">
+ <xsl:attribute name="package">
+ <xsl:value-of select="(ancestor::package)[last()]/@name"/>
+ </xsl:attribute>
+ <xsl:copy-of select="@*"/>
+ <xsl:attribute name="name">
+ <xsl:apply-templates select="." mode="class.name"/>
+ </xsl:attribute>
+ <xsl:copy-of select="method"/>
+ </xsl:element>
+ </xsl:for-each>
+ </xsl:element>
+</xsl:variable>
+
+<xsl:variable name="doctree"
select="xalan:nodeset($doctree.var)"/>
+
+<xsl:template match="metrics">
+
+ <!-- create the index.html -->
+ <redirect:write file="{$output.dir}/index.html">
+ <xsl:call-template name="index.html"/>
+ </redirect:write>
+
+ <!-- create the stylesheet.css -->
+ <redirect:write file="{$output.dir}/stylesheet.css">
+ <xsl:call-template name="stylesheet.css"/>
+ </redirect:write>
+
+ <redirect:write file="{$output.dir}/metrics-reference.html">
+ <xsl:call-template name="metrics-reference.html"/>
+ </redirect:write>
+
+ <!-- create the overview-packages.html at the root -->
+ <redirect:write file="{$output.dir}/overview-summary.html">
+ <xsl:apply-templates select="." mode="overview.packages"/>
+ </redirect:write>
+
+ <!-- create the all-packages.html at the root -->
+ <redirect:write file="{$output.dir}/overview-frame.html">
+ <xsl:apply-templates select="." mode="all.packages"/>
+ </redirect:write>
+
+ <!-- create the all-classes.html at the root -->
+ <redirect:write file="{$output.dir}/allclasses-frame.html">
+ <xsl:apply-templates select="." mode="all.classes"/>
+ </redirect:write>
+
+ <!-- process all packages -->
+ <xsl:apply-templates select=".//package"/>
+</xsl:template>
+
+
+<xsl:template match="package">
+ <xsl:variable name="package.name" select="@name"/>
+ <xsl:variable name="package.dir">
+ <xsl:if test="not($package.name = 'unnamed
package')"><xsl:value-of
select="translate($package.name,'.','/')"/></xsl:if>
+ <xsl:if test="$package.name = 'unnamed
package'">.</xsl:if>
+ </xsl:variable>
+ <!-- create a classes-list.html in the package directory -->
+ <redirect:write
file="{$output.dir}/{$package.dir}/package-frame.html">
+ <xsl:apply-templates select="." mode="classes.list"/>
+ </redirect:write>
+
+ <!-- create a package-summary.html in the package directory -->
+ <redirect:write
file="{$output.dir}/{$package.dir}/package-summary.html">
+ <xsl:apply-templates select="." mode="package.summary"/>
+ </redirect:write>
+
+ <!-- for each class, creates a @name.html -->
+ <!-- @bug there will be a problem with inner classes having the same name, it will
be overwritten -->
+ <xsl:for-each select="$doctree/classes/class[@package =
current()/@name]">
+ <!--Processing <xsl:value-of
select="$class.name"/><xsl:text> </xsl:text> -->
+ <redirect:write file="{$output.dir}/{$package.dir}/{(a)name}.html">
+ <xsl:apply-templates select="." mode="class.details"/>
+ </redirect:write>
+ </xsl:for-each>
+</xsl:template>
+
+<!-- little trick to compute the classname for inner and non inner classes -->
+<!-- this is all in one line to avoid CRLF in the name -->
+<xsl:template match="class" mode="class.name">
+ <xsl:if test="parent::class"><xsl:apply-templates
select="parent::class" mode="class.name"/>.<xsl:value-of
select="@name"/></xsl:if><xsl:if
test="not(parent::class)"><xsl:value-of
select="@name"/></xsl:if>
+</xsl:template>
+
+
+<xsl:template name="index.html">
+<HTML>
+ <HEAD><TITLE>Metrics Results.</TITLE></HEAD>
+ <FRAMESET cols="20%,80%">
+ <FRAMESET rows="30%,70%">
+ <FRAME src="overview-frame.html"
name="packageListFrame"/>
+ <FRAME src="allclasses-frame.html"
name="classListFrame"/>
+ </FRAMESET>
+ <FRAME src="overview-summary.html" name="classFrame"/>
+ </FRAMESET>
+ <noframes>
+ <H2>Frame Alert</H2>
+ <P>
+ This document is designed to be viewed using the frames feature. If you see this
message, you are using a non-frame-capable web client.
+ </P>
+ </noframes>
+</HTML>
+</xsl:template>
+
+<!-- this is the stylesheet css to use for nearly everything -->
+<xsl:template name="metrics-reference.html">
+<html>
+<head>
+<link title="Style" type="text/css" rel="stylesheet"
href="stylesheet.css"/>
+</head>
+<body style="text-align:justify;">
+<h2>Metrics Reference</h2>
+<a href="#V(G)">V(G)</a> |
+<a href="#LOC">LOC</a> |
+<a href="#DIT">DIT</a> |
+<a href="#NOA">NOA</a> |
+<a href="#NRM">NRM</a> |
+<a href="#NLM">NLM</a> |
+<a href="#WMC">WMC</a> |
+<a href="#RFC">RFC</a> |
+<a href="#DAC">DAC</a> |
+<a href="#FANOUT">FANOUT</a> |
+<a href="#CBO">CBO</a> |
+<a href="#LCOM">LCOM</a> |
+<a href="#NOC">NOC</a>
+
+<a name="V(G)"/>
+<h3>Cyclomatic Complexity - V(G)</h3>
+This metric was introduced in the 1970s to measure the amount of control
+flow complexity or branching complexity in a module such as a
+subroutine. It gives the number of paths that may be taken through the
+code, and was initially developed to give some measure of the cost of
+producing a test case for the module by executing each path.
+<p/>
+Methods with a high cyclomatic complexity tend to be more difficult to
+understand and maintain. In general the more complex the methods of an
+application, the more difficult it will be to test it, and this will adversely
+affect its reliability.
+<p/>
+V(G) is a measure of the control flow complexity of a method or
+constructor. It counts the number of branches in the body of the method,
+defined as:
+<ul>
+<li>while statements;</li>
+<li>if statements;</li>
+<li>for statements.</li>
+</ul>
+
+The metric can also be configured to count each case of a switch
+statement as well.
+
+<a name="LOC"/>
+<h3>Lines of Code - LOC</h3>
+
+This is perhaps the simplest of all the metrics to define and compute.
+Counting lines has a long history as a software metric dating from before
+the rise of structured programming, and it is still in widespread use today.
+The size of a method affects the ease with which it can be understood, its
+reusability and its maintainability. There are a variety of ways that the size
+can be calculated. These include counting all the lines of code, the number
+of statements, the blank lines of code, the lines of commentary, and the
+lines consisting only of syntax such as block delimiters.
+<p/>
+This metric can also be used for sizing other constructs as well, for
+example, the overall size of a Java class or package can be measured by
+counting the number of source lines it consists of.
+<p/>
+LOC can be used to determine the size of a compilation unit (source file),
+class or interface, method, constructor, or field. It can be configured to
+ignore:
+<ul>
+<li>blank lines;</li>
+<li>lines consisting only of comments;</li>
+<li>lines consisting only of opening and closing braces.</li>
+</ul>
+
+<a name="DIT"/>
+<h3>Depth of Inheritance Hierarchy - DIT</h3>
+
+This metric calculates how far down the inheritance hierarchy a class is
+declared. In Java all classes have java.lang.Object as their ultimate
+superclass, which is defined to have a depth of 1. So a class that
+immediately extends java.lang.Object has a metric value of 2; any of its
+subclasses will have a value of 3, and so on.
+<p/>
+A class that is deep within the tree inherits more methods and state
+variables, thereby increasing its complexity and making it difficult to
+predict its behavior. It can be harder to understand a system with many
+inheritance layers.
+<p/>
+DIT is defined for classes and interfaces:
+<ul>
+<li>all interface types have a depth of 1;</li>
+<li>the class java.lang.Object has a depth of 1;</li>
+<li>all other classes have a depth of 1 + the depth of their super
class.</li>
+</ul>
+
+<a name="NOA"/>
+<h3>Number of Attributes - NOA</h3>
+
+The number of distinct state variables in a class serves as one measure of
+its complexity. The more state a class represents the more difficult it is to
+maintain invariants for it. It also hinders comprehensibility and reuse.
+<p/>
+In Java, state can be exposed to subclasses through protected fields, which
+entails that the subclass also be aware of and maintain any invariants. This
+interference with the class's data encapsulation can be a source of defects
+and hidden dependencies between the state variables.
+<p/>
+NOA is defined for classes and interfaces. It counts the number of fields
+declared in the class or interface.
+
+<a name="NRM"/>
+<h3>Number of Remote Methods - NRM</h3>
+
+NRM is defined for classes. A remote method call is defined as an
+invocation of a method that is not declared in any of:
+<ul>
+<li>the class itself;</li>
+<li>a class or interface that the class extends or implements;</li>
+<li>a class or method that extends the class.</li>
+</ul>
+
+The value is the count of all the remote method calls in all of the methods
+and constructors of the class.
+
+<a name="NLM"/>
+<h3>Number of Local Methods - NLM</h3>
+
+NLM is defined for classes and interfaces. A local method is defined as a
+method that is declared in the class or interface. NLM can be configured to
+include the local methods of all of the class's superclasses. Methods with
+public, protected, package and private visibility can be independently
+counted by setting configuration parameters.
+
+<a name="WMC"/>
+<h3>Weighted Methods per Class - WMC</h3>
+
+If the number of methods in a class can be determined during the design
+and modeling phase of a project, it can be used as a predictor of how
+much time and effort is needed to develop, debug and maintain it. This
+metric can be further refined by incorporating a weighting for the
+complexity of each method. The usual weighting is given by the cyclomatic
+complexity of the method.
+<p/>
+The subclasses of a class inherit all of its public and protected methods,
+and possibly its package methods as well, so the number of methods a
+class has directly impacts the complexity of its subclasses. Classes with
+large numbers of methods are often specific to a particular application,
+reducing the ability to reuse them.
+<p/>
+The definition of WMC is based upon NLM, and it provides the same
+configuration parameters for counting inherited methods and of varying
+visibility. The main difference is that NLM always counts each method as 1,
+whereas WMC will weight each method. There are two weighting schemes:
+<ul>
+<li>V(G) the cyclomatic complexity of the method is used as its weight.
+ Methods from class files are given a V(G) of 1.</li>
+<li>the arity, or the number of parameters of the method are used to
+ determine the weight.</li>
+</ul>
+
+<a name="RFC"/>
+<h3>Response For Class - RFC</h3>
+
+The response set of a class is the set of all methods that can be invoked as
+a result of a message sent to an object of the class. This includes methods
+in the class's inheritance hierarchy and methods that can be invoked on
+other objects. The Response For Class metric is defined to be size of the
+response set for the class. A class which provides a larger response set is
+considered to be more complex than one with a smaller response set.
+<p/>
+One reason for this is that if a method call on a class can result in a large
+number of different method calls on the target and other classes, then it
+can be harder to test the behavior of the class and debug problems. It will
+typically require a deeper understanding of the potential interactions that
+objects of the class can have with the rest of the system.
+<p/>
+RFC is defined as the sum of NLM and NRM for the class. The local methods
+include all of the public, protected, package and private methods, but not
+methods declared only in a superclass.
+
+<a name="DAC"/>
+<h3>Data Abstraction Coupling - DAC</h3>
+
+DAC is defined for classes and interfaces. It counts the number of reference
+types that are used in the field declarations of the class or interface. The
+component types of arrays are also counted. Any field with a type that is
+either a supertype or a subtype of the class is not counted.
+
+<a name="FANOUT"/>
+<h3>Fan Out - FANOUT</h3>
+
+FANOUT is defined for classes and interfaces, constructors and methods. It
+counts the number of reference types that are used in:
+<ul>
+<li>field declarations;</li>
+<li>formal parameters and return types;</li>
+<li>throws declarations;</li>
+<li>local variables.</li>
+</ul>
+
+The component types of arrays are also counted. Any type that is either a
+supertype or a subtype of the class is not counted.
+
+<a name="CBO"/>
+<h3>Coupling Between Objects - CBO</h3>
+
+When one object or class uses another object or class they are said to be
+coupled. One major source of coupling is that between a superclass and a
+subclass. A coupling is also introduced when a method or field in another
+class is accessed, or when an object of another class is passed into or out
+of a method invocation. Coupling Between Objects is a measure of the
+non-inheritance coupling between two objects.
+<p/>
+A high value of coupling reduces the modularity of the class and makes
+reuse more difficult. The more independent a class is the more likely it is
+that it will be possible to reuse it in another part of the system. When a
+class is coupled to another class it becomes sensitive to changes in that
+class, thereby making maintenance for difficult. In addition, a class that is
+overly dependent on other classes can be difficult to understand and test in
+isolation.
+<p/>
+CBO is defined for classes and interfaces, constructors and methods. It
+counts the number of reference types that are used in:
+<ul>
+<li>field declarations</li>
+<li>formal parameters and return types</li>
+<li>throws declarations</li>
+<li>local variables</li>
+</ul>
+
+It also counts:
+<ul>
+<li>types from which field and method selections are made</li>
+</ul>
+
+The component types of arrays are also counted. Any type that is either a
+supertype or a subtype of the class is not counted.
+
+<a name="LCOM"/>
+<h3>Lack of Cohesion Of Methods - LCOM</h3>
+
+The cohesion of a class is the degree to which its methods are related to
+each other. It is determined by examining the pattern of state variable
+accesses within the set of methods. If all the methods access the same state
+variables then they have high cohesion; if they access disjoint sets of
+variables then the cohesion is low. An extreme example of low cohesion
+would be if none of the methods accessed any of the state variables.
+
+If a class exhibits low method cohesion it indicates that the design of the
+class has probably been partitioned incorrectly, and could benefit by being
+split into more classes with individually higher cohesion. On the other
+hand, a high value of cohesion (a low lack of cohesion) implies that the
+class is well designed. A cohesive class will tend to provide a high degree
+of encapsulation, whereas a lack of cohesion decreases encapsulation and
+increases complexity.
+<p/>
+Another form of cohesion that is useful for Java programs is cohesion
+between nested and enclosing classes. A nested class that has very low
+cohesion with its enclosing class would probably better designed as a peer
+class rather than a nested class.
+<p/>
+LCOM is defined for classes. Operationally, LCOM takes each pair of
+methods in the class and determines the set of fields they each access. If
+they have disjoint sets of field accesses increase the count P by one. If they
+share at least one field access then increase Q by one. After considering
+each pair of methods,
+LCOM = (P > Q) ? (P - Q) : 0
+<p/>
+Indirect access to fields via local methods can be considered by setting a
+metric configuration parameter.
+
+<a name="NOC"/>
+<h3>Number Of Classes - NOC</h3>
+
+The overall size of the system can be estimated by calculating the number
+of classes it contains. A large system with more classes is more complex
+than a smaller one because the number of potential interactions between
+objects is higher. This reduces the comprehensibility of the system which
+in turn makes it harder to test, debug and maintain.
+<p/>
+If the number of classes in the system can be projected during the initial
+design phase of the project it can serve as a base for estimating the total
+effort and cost of developing, debugging and maintaining the system.
+<p/>
+The NOC metric can also usefully be applied at the package and class level
+as well as the total system.
+<p/>
+NOCL is defined for class and interfaces. It counts the number of classes or
+interfaces that are declared. This is usually 1, but nested class declarations
+will increase this number.
+</body>
+</html>
+</xsl:template>
+
+<!-- this is the stylesheet css to use for nearly everything -->
+<xsl:template name="stylesheet.css">
+ .bannercell {
+ border: 0px;
+ padding: 0px;
+ }
+ body {
+ margin-left: 10;
+ margin-right: 10;
+ font:normal 80% arial,helvetica,sanserif;
+ background-color:#FFFFFF;
+ color:#000000;
+ }
+ .a td {
+ background: #efefef;
+ }
+ .b td {
+ background: #fff;
+ }
+ th, td {
+ text-align: left;
+ vertical-align: top;
+ }
+ th {
+ font-weight:bold;
+ background: #ccc;
+ color: black;
+ }
+ table, th, td {
+ font-size:100%;
+ border: none
+ }
+ table.log tr td, tr th {
+
+ }
+ h2 {
+ font-weight:bold;
+ font-size:140%;
+ margin-bottom: 5;
+ }
+ h3 {
+ font-size:100%;
+ font-weight:bold;
+ background: #525D76;
+ color: white;
+ text-decoration: none;
+ padding: 5px;
+ margin-right: 2px;
+ margin-left: 2px;
+ margin-bottom: 0;
+ }
+ .Error {
+ font-weight:bold; color:red;
+ }
+
+</xsl:template>
+
+<!-- print the metrics of the class -->
+<xsl:template match="class" mode="class.details">
+ <!--xsl:variable name="package.name"
select="(ancestor::package)[last()]/@name"/-->
+ <xsl:variable name="package.name" select="@package"/>
+ <HTML>
+ <HEAD>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"
select="$package.name"/>
+ </xsl:call-template>
+ </HEAD>
+ <BODY>
+ <xsl:call-template name="pageHeader"/>
+
+ <H3>Class <xsl:if test="not($package.name = 'unnamed
package')"><xsl:value-of
select="$package.name"/>.</xsl:if><xsl:value-of
select="@name"/></H3>
+ <table class="log" border="0" cellpadding="5"
cellspacing="2" width="100%">
+ <xsl:call-template name="all.metrics.header"/>
+ <xsl:apply-templates select="." mode="print.metrics"/>
+ </table>
+
+ <H3>Methods</H3>
+ <table class="log" border="0" cellpadding="5"
cellspacing="2" width="100%">
+ <xsl:call-template name="method.metrics.header"/>
+ <xsl:apply-templates select="method"
mode="print.metrics"/>
+ </table>
+
+ <xsl:call-template name="pageFooter"/>
+ </BODY>
+ </HTML>
+</xsl:template>
+
+
+<!-- list of classes in a package -->
+<xsl:template match="package" mode="classes.list">
+ <HTML>
+ <HEAD>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name" select="@name"/>
+ </xsl:call-template>
+ </HEAD>
+ <BODY>
+ <table width="100%">
+ <tr>
+ <td nowrap="nowrap">
+ <H2><a href="package-summary.html"
target="classFrame"><xsl:value-of
select="@name"/></a></H2>
+ </td>
+ </tr>
+ </table>
+
+ <H2>Classes</H2>
+ <TABLE WIDTH="100%">
+ <!-- xalan-nodeset:nodeset for Xalan 1.2.2 -->
+ <xsl:for-each select="$doctree/classes/class[@package =
current()/@name]">
+ <xsl:sort select="@name"/>
+ <tr>
+ <td nowrap="nowrap">
+ <a href="{(a)name}.html"
target="classFrame"><xsl:value-of select="@name"/></a>
+ </td>
+ </tr>
+ </xsl:for-each>
+ </TABLE>
+ </BODY>
+ </HTML>
+</xsl:template>
+
+
+<!--
+ Creates an all-classes.html file that contains a link to all package-summary.html
+ on each class.
+-->
+<xsl:template match="metrics" mode="all.classes">
+ <html>
+ <head>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"
select="''"/>
+ </xsl:call-template>
+ </head>
+ <body>
+ <h2>Classes</h2>
+ <table width="100%">
+ <xsl:for-each select="$doctree/classes/class">
+ <xsl:sort select="@name"/>
+ <xsl:apply-templates select="."
mode="all.classes"/>
+ </xsl:for-each>
+ </table>
+ </body>
+ </html>
+</xsl:template>
+
+<xsl:template match="class" mode="all.classes">
+ <xsl:variable name="package.name" select="@package"/>
+ <xsl:variable name="class.name" select="@name"/>
+ <tr>
+ <td nowrap="nowrap">
+ <a target="classFrame">
+ <xsl:attribute name="href">
+ <xsl:if test="not($package.name='unnamed package')">
+ <xsl:value-of
select="translate($package.name,'.','/')"/><xsl:text>/</xsl:text>
+ </xsl:if>
+ <xsl:value-of
select="$class.name"/><xsl:text>.html</xsl:text>
+ </xsl:attribute>
+ <xsl:value-of select="$class.name"/>
+ </a>
+ </td>
+ </tr>
+</xsl:template>
+
+<!--
+ Creates an html file that contains a link to all package-summary.html files on
+ each package existing on testsuites.
+ @bug there will be a problem here, I don't know yet how to handle unnamed package
:(
+-->
+<xsl:template match="metrics" mode="all.packages">
+ <html>
+ <head>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"
select="./package/@name"/>
+ </xsl:call-template>
+ </head>
+ <body>
+ <h2><a href="overview-summary.html"
target="classFrame">Home</a></h2>
+ <h2>Packages</h2>
+ <table width="100%">
+ <xsl:apply-templates select=".//package[not(./@name = 'unnamed
package')]" mode="all.packages">
+ <xsl:sort select="@name"/>
+ </xsl:apply-templates>
+ </table>
+ </body>
+ </html>
+</xsl:template>
+
+<xsl:template match="package" mode="all.packages">
+ <tr>
+ <td nowrap="nowrap">
+ <a
href="{translate((a)name,'.','/')}/package-summary.html"
target="classFrame">
+ <xsl:value-of select="@name"/>
+ </a>
+ </td>
+ </tr>
+</xsl:template>
+
+
+<xsl:template match="metrics" mode="overview.packages">
+ <html>
+ <head>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name"
select="''"/>
+ </xsl:call-template>
+ </head>
+ <body
onload="open('allclasses-frame.html','classListFrame')">
+ <xsl:call-template name="pageHeader"/>
+ <h3>Summary</h3>
+ <table class="log" border="0" cellpadding="5"
cellspacing="2" width="100%">
+ <tr>
+ <th><a
href="metrics-reference.html#V(G)">V(G)</a></th>
+ <th><a
href="metrics-reference.html#LOC">LOC</a></th>
+ <th><a
href="metrics-reference.html#DIT">DIT</a></th>
+ <th><a
href="metrics-reference.html#NOA">NOA</a></th>
+ <th><a
href="metrics-reference.html#NRM">NRM</a></th>
+ <th><a
href="metrics-reference.html#NLM">NLM</a></th>
+ <th><a
href="metrics-reference.html#WMC">WMC</a></th>
+ <th><a
href="metrics-reference.html#RFC">RFC</a></th>
+ <th><a
href="metrics-reference.html#DAC">DAC</a></th>
+ <th><a
href="metrics-reference.html#FANOUT">FANOUT</a></th>
+ <th><a
href="metrics-reference.html#CBO">CBO</a></th>
+ <th><a
href="metrics-reference.html#LCOM">LCOM</a></th>
+ <th><a
href="metrics-reference.html#NOCL">NOCL</a></th>
+ </tr>
+ <xsl:apply-templates select="." mode="print.metrics"/>
+ </table>
+ <table border="0" width="100%">
+ <tr>
+ <td style="text-align: justify;">
+ Note: Metrics evaluate the quality of software by analyzing the program source and
quantifying
+ various kind of complexity. Complexity is a common source of problems and defects in
software.
+ High complexity makes it more difficult to develop, understand, maintain, extend,
test and debug
+ a program.
+ <p/>
+ The primary use of metrics is to focus your attention on those parts of code that
potentially are
+ complexity hot spots. Once the complex areas your program have been uncovered, you
can take remedial
+ actions.
+ For additional information about metrics and their meaning, please consult
+ Metamata Metrics manual.
+ </td>
+ </tr>
+ </table>
+
+ <h3>Packages</h3>
+ <table border="0" cellpadding="5" cellspacing="2"
width="100%">
+ <xsl:call-template name="all.metrics.header"/>
+ <xsl:for-each select=".//package[not(@name = 'unnamed
package')]">
+ <xsl:sort select="@name" order="ascending"/>
+ <xsl:apply-templates select="." mode="print.metrics"/>
+ </xsl:for-each>
+ </table>
+ <!-- @bug there could some classes at this level (classes in unnamed package)
-->
+ <xsl:call-template name="pageFooter"/>
+ </body>
+ </html>
+</xsl:template>
+
+<xsl:template match="package" mode="package.summary">
+ <HTML>
+ <HEAD>
+ <xsl:call-template name="create.stylesheet.link">
+ <xsl:with-param name="package.name" select="@name"/>
+ </xsl:call-template>
+ </HEAD>
+ <body
onload="open('package-frame.html','classListFrame')">
+ <xsl:call-template name="pageHeader"/>
+ <!-- create an anchor to this package name -->
+ <h3>Package <xsl:value-of select="@name"/></h3>
+
+ <table class="log" border="0" cellpadding="5"
cellspacing="2" width="100%">
+ <xsl:call-template name="all.metrics.header"/>
+ <xsl:apply-templates select="." mode="print.metrics"/>
+ </table>
+
+ <table border="0" width="100%">
+ <tr>
+ <td style="text-align: justify;">
+ Note: Metrics evaluate the quality of software by analyzing the program source and
quantifying
+ various kind of complexity. Complexity is a common source of problems and defects
in software.
+ High complexity makes it more difficult to develop, understand, maintain, extend,
test and debug
+ a program.
+ <p/>
+ The primary use of metrics is to focus your attention on those parts of code that
potentially are
+ complexity hot spots. Once the complex areas your program have been uncovered, you
can take remedial
+ actions.
+ For additional information about metrics and their meaning, please consult
+ Metamata Metrics manual.
+ </td>
+ </tr>
+ </table>
+
+ <xsl:variable name="classes-in-package"
select="$doctree/classes/class[@package = current()/@name]"/>
+ <xsl:if test="count($classes-in-package) > 0">
+ <H3>Classes</H3>
+ <table class="log" border="0" cellpadding="5"
cellspacing="2" width="100%">
+ <xsl:call-template name="all.metrics.header"/>
+ <xsl:for-each select="$classes-in-package">
+ <xsl:sort select="@name"/>
+ <xsl:apply-templates select="."
mode="print.metrics"/>
+ </xsl:for-each>
+ </table>
+ </xsl:if>
+
+ <xsl:call-template name="pageFooter"/>
+ </body>
+ </HTML>
+</xsl:template>
+
+
+<!--
+ transform string like a.b.c to ../../../
+ @param path the path to transform into a descending directory path
+-->
+<xsl:template name="path">
+ <xsl:param name="path"/>
+ <xsl:if test="contains($path,'.')">
+ <xsl:text>../</xsl:text>
+ <xsl:call-template name="path">
+ <xsl:with-param name="path"><xsl:value-of
select="substring-after($path,'.')"/></xsl:with-param>
+ </xsl:call-template>
+ </xsl:if>
+ <xsl:if test="not(contains($path,'.')) and not($path =
'')">
+ <xsl:text>../</xsl:text>
+ </xsl:if>
+</xsl:template>
+
+
+<!-- create the link to the stylesheet based on the package name -->
+<xsl:template name="create.stylesheet.link">
+ <xsl:param name="package.name"/>
+ <LINK REL ="stylesheet" TYPE="text/css"
TITLE="Style"><xsl:attribute name="href"><xsl:if
test="not($package.name = 'unnamed package')"><xsl:call-template
name="path"><xsl:with-param name="path"
select="$package.name"/></xsl:call-template></xsl:if>stylesheet.css</xsl:attribute></LINK>
+</xsl:template>
+
+
+<!-- Page Header -->
+<xsl:template name="pageHeader">
+
+ <!-- jakarta logo -->
+ <table border="0" cellpadding="0" cellspacing="0"
width="100%">
+ <tr>
+ <td class="bannercell" rowspan="2">
+ <a
href="http://jakarta.apache.org/">
+ <img
src="http://jakarta.apache.org/images/jakarta-logo.gif"
alt="http://jakarta.apache.org" align="left"
border="0"/>
+ </a>
+ </td>
+ <td style="text-align:right"><h2>Source Code
Metrics</h2></td>
+ </tr>
+ <tr>
+ <td style="text-align:right">Designed for use with <a
href='http://www.webgain.com/products/quality_analyzer/'>Webgain QA/Metamata
Metrics</a> and <a
href='http://jakarta.apache.org'>Ant</a>.</td>
+ </tr>
+ </table>
+ <hr size="1"/>
+</xsl:template>
+
+<!-- Page Footer -->
+<xsl:template name="pageFooter">
+</xsl:template>
+
+<!-- class header -->
+<xsl:template name="all.metrics.header">
+ <tr>
+ <th width="80%">Name</th>
+ <th nowrap="nowrap">V(G)</th>
+ <th>LOC</th>
+ <th>DIT</th>
+ <th>NOA</th>
+ <th>NRM</th>
+ <th>NLM</th>
+ <th>WMC</th>
+ <th>RFC</th>
+ <th>DAC</th>
+ <th>FANOUT</th>
+ <th>CBO</th>
+ <th>LCOM</th>
+ <th>NOCL</th>
+ </tr>
+</xsl:template>
+
+<!-- method header -->
+<xsl:template name="method.metrics.header">
+ <tr>
+ <th width="80%">Name</th>
+ <th nowrap="nowrap">V(G)</th>
+ <th>LOC</th>
+ <th>FANOUT</th>
+ <th>CBO</th>
+ </tr>
+</xsl:template>
+
+<!-- method information -->
+<xsl:template match="method" mode="print.metrics">
+ <tr>
+ <xsl:call-template name="alternate-row"/>
+ <td><xsl:apply-templates select="@name"/></td>
+ <td><xsl:apply-templates select="@vg"/></td>
+ <td><xsl:apply-templates select="@loc"/></td>
+ <td><xsl:apply-templates select="@fanout"/></td>
+ <td><xsl:apply-templates select="@cbo"/></td>
+ </tr>
+</xsl:template>
+
+<!-- class information -->
+<xsl:template match="class" mode="print.metrics">
+ <tr>
+ <xsl:call-template name="alternate-row"/>
+ <td><a href="{@name}.html"><xsl:value-of
select="@name"/></a></td>
+ <td><xsl:apply-templates select="@vg"/></td>
+ <td><xsl:apply-templates select="@loc"/></td>
+ <td><xsl:apply-templates select="@dit"/></td>
+ <td><xsl:apply-templates select="@noa"/></td>
+ <td><xsl:apply-templates select="@nrm"/></td>
+ <td><xsl:apply-templates select="@nlm"/></td>
+ <td><xsl:apply-templates select="@wmc"/></td>
+ <td><xsl:apply-templates select="@rfc"/></td>
+ <td><xsl:apply-templates select="@dac"/></td>
+ <td><xsl:apply-templates select="@fanout"/></td>
+ <td><xsl:apply-templates select="@cbo"/></td>
+ <td><xsl:apply-templates select="@lcom"/></td>
+ <td><xsl:apply-templates select="@nocl"/></td>
+ </tr>
+</xsl:template>
+
+<xsl:template match="file|package" mode="print.metrics">
+ <tr>
+ <xsl:call-template name="alternate-row"/>
+ <td>
+ <a
href="{translate((a)name,'.','/')}/package-summary.html"
target="classFrame">
+ <xsl:value-of select="@name"/>
+ </a>
+ </td>
+ <td><xsl:apply-templates select="@vg"/></td>
+ <td><xsl:apply-templates select="@loc"/></td>
+ <td><xsl:apply-templates select="@dit"/></td>
+ <td><xsl:apply-templates select="@noa"/></td>
+ <td><xsl:apply-templates select="@nrm"/></td>
+ <td><xsl:apply-templates select="@nlm"/></td>
+ <td><xsl:apply-templates select="@wmc"/></td>
+ <td><xsl:apply-templates select="@rfc"/></td>
+ <td><xsl:apply-templates select="@dac"/></td>
+ <td><xsl:apply-templates select="@fanout"/></td>
+ <td><xsl:apply-templates select="@cbo"/></td>
+ <td><xsl:apply-templates select="@lcom"/></td>
+ <td><xsl:apply-templates select="@nocl"/></td>
+ </tr>
+</xsl:template>
+
+<xsl:template match="metrics" mode="print.metrics">
+ <tr>
+ <xsl:call-template name="alternate-row"/>
+ <!-- the global metrics is the top package metrics -->
+ <td><xsl:apply-templates select="./package/@vg"/></td>
+ <td><xsl:apply-templates select="./package/@loc"/></td>
+ <td><xsl:apply-templates select="./package/@dit"/></td>
+ <td><xsl:apply-templates select="./package/@noa"/></td>
+ <td><xsl:apply-templates select="./package/@nrm"/></td>
+ <td><xsl:apply-templates select="./package/@nlm"/></td>
+ <td><xsl:apply-templates select="./package/@wmc"/></td>
+ <td><xsl:apply-templates select="./package/@rfc"/></td>
+ <td><xsl:apply-templates select="./package/@dac"/></td>
+ <td><xsl:apply-templates
select="./package/@fanout"/></td>
+ <td><xsl:apply-templates select="./package/@cbo"/></td>
+ <td><xsl:apply-templates select="./package/@lcom"/></td>
+ <td><xsl:apply-templates select="./package/@nocl"/></td>
+ </tr>
+</xsl:template>
+
+<!-- alternated row style -->
+<xsl:template name="alternate-row">
+<xsl:attribute name="class">
+ <xsl:if test="position() mod 2 = 1">a</xsl:if>
+ <xsl:if test="position() mod 2 = 0">b</xsl:if>
+</xsl:attribute>
+</xsl:template>
+
+
+<!-- how to display the metrics with their max value -->
+<!-- @todo the max values must be external to the xsl -->
+
+ <xsl:template match="@vg">
+ <xsl:call-template name="display-value">
+ <xsl:with-param name="value" select="current()"/>
+ <xsl:with-param name="max" select="$vg.max"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="@loc">
+ <xsl:call-template name="display-value">
+ <xsl:with-param name="value" select="current()"/>
+ <xsl:with-param name="max" select="$loc.max"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="@dit">
+ <xsl:call-template name="display-value">
+ <xsl:with-param name="value" select="current()"/>
+ <xsl:with-param name="max" select="$dit.max"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="@noa">
+ <xsl:call-template name="display-value">
+ <xsl:with-param name="value" select="current()"/>
+ <xsl:with-param name="max" select="$noa.max"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="@nrm">
+ <xsl:call-template name="display-value">
+ <xsl:with-param name="value" select="current()"/>
+ <xsl:with-param name="max" select="$nrm.max"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="@nlm">
+ <xsl:call-template name="display-value">
+ <xsl:with-param name="value" select="current()"/>
+ <xsl:with-param name="max" select="$nlm.max"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="@wmc">
+ <xsl:call-template name="display-value">
+ <xsl:with-param name="value" select="current()"/>
+ <xsl:with-param name="max" select="$wmc.max"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="@rfc">
+ <xsl:call-template name="display-value">
+ <xsl:with-param name="value" select="current()"/>
+ <xsl:with-param name="max" select="$rfc.max"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="@dac">
+ <xsl:call-template name="display-value">
+ <xsl:with-param name="value" select="current()"/>
+ <xsl:with-param name="max" select="$dac.max"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="@fanout">
+ <xsl:call-template name="display-value">
+ <xsl:with-param name="value" select="current()"/>
+ <xsl:with-param name="max" select="$fanout.max"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="@cbo">
+ <xsl:call-template name="display-value">
+ <xsl:with-param name="value" select="current()"/>
+ <xsl:with-param name="max" select="$cbo.max"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="@lcom">
+ <xsl:call-template name="display-value">
+ <xsl:with-param name="value" select="current()"/>
+ <xsl:with-param name="max" select="$lcom.max"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template match="@nocl">
+ <xsl:call-template name="display-value">
+ <xsl:with-param name="value" select="current()"/>
+ <xsl:with-param name="max" select="$nocl.max"/>
+ </xsl:call-template>
+ </xsl:template>
+
+ <xsl:template name="display-value">
+ <xsl:param name="value"/>
+ <xsl:param name="max"/>
+ <xsl:if test="$value > $max">
+ <xsl:attribute name="class">Error</xsl:attribute>
+ </xsl:if>
+ <xsl:value-of select="$value"/>
+ </xsl:template>
+
+</xsl:stylesheet>
+
Property changes on: modules/web/trunk/tools/etc/mmetrics-frames.xsl
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/etc/tagdiff.xsl
===================================================================
--- modules/web/trunk/tools/etc/tagdiff.xsl (rev 0)
+++ modules/web/trunk/tools/etc/tagdiff.xsl 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,178 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+-->
+<!-- a stylesheet to display changelogs ala netbeans -->
+<xsl:stylesheet
+
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ version="1.0">
+ <xsl:param name="title"/>
+ <xsl:param name="module"/>
+ <xsl:param name="cvsweb"/>
+
+ <xsl:output method="html" indent="yes"/>
+
+ <!-- Copy standard document elements. Elements that
+ should be ignored must be filtered by apply-templates
+ tags. -->
+ <xsl:template match="*">
+ <xsl:copy>
+ <xsl:copy-of select="attribute::*[. != '']"/>
+ <xsl:apply-templates/>
+ </xsl:copy>
+ </xsl:template>
+
+ <xsl:template match="tagdiff">
+ <html>
+ <head>
+ <title><xsl:value-of select="$title"/></title>
+ <style type="text/css">
+ body, p {
+ font-family: verdana,arial,helvetica;
+ font-size: 80%;
+ color:#000000;
+ }
+ .dateAndAuthor {
+ font-family: verdana,arial,helvetica;
+ font-size: 80%;
+ font-weight: bold;
+ text-align:left;
+ background:#a6caf0;
+ }
+ tr, td{
+ font-family: verdana,arial,helvetica;
+ font-size: 80%;
+ background:#eeeee0;
+ }
+ </style>
+ </head>
+ <body link="#000000" alink="#000000"
vlink="#000000" text="#000000">
+ <h1>
+ <a name="top"><xsl:value-of
select="$title"/></a>
+ </h1>
+ Tagdiff between <xsl:value-of select="@startTag"/>
<xsl:value-of select="@startDate"/> and
+ <xsl:value-of select="@endTag"/> <xsl:value-of
select="@endDate"/>
+ <p align="right">Designed for use with <a
href="http://ant.apache.org/">Ant</a>.</p>
+ <hr size="2"/>
+ <a name="TOP"/>
+ <table width="100%">
+ <tr>
+ <td align="right">
+ <a href="#New">New Files</a> |
+ <a href="#Modified">Modified Files</a> |
+ <a href="#Removed">Removed Files</a>
+ </td>
+ </tr>
+ </table>
+ <table border="0" width="100%" cellpadding="3"
cellspacing="1">
+ <xsl:call-template name="show-entries">
+ <xsl:with-param name="title">New Files</xsl:with-param>
+ <xsl:with-param name="anchor">New</xsl:with-param>
+ <xsl:with-param name="entries"
select=".//entry[file/revision][not(file/prevrevision)]"/>
+ </xsl:call-template>
+
+ <xsl:call-template name="show-entries">
+ <xsl:with-param name="title">Modified Files</xsl:with-param>
+ <xsl:with-param name="anchor">Modified</xsl:with-param>
+ <xsl:with-param name="entries"
select=".//entry[file/revision][file/prevrevision]"/>
+ </xsl:call-template>
+
+ <!-- change to entries select to address bug #36827 -->
+ <xsl:call-template name="show-entries">
+ <xsl:with-param name="title">Removed Files</xsl:with-param>
+ <xsl:with-param name="anchor">Removed</xsl:with-param>
+ <xsl:with-param name="entries"
select=".//entry[not(file/revision)][file/prevrevision]"/>
+ </xsl:call-template>
+ </table>
+
+ </body>
+ </html>
+ </xsl:template>
+
+ <xsl:template name="show-entries">
+ <xsl:param name="title"/>
+ <xsl:param name="anchor"/>
+ <xsl:param name="entries"/>
+ <tr>
+ <td colspan="2" class="dateAndAuthor">
+ <a>
+ <xsl:attribute name="name"><xsl:value-of
select="$anchor"/></xsl:attribute>
+ <xsl:value-of select="$title"/> - <xsl:value-of
select="count($entries)"/> entries
+ </a>
+ <a href="#TOP">(back to top)</a>
+ </td>
+ </tr>
+ <tr>
+ <td width="20">
+ <xsl:text> </xsl:text>
+ </td>
+ <td>
+ <ul>
+ <xsl:apply-templates select="$entries"/>
+ </ul>
+ </td>
+ </tr>
+ </xsl:template>
+
+ <xsl:template match="entry">
+ <xsl:apply-templates select="file"/>
+ </xsl:template>
+
+ <xsl:template match="date">
+ <i><xsl:value-of select="."/></i>
+ </xsl:template>
+
+ <xsl:template match="time">
+ <i><xsl:value-of select="."/></i>
+ </xsl:template>
+
+ <xsl:template match="author">
+ <i>
+ <a>
+ <xsl:attribute name="href">mailto:<xsl:value-of
select="."/></xsl:attribute>
+ <xsl:value-of select="."/>
+ </a>
+ </i>
+ </xsl:template>
+
+ <xsl:template match="file">
+ <li>
+ <a target="_new">
+ <xsl:attribute name="href"><xsl:value-of
select="$cvsweb"/><xsl:value-of select="$module"
/>/<xsl:value-of select="name" /></xsl:attribute>
+ <xsl:value-of select="name" />
+ </a>
+ <xsl:if test="string-length(prevrevision) > 0 or string-length(revision)
> 0">
+ <xsl:text> </xsl:text>
+ <a target="_new">
+ <xsl:choose>
+ <xsl:when test="string-length(prevrevision) = 0 ">
+ <xsl:attribute name="href"><xsl:value-of
select="$cvsweb"/><xsl:value-of select="$module"
/>/<xsl:value-of select="name" />?rev=<xsl:value-of
select="revision"
/>&content-type=text/x-cvsweb-markup</xsl:attribute>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:attribute name="href"><xsl:value-of
select="$cvsweb"/><xsl:value-of select="$module"
/>/<xsl:value-of select="name" />?r1=<xsl:value-of
select="revision" />&r2=<xsl:value-of
select="prevrevision"/>&diff_format=h</xsl:attribute>
+ </xsl:otherwise>
+ </xsl:choose> (<xsl:value-of select="revision"/>)
+ </a>
+ </xsl:if>
+ </li>
+ </xsl:template>
+
+ <!-- Any elements within a msg are processed,
+ so that we can preserve HTML tags. -->
+ <xsl:template match="msg">
+ <b><xsl:apply-templates/></b>
+ </xsl:template>
+
+</xsl:stylesheet>
Property changes on: modules/web/trunk/tools/etc/tagdiff.xsl
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/examples/build.bat
===================================================================
--- modules/web/trunk/tools/examples/build.bat (rev 0)
+++ modules/web/trunk/tools/examples/build.bat 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,54 @@
+@echo off
+rem
+rem Invokes a script of the same name in the 'tools' module.
+rem
+rem The 'tools' module is expected to be a peer directory of the directory
+rem in which this script lives.
+rem
+rem @author Jason Dillon <jason(a)planet57.com>
+rem
+
+rem $Id: build.bat 21 2005-01-14 23:14:21Z vietj $
+
+setlocal
+
+set PROGNAME=%~nx0
+set DIRNAME=%~dp0
+
+rem Legacy shell support
+if x%PROGNAME%==x set PROGNAME=build.bat
+if x%DIRNAME%==x set DIRNAME=.\
+
+set MODULE_ROOT=%DIRNAME%
+if x%TOOLS_ROOT%==x set TOOLS_ROOT=%DIRNAME%..\tools
+set TARGET=%TOOLS_ROOT%\bin\build.bat
+set ARGS=%*
+
+rem Start'er up yo
+goto main
+
+:debug
+if not x%DEBUG%==x echo %PROGNAME%: %*
+goto :EOF
+
+:main
+call :debug PROGNAME=%PROGNAME%
+call :debug DIRNAME=%DIRNAME%
+call :debug TOOLS_ROOT=%TOOLS_ROOT%
+call :debug TARGET=%TARGET%
+
+if exist %TARGET% call :call-script & goto :EOF
+rem else fail, we can not go on
+
+echo %PROGNAME%: *ERROR* The target executable does not exist:
+echo %PROGNAME%:
+echo %PROGNAME%: %TARGET%
+echo %PROGNAME%:
+echo %PROGNAME%: Please make sure you have checked out the 'tools' module
+echo %PROGNAME%: and make sure it is up to date.
+goto :EOF
+
+:call-script
+call :debug Executing %TARGET% %ARGS%
+call %TARGET% %ARGS%
+goto :EOF
Property changes on: modules/web/trunk/tools/examples/build.bat
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/examples/build.sh
===================================================================
--- modules/web/trunk/tools/examples/build.sh (rev 0)
+++ modules/web/trunk/tools/examples/build.sh 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,49 @@
+#!/bin/sh
+##
+## Invokes a script of the same name in the 'tools' module.
+##
+## The 'tools' module is expected to be a peer directory of the directory
+## in which this script lives.
+##
+## @author Jason Dillon <jason(a)planet57.com>
+##
+
+# $Id: build.sh 21 2005-01-14 23:14:21Z vietj $
+
+PROGNAME=`basename $0`
+DIRNAME=`dirname $0`
+
+# Buss it yo
+main() {
+ if [ "x$TOOLS_ROOT" = "x" ]; then
+ TOOLS_ROOT=`cd $DIRNAME/../tools && pwd`
+ fi
+
+ MODULE_ROOT=`cd $DIRNAME; pwd`
+ export TOOLS_ROOT MODULE_ROOT DEBUG TRACE
+
+ # Where is the target script?
+ target="$TOOLS_ROOT/bin/$PROGNAME"
+ if [ ! -f "$target" ]; then
+ echo "${PROGNAME}: *ERROR* The target executable does not exist:"
+ echo "${PROGNAME}:"
+ echo "${PROGNAME}: $target"
+ echo "${PROGNAME}:"
+ echo "${PROGNAME}: Please make sure you have checked out the 'tools'
module"
+ echo "${PROGNAME}: and make sure it is up to date."
+ exit 2
+ fi
+
+ # Get busy yo!
+ if [ "x$DEBUG" != "x" ]; then
+ echo "${PROGNAME}: Executing: /bin/sh $target $@"
+ fi
+ if [ "x$TRACE" = "x" ]; then
+ exec /bin/sh $target "$@"
+ else
+ exec /bin/sh -x $target "$@"
+ fi
+}
+
+# Lets get ready to rumble!
+main "$@"
Property changes on: modules/web/trunk/tools/examples/build.sh
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/tools/lib/ant-junit.jar
===================================================================
(Binary files differ)
Property changes on: modules/web/trunk/tools/lib/ant-junit.jar
___________________________________________________________________
Name: svn:executable
+
Name: svn:mime-type
+ application/octet-stream
Added: modules/web/trunk/tools/lib/ant-launcher.jar
===================================================================
(Binary files differ)
Property changes on: modules/web/trunk/tools/lib/ant-launcher.jar
___________________________________________________________________
Name: svn:executable
+
Name: svn:mime-type
+ application/octet-stream
Added: modules/web/trunk/tools/lib/ant-nodeps.jar
===================================================================
(Binary files differ)
Property changes on: modules/web/trunk/tools/lib/ant-nodeps.jar
___________________________________________________________________
Name: svn:executable
+
Name: svn:mime-type
+ application/octet-stream
Added: modules/web/trunk/tools/lib/ant.jar
===================================================================
(Binary files differ)
Property changes on: modules/web/trunk/tools/lib/ant.jar
___________________________________________________________________
Name: svn:executable
+
Name: svn:mime-type
+ application/octet-stream
Added: modules/web/trunk/tools/lib/bsf.jar
===================================================================
(Binary files differ)
Property changes on: modules/web/trunk/tools/lib/bsf.jar
___________________________________________________________________
Name: svn:executable
+
Name: svn:mime-type
+ application/octet-stream
Added: modules/web/trunk/tools/lib/buildmagic-tasks.jar
===================================================================
(Binary files differ)
Property changes on: modules/web/trunk/tools/lib/buildmagic-tasks.jar
___________________________________________________________________
Name: svn:executable
+
Name: svn:mime-type
+ application/octet-stream
Added: modules/web/trunk/tools/lib/cargo-core-uberjar-0.8.jar
===================================================================
(Binary files differ)
Property changes on: modules/web/trunk/tools/lib/cargo-core-uberjar-0.8.jar
___________________________________________________________________
Name: svn:executable
+
Name: svn:mime-type
+ application/octet-stream
Added: modules/web/trunk/tools/lib/crimson.jar
===================================================================
(Binary files differ)
Property changes on: modules/web/trunk/tools/lib/crimson.jar
___________________________________________________________________
Name: svn:executable
+
Name: svn:mime-type
+ application/octet-stream
Added: modules/web/trunk/tools/lib/explode.jar
===================================================================
(Binary files differ)
Property changes on: modules/web/trunk/tools/lib/explode.jar
___________________________________________________________________
Name: svn:executable
+
Name: svn:mime-type
+ application/octet-stream
Added: modules/web/trunk/tools/lib/jboss-test.jar
===================================================================
(Binary files differ)
Property changes on: modules/web/trunk/tools/lib/jboss-test.jar
___________________________________________________________________
Name: svn:executable
+
Name: svn:mime-type
+ application/octet-stream
Added: modules/web/trunk/tools/lib/jbossbuild.jar
===================================================================
(Binary files differ)
Property changes on: modules/web/trunk/tools/lib/jbossbuild.jar
___________________________________________________________________
Name: svn:executable
+
Name: svn:mime-type
+ application/octet-stream
Added: modules/web/trunk/tools/lib/junit.jar
===================================================================
(Binary files differ)
Property changes on: modules/web/trunk/tools/lib/junit.jar
___________________________________________________________________
Name: svn:executable
+
Name: svn:mime-type
+ application/octet-stream
Added: modules/web/trunk/tools/lib/saxon.jar
===================================================================
(Binary files differ)
Property changes on: modules/web/trunk/tools/lib/saxon.jar
___________________________________________________________________
Name: svn:executable
+
Name: svn:mime-type
+ application/octet-stream
Added: modules/web/trunk/tools/lib/xalan.jar
===================================================================
(Binary files differ)
Property changes on: modules/web/trunk/tools/lib/xalan.jar
___________________________________________________________________
Name: svn:executable
+
Name: svn:mime-type
+ application/octet-stream
Added: modules/web/trunk/tools/lib/xercesImpl.jar
===================================================================
(Binary files differ)
Property changes on: modules/web/trunk/tools/lib/xercesImpl.jar
___________________________________________________________________
Name: svn:executable
+
Name: svn:mime-type
+ application/octet-stream
Added: modules/web/trunk/tools/lib/xml-apis.jar
===================================================================
(Binary files differ)
Property changes on: modules/web/trunk/tools/lib/xml-apis.jar
___________________________________________________________________
Name: svn:executable
+
Name: svn:mime-type
+ application/octet-stream
Added: modules/web/trunk/tools/src/main/org/jboss/portal/tools/dtd/DTDToDocbook.java
===================================================================
--- modules/web/trunk/tools/src/main/org/jboss/portal/tools/dtd/DTDToDocbook.java
(rev 0)
+++
modules/web/trunk/tools/src/main/org/jboss/portal/tools/dtd/DTDToDocbook.java 2007-08-14
10:47:21 UTC (rev 7913)
@@ -0,0 +1,96 @@
+/******************************************************************************
+ * JBoss, a division of Red Hat *
+ * Copyright 2006, Red Hat Middleware, LLC, and individual *
+ * contributors as indicated by the @authors tag. See the *
+ * copyright.txt in the distribution for a full listing of *
+ * individual contributors. *
+ * *
+ * This is free software; you can redistribute it and/or modify it *
+ * under the terms of the GNU Lesser General Public License as *
+ * published by the Free Software Foundation; either version 2.1 of *
+ * the License, or (at your option) any later version. *
+ * *
+ * This software is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
+ * Lesser General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Lesser General Public *
+ * License along with this software; if not, write to the Free *
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org. *
+ ******************************************************************************/
+package org.jboss.portal.tools.dtd;
+
+import com.wutka.dtd.DTDParser;
+import com.wutka.dtd.DTD;
+import com.wutka.dtd.DTDComment;
+import com.wutka.dtd.DTDElement;
+import com.wutka.dtd.DTDItem;
+import com.wutka.dtd.DTDContainer;
+
+import java.io.Writer;
+import java.io.IOException;
+import java.io.PrintWriter;
+
+/**
+ * @author <a href="mailto:julien@jboss.org">Julien Viet</a>
+ * @version $Revision: 1.1 $
+ */
+public class DTDToDocbook
+{
+
+ /** . */
+ private DTD dtd;
+
+ public DTDToDocbook(DTD dtd)
+ {
+ this.dtd = dtd;
+ }
+
+ public void blah(PrintWriter writer) throws IOException
+ {
+ //
+ writer.println("<itemizedlist>");
+
+ Object[] items = dtd.getItems();
+ Object previous = null;
+ for (int i = 0;i < items.length;i++)
+ {
+ Object item = items[i];
+ if (item instanceof DTDElement)
+ {
+ DTDElement elt = (DTDElement)item;
+
+ writer.println("<listitem>");
+
+ //
+ writer.println("<para>");
+ writer.print("Element <![CDATA[");
+ elt.write(writer);
+ writer.println("]]>");
+ writer.write("</para>");
+
+ //
+ if (previous instanceof DTDComment)
+ {
+ DTDComment comment = (DTDComment)previous;
+
writer.println("<para><programlisting><![CDATA[");
+ writer.print(comment.getText().trim());
+ writer.println("]]></programlisting></para>");
+ }
+
+ writer.write("</listitem>");
+
+ //
+ }
+
+ //
+ previous = item;
+ }
+
+ //
+ writer.println("</itemizedlist>");
+ }
+
+}
Added: modules/web/trunk/tools/src/main/org/jboss/portal/tools/dtd/Test.java
===================================================================
--- modules/web/trunk/tools/src/main/org/jboss/portal/tools/dtd/Test.java
(rev 0)
+++ modules/web/trunk/tools/src/main/org/jboss/portal/tools/dtd/Test.java 2007-08-14
10:47:21 UTC (rev 7913)
@@ -0,0 +1,60 @@
+/******************************************************************************
+ * JBoss, a division of Red Hat *
+ * Copyright 2006, Red Hat Middleware, LLC, and individual *
+ * contributors as indicated by the @authors tag. See the *
+ * copyright.txt in the distribution for a full listing of *
+ * individual contributors. *
+ * *
+ * This is free software; you can redistribute it and/or modify it *
+ * under the terms of the GNU Lesser General Public License as *
+ * published by the Free Software Foundation; either version 2.1 of *
+ * the License, or (at your option) any later version. *
+ * *
+ * This software is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
+ * Lesser General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Lesser General Public *
+ * License along with this software; if not, write to the Free *
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org. *
+ ******************************************************************************/
+package org.jboss.portal.tools.dtd;
+
+import com.wutka.dtd.DTDParser;
+import com.wutka.dtd.DTD;
+
+import java.io.File;
+import java.io.IOException;
+import java.io.PrintWriter;
+import java.io.FileOutputStream;
+import java.io.PrintStream;
+
+/**
+ * @author <a href="mailto:julien@jboss.org">Julien Viet</a>
+ * @version $Revision: 1.1 $
+ */
+public class Test
+{
+
+ public static void main(String[] args) throws IOException
+ {
+ blah("../core/src/resources/portal-core-sar/dtd/jboss-portlet_2_6.dtd",
"output/jboss-portlet_2_6.txt");
+ blah("../core/src/resources/portal-core-sar/dtd/jboss-app_2_6.dtd",
"output/jboss-app_2_6.txt");
+ blah("../core/src/resources/portal-core-sar/dtd/portal-object_2_6.dtd",
"output/portal-object_2_6.txt");
+
blah("../core/src/resources/portal-core-sar/dtd/portlet-instances_2_6.dtd",
"output/portlet-instances_2_6.txt");
+ }
+
+ private static void blah(String src, String dst) throws IOException
+ {
+ File f = new File(src);
+ DTDParser parser = new DTDParser(f);
+ DTD dtd = parser.parse();
+ DTDToDocbook toDocbook = new DTDToDocbook(dtd);
+ FileOutputStream out = new FileOutputStream(dst);
+ PrintWriter writer = new PrintWriter(new PrintStream(out), true);
+ toDocbook.blah(writer);
+ writer.close();
+ }
+}
Added: modules/web/trunk/web/.classpath
===================================================================
--- modules/web/trunk/web/.classpath (rev 0)
+++ modules/web/trunk/web/.classpath 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src/main"/>
+ <classpathentry kind="con"
path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="lib"
path="/thirdparty/sun-servlet/lib/servlet-api.jar"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
Added: modules/web/trunk/web/.project
===================================================================
--- modules/web/trunk/web/.project (rev 0)
+++ modules/web/trunk/web/.project 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>web</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
Added: modules/web/trunk/web/build.bat
===================================================================
--- modules/web/trunk/web/build.bat (rev 0)
+++ modules/web/trunk/web/build.bat 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,54 @@
+@echo off
+rem
+rem Invokes a script of the same name in the 'tools' module.
+rem
+rem The 'tools' module is expected to be a peer directory of the directory
+rem in which this script lives.
+rem
+rem @author Jason Dillon <jason(a)planet57.com>
+rem
+
+rem $Id: build.bat 1140 2005-11-25 23:38:58Z julien $
+
+setlocal
+
+set PROGNAME=%~nx0
+set DIRNAME=%~dp0
+
+rem Legacy shell support
+if x%PROGNAME%==x set PROGNAME=build.bat
+if x%DIRNAME%==x set DIRNAME=.\
+
+set MODULE_ROOT=%DIRNAME%
+if x%TOOLS_ROOT%==x set TOOLS_ROOT=%DIRNAME%..\tools
+set TARGET=%TOOLS_ROOT%\bin\build.bat
+set ARGS=%*
+
+rem Start'er up yo
+goto main
+
+:debug
+if not x%DEBUG%==x echo %PROGNAME%: %*
+goto :EOF
+
+:main
+call :debug PROGNAME=%PROGNAME%
+call :debug DIRNAME=%DIRNAME%
+call :debug TOOLS_ROOT=%TOOLS_ROOT%
+call :debug TARGET=%TARGET%
+
+if exist %TARGET% call :call-script & goto :EOF
+rem else fail, we can not go on
+
+echo %PROGNAME%: *ERROR* The target executable does not exist:
+echo %PROGNAME%:
+echo %PROGNAME%: %TARGET%
+echo %PROGNAME%:
+echo %PROGNAME%: Please make sure you have checked out the 'tools' module
+echo %PROGNAME%: and make sure it is up to date.
+goto :EOF
+
+:call-script
+call :debug Executing %TARGET% %ARGS%
+call %TARGET% %ARGS%
+goto :EOF
Property changes on: modules/web/trunk/web/build.bat
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/web/build.sh
===================================================================
--- modules/web/trunk/web/build.sh (rev 0)
+++ modules/web/trunk/web/build.sh 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,49 @@
+#!/bin/sh
+##
+## Invokes a script of the same name in the 'tools' module.
+##
+## The 'tools' module is expected to be a peer directory of the directory
+## in which this script lives.
+##
+## @author Jason Dillon <jason(a)planet57.com>
+##
+
+# $Id: build.sh 1140 2005-11-25 23:38:58Z julien $
+
+PROGNAME=`basename $0`
+DIRNAME=`dirname $0`
+
+# Buss it yo
+main() {
+ if [ "x$TOOLS_ROOT" = "x" ]; then
+ TOOLS_ROOT=`cd $DIRNAME/../tools && pwd`
+ fi
+
+ MODULE_ROOT=`cd $DIRNAME; pwd`
+ export TOOLS_ROOT MODULE_ROOT DEBUG TRACE
+
+ # Where is the target script?
+ target="$TOOLS_ROOT/bin/$PROGNAME"
+ if [ ! -f "$target" ]; then
+ echo "${PROGNAME}: *ERROR* The target executable does not exist:"
+ echo "${PROGNAME}:"
+ echo "${PROGNAME}: $target"
+ echo "${PROGNAME}:"
+ echo "${PROGNAME}: Please make sure you have checked out the 'tools'
module"
+ echo "${PROGNAME}: and make sure it is up to date."
+ exit 2
+ fi
+
+ # Get busy yo!
+ if [ "x$DEBUG" != "x" ]; then
+ echo "${PROGNAME}: Executing: /bin/sh $target $@"
+ fi
+ if [ "x$TRACE" = "x" ]; then
+ exec /bin/sh $target "$@"
+ else
+ exec /bin/sh -x $target "$@"
+ fi
+}
+
+# Lets get ready to rumble!
+main "$@"
Property changes on: modules/web/trunk/web/build.sh
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/web/build.xml
===================================================================
--- modules/web/trunk/web/build.xml (rev 0)
+++ modules/web/trunk/web/build.xml 2007-08-14 10:47:21 UTC (rev 7913)
@@ -0,0 +1,188 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ ~ JBoss, a division of Red Hat ~
+ ~ Copyright 2006, Red Hat Middleware, LLC, and individual ~
+ ~ contributors as indicated by the @authors tag. See the ~
+ ~ copyright.txt in the distribution for a full listing of ~
+ ~ individual contributors. ~
+ ~ ~
+ ~ This is free software; you can redistribute it and/or modify it ~
+ ~ under the terms of the GNU Lesser General Public License as ~
+ ~ published by the Free Software Foundation; either version 2.1 of ~
+ ~ the License, or (at your option) any later version. ~
+ ~ ~
+ ~ This software is distributed in the hope that it will be useful, ~
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of ~
+ ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ~
+ ~ Lesser General Public License for more details. ~
+ ~ ~
+ ~ You should have received a copy of the GNU Lesser General Public ~
+ ~ License along with this software; if not, write to the Free ~
+ ~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA ~
+ ~ 02110-1301 USA, or see the FSF site:
http://www.fsf.org. ~
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->
+
+<!DOCTYPE project [
+ <!ENTITY libraries SYSTEM "../thirdparty/libraries.ent">
+ <!ENTITY buildmagic SYSTEM
"../tools/etc/buildfragments/buildmagic.ent">
+ <!ENTITY tools SYSTEM "../tools/etc/buildfragments/tools.ent">
+ <!ENTITY modules SYSTEM "../tools/etc/buildfragments/modules.ent">
+ <!ENTITY defaults SYSTEM
"../tools/etc/buildfragments/defaults.ent">
+ <!ENTITY targets SYSTEM "../tools/etc/buildfragments/targets.ent">
+ ]>
+
+<!-- $Id: build.xml 5448 2006-10-13 19:29:17Z chris.laprun(a)jboss.com $ -->
+
+<!--+======================================================================+-->
+<!--| JBoss Portal (The OpenSource Portal) Build File |-->
+<!--| |-->
+<!--| Distributable under LGPL license. |-->
+<!--| See terms of license at
http://www.gnu.org. |-->
+<!--| |-->
+<!--| This file has been designed to work with the 'tools' module and
|-->
+<!--| Buildmagic extentions. |-->
+<!--+======================================================================+-->
+
+<project default="main" name="JBoss Portal">
+
+ <!--+====================================================================+-->
+ <!--| Setup |-->
+ <!--| |-->
+ <!--| Include the common build elements. |-->
+ <!--| |-->
+ <!--| This defines several different targets, properties and paths. |-->
+ <!--| It also sets up the basic extention tasks amoung other things. |-->
+ <!--+====================================================================+-->
+
+ &buildmagic;
+ &modules;
+ &defaults;
+ &tools;
+ &targets;
+
+ <!-- ================================================================== -->
+ <!-- Initialization -->
+ <!-- ================================================================== -->
+
+ <!--
+ | Initialize the build system. Must depend on '_buildmagic:init'.
+ | Other targets should depend on 'init' or things will mysteriously fail.
+ -->
+
+ <target name="init" unless="init.disable"
depends="_buildmagic:init">
+ </target>
+
+ <!--+====================================================================+-->
+ <!--| Configuration |-->
+ <!--| |-->
+ <!--| This target is invoked by the Buildmagic initialization logic |-->
+ <!--| and should contain module specific configuration elements. |-->
+ <!--+====================================================================+-->
+
+ <target name="configure" unless="configure.disable">
+
+ <!-- Configure some properties -->
+ <property name="jboss-junit-configuration" value=""/>
+ <property name="junit.formatter.usefile" value="true"/>
+
+ <!-- Configure thirdparty libraries -->
+ &libraries;
+ <path id="library.classpath">
+ <path refid="jboss.portal/modules/common.classpath"/>
+ <path refid="sun.servlet.classpath"/>
+ <path refid="apache.log4j.classpath"/>
+ <path refid="junit.junit.classpath"/>
+ </path>
+
+ <!-- Configure modules -->
+ <call target="configure-modules"/>
+ <path id="dependentmodule.classpath">
+ </path>
+
+ <!--+=======================================+-->
+ <!--| Override any default properties here. |-->
+ <!--+=======================================+-->
+
+ <!-- Configure defaults & build tools -->
+ <call target="configure-defaults"/>
+ <call target="configure-tools"/>
+
+ <!--+=======================================+-->
+ <!--| Define module specific elements here. |-->
+ <!--+=======================================+-->
+ <property name="javadoc.private" value="true"/>
+ <property name="javadoc.protected" value="false"/>
+
+ </target>
+
+ <!--+====================================================================+-->
+ <!--| Compile |-->
+ <!--| |-->
+ <!--| This target should depend on other compile-* targets for each |-->
+ <!--| different type of compile that needs to be performed, short of |-->
+ <!--| documentation compiles. |-->
+ <!--+====================================================================+-->
+
+ <target name="compile"
+ description="Compile all source files."
+ depends="_default:compile-classes,
+ _default:compile-etc,
+ _default:compile-resources">
+ <!-- Add module specific elements here. -->
+ </target>
+
+ <!--+====================================================================+-->
+ <!--| Generate Output |-->
+ <!--| |-->
+ <!--| Generates the target output for this module. Target output is |-->
+ <!--| the output which is ment to be released or used by external |-->
+ <!--| modules. |-->
+ <!--+====================================================================+-->
+
+ <target name="output"
+ description="Generate all target output."
+ depends="compile">
+ <mkdir dir="${build.lib}"/>
+
+ <!-- portal-web.jar -->
+ <jar jarfile="${build.lib}/portal-web-lib.jar">
+ <fileset dir="${build.classes}"/>
+ </jar>
+
+ </target>
+
+ <!-- ================================================================== -->
+ <!-- Cleaning -->
+ <!-- ================================================================== -->
+
+ <!-- Clean up all build output -->
+ <target name="clean" depends="_default:clean">
+ <!-- Add module specific elements here. -->
+ </target>
+
+ <!--+====================================================================+-->
+ <!--| Documents |-->
+ <!--| |-->
+ <!--| Generate all documentation for this module. |-->
+ <!--+====================================================================+-->
+
+ <target name="docs" depends="_default:docs">
+ <!-- Add module specific elements here. -->
+ </target>
+
+ <!-- ================================================================== -->
+ <!-- Misc. -->
+ <!-- ================================================================== -->
+
+ <target name="main" depends="most"/>
+ <target name="all" depends="_default:all"/>
+ <target name="most" depends="_default:most"/>
+ <target name="help" depends="_default:help"/>
+
+ <!-- ================================================================== -->
+ <!-- Deployment -->
+ <!-- ================================================================== -->
+
+ <target name="package-tests"/>
+
+</project>
Property changes on: modules/web/trunk/web/build.xml
___________________________________________________________________
Name: svn:executable
+
Added: modules/web/trunk/web/src/main/org/jboss/portal/web/RequestDispatchCallback.java
===================================================================
--- modules/web/trunk/web/src/main/org/jboss/portal/web/RequestDispatchCallback.java
(rev 0)
+++
modules/web/trunk/web/src/main/org/jboss/portal/web/RequestDispatchCallback.java 2007-08-14
10:47:21 UTC (rev 7913)
@@ -0,0 +1,51 @@
+/******************************************************************************
+ * JBoss, a division of Red Hat *
+ * Copyright 2006, Red Hat Middleware, LLC, and individual *
+ * contributors as indicated by the @authors tag. See the *
+ * copyright.txt in the distribution for a full listing of *
+ * individual contributors. *
+ * *
+ * This is free software; you can redistribute it and/or modify it *
+ * under the terms of the GNU Lesser General Public License as *
+ * published by the Free Software Foundation; either version 2.1 of *
+ * the License, or (at your option) any later version. *
+ * *
+ * This software is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
+ * Lesser General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Lesser General Public *
+ * License along with this software; if not, write to the Free *
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org. *
+ ******************************************************************************/
+package org.jboss.portal.web;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.ServletContext;
+
+/**
+ * Callback contract.
+ *
+ * @author <a href="mailto:julien@jboss.org">Julien Viet</a>
+ * @version $Revision: 1.1 $
+ */
+public interface RequestDispatchCallback
+{
+ /**
+ * Called by the runtime context when request dispatching has been done.
+ *
+ * @param dispatchedServletContext the dispatched servlet context
+ * @param dispatchedRequest the dispatched request
+ * @param dispatchedResponse the dispatched response
+ * @param handback the handback object provided to the dispatched @return any object
+ * @throws Exception any exception
+ */
+ Object doCallback(
+ ServletContext dispatchedServletContext,
+ HttpServletRequest dispatchedRequest,
+ HttpServletResponse dispatchedResponse,
+ Object handback) throws Exception;
+}
Added: modules/web/trunk/web/src/main/org/jboss/portal/web/ServletContextDispatcher.java
===================================================================
--- modules/web/trunk/web/src/main/org/jboss/portal/web/ServletContextDispatcher.java
(rev 0)
+++
modules/web/trunk/web/src/main/org/jboss/portal/web/ServletContextDispatcher.java 2007-08-14
10:47:21 UTC (rev 7913)
@@ -0,0 +1,76 @@
+/******************************************************************************
+ * JBoss, a division of Red Hat *
+ * Copyright 2006, Red Hat Middleware, LLC, and individual *
+ * contributors as indicated by the @authors tag. See the *
+ * copyright.txt in the distribution for a full listing of *
+ * individual contributors. *
+ * *
+ * This is free software; you can redistribute it and/or modify it *
+ * under the terms of the GNU Lesser General Public License as *
+ * published by the Free Software Foundation; either version 2.1 of *
+ * the License, or (at your option) any later version. *
+ * *
+ * This software is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
+ * Lesser General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Lesser General Public *
+ * License along with this software; if not, write to the Free *
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org. *
+ ******************************************************************************/
+package org.jboss.portal.web;
+
+import org.jboss.portal.web.spi.ServletContainerContext;
+
+import javax.servlet.ServletContext;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+/**
+ * Encapsulate dispatching functionnality into a single class so it is easy to
+ * pass it as an argment to a framework that neeeds a dispatcher to just a
+ * servlet context and does not care about the underlying spi or request/response.
+ *
+ * @author <a href="mailto:julien@jboss.org">Julien Viet</a>
+ * @version $Revision: 1.1 $
+ */
+public class ServletContextDispatcher
+{
+
+ /** . */
+ private final HttpServletRequest request;
+
+ /** . */
+ private final HttpServletResponse response;
+
+ /** . */
+ private final ServletContainerContext containerContext;
+
+ public ServletContextDispatcher(HttpServletRequest request, HttpServletResponse
response, ServletContainerContext containerContext)
+ {
+ this.request = request;
+ this.response = response;
+ this.containerContext = containerContext;
+ }
+
+ public HttpServletRequest getRequest()
+ {
+ return request;
+ }
+
+ public HttpServletResponse getResponse()
+ {
+ return response;
+ }
+
+ public Object include(
+ ServletContext targetServletContext,
+ RequestDispatchCallback callback,
+ Object handback) throws Exception
+ {
+ return containerContext.include(targetServletContext, request, response, callback,
handback);
+ }
+
+}
Added:
modules/web/trunk/web/src/main/org/jboss/portal/web/spi/ServletContainerContext.java
===================================================================
--- modules/web/trunk/web/src/main/org/jboss/portal/web/spi/ServletContainerContext.java
(rev 0)
+++
modules/web/trunk/web/src/main/org/jboss/portal/web/spi/ServletContainerContext.java 2007-08-14
10:47:21 UTC (rev 7913)
@@ -0,0 +1,55 @@
+/******************************************************************************
+ * JBoss, a division of Red Hat *
+ * Copyright 2006, Red Hat Middleware, LLC, and individual *
+ * contributors as indicated by the @authors tag. See the *
+ * copyright.txt in the distribution for a full listing of *
+ * individual contributors. *
+ * *
+ * This is free software; you can redistribute it and/or modify it *
+ * under the terms of the GNU Lesser General Public License as *
+ * published by the Free Software Foundation; either version 2.1 of *
+ * the License, or (at your option) any later version. *
+ * *
+ * This software is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
+ * Lesser General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU Lesser General Public *
+ * License along with this software; if not, write to the Free *
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA *
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org. *
+ ******************************************************************************/
+package org.jboss.portal.web.spi;
+
+import org.jboss.portal.web.RequestDispatchCallback;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.ServletContext;
+
+/**
+ * Defines the service provider interface that a servlet container offers.
+ *
+ * @author <a href="mailto:julien@jboss.org">Julien Viet</a>
+ * @version $Revision: 1.1 $
+ */
+public interface ServletContainerContext
+{
+ /**
+ * Generic detyped request dispatch to a servlet context using the include mechanism.
+ *
+ * @param targetServletContext the target servlet context to dispatch to
+ * @param request the request valid in the current servlet context
+ * @param response the response valid in the current servlet context
+ * @param callback the callback to perform after the dispatch operation
+ * @param handback the handback object to provide
+ * @return any object
+ * @throws Exception any exception
+ */
+ Object include(
+ ServletContext targetServletContext, HttpServletRequest request,
+ HttpServletResponse response,
+ RequestDispatchCallback callback,
+ Object handback) throws Exception;
+}