You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jetspeed-dev@portals.apache.org by ta...@apache.org on 2007/01/04 07:31:49 UTC
svn commit: r492423 [2/5] - in /portals/jetspeed-2/trunk: components/
components/portal/ components/portal/src/test/org/apache/jetspeed/aggregator/
components/registry/
components/security/src/java/org/apache/jetspeed/security/impl/
components/serializ...
Added: portals/jetspeed-2/trunk/etc/build-with-DDLUTILS.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/trunk/etc/build-with-DDLUTILS.xml?view=auto&rev=492423
==============================================================================
--- portals/jetspeed-2/trunk/etc/build-with-DDLUTILS.xml (added)
+++ portals/jetspeed-2/trunk/etc/build-with-DDLUTILS.xml Wed Jan 3 22:31:48 2007
@@ -0,0 +1,1759 @@
+<!--
+THIS IS A COPY OF DDL UTILS PATCH APPLIED, and the actual PATCH included below
+(unfortunately the patch is all or nothing)
+This code is not ready for production usage and requires more thorough testing
+I would like to keep the patch around for when I have more time to investigate the issues
+PLEASE CONTACT taylor@apache.org for more information
+-->
+
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright 2006 The Apache Software Foundation
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+ $Id:$
+-->
+<project name="etc" default="help">
+
+ <!-- Properties -->
+
+ <property name="org.apache.jetspeed.database.enable" value="true"/>
+ <property name="org.apache.jetspeed.database.skip" value="false"/>
+ <property name="org.apache.jetspeed.database.default.name" value=""/>
+ <property name="org.apache.jetspeed.database.url" value=""/>
+ <property name="org.apache.jetspeed.database.jdbc.drivers.path" value=""/>
+ <property name="org.apache.jetspeed.database.driver" value=""/>
+ <property name="org.apache.jetspeed.database.user" value=""/>
+ <property name="org.apache.jetspeed.database.password" value=""/>
+ <property name="org.apache.derby.version" value=""/>
+ <property name="ant.version" value=""/>
+ <property name="hsqldb.version" value=""/>
+ <property name="project.root" value=""/>
+ <property name="portlet-api.version" value=""/>
+
+ <property name="org.apache.jetspeed.source.sql" value="${basedir}/sql"/>
+ <property name="org.apache.jetspeed.database.source.sql" value="${org.apache.jetspeed.source.sql}/${org.apache.jetspeed.database.default.name}"/>
+ <property name="org.apache.jetspeed.database.target.sql.root" value="${basedir}/target/sql"/>
+ <property name="org.apache.jetspeed.database.target.sql" value="${org.apache.jetspeed.database.target.sql.root}/${org.apache.jetspeed.database.default.name}"/>
+
+ <property name="torque.contextProperties" value=""/>
+ <property name="torque.runOnlyOnSchemaChange" value="true"/>
+ <property name="torque.idTableXMLFile" value=""/>
+ <property name="torque.project" value="phase1"/>
+ <property name="torque.schema.dir" value="${basedir}/schema"/>
+ <property name="torque.schema.sql.excludes" value=""/>
+ <property name="torque.schema.sql.includes" value="*-schema.xml"/>
+ <property name="torque.template.sql" value="sql/base/Control.vm"/>
+ <property name="torque.templatePath" value=""/>
+ <property name="torque.useClasspath" value="true"/>
+ <property name="torque.sql.dir" value="${org.apache.jetspeed.database.target.sql}/schema"/>
+ <property name="org.apache.jetspeed.deploy.groupid" value=""/>
+ <property name="org.apache.jetspeed.deploy.artifactid" value=""/>
+ <property name="org.apache.jetspeed.deploy.version" value=""/>
+
+
+ <!-- Usage -->
+
+ <target name="help">
+ <echo message="Buildfile for the etc maven POM."/>
+ <echo message="Usage: ant [ clean-schema | schema | populate-db ]"/>
+ <echo message="Where:"/>
+ <echo message=" clean-schema - clean schemas for all databases."/>
+ <echo message=" schema - build schema for database if not already built."/>
+ <echo message=" populate-db - build and minimally populate database instance."/>
+ <echo message="Configuration:"/>
+ <echo message=" org.apache.jetspeed.database.enable=${org.apache.jetspeed.database.enable}"/>
+ <echo message=" org.apache.jetspeed.database.skip=${org.apache.jetspeed.database.skip}"/>
+ <echo message=" org.apache.jetspeed.database.default.name=${org.apache.jetspeed.database.default.name}"/>
+ <echo message=" org.apache.jetspeed.database.url=${org.apache.jetspeed.database.url}"/>
+ <echo message=" org.apache.jetspeed.database.jdbc.drivers.path=${org.apache.jetspeed.database.jdbc.drivers.path}"/>
+ <echo message=" org.apache.jetspeed.database.driver=${org.apache.jetspeed.database.driver}"/>
+ <echo message=" org.apache.jetspeed.database.user=${org.apache.jetspeed.database.user}"/>
+ <echo message=" org.apache.jetspeed.database.password=${org.apache.jetspeed.database.password}"/>
+ <echo message=" org.apache.derby.version=${org.apache.derby.version}"/>
+ <echo message=" ant.version=${ant.version}"/>
+ <echo message=" hsqldb.version=${hsqldb.version}"/>
+ </target>
+
+ <!-- Additional Task Definitions -->
+
+ <taskdef name="torque-sql" classname="org.apache.torque.task.TorqueSQLTask"/>
+ <taskdef resource="org/apache/maven/artifact/ant/antlib.xml"/>
+
+ <!-- Schema Generation -->
+
+ <target name="clean-schema">
+
+ <!-- clean target directories -->
+ <delete dir="${org.apache.jetspeed.database.target.sql.root}"/>
+
+ </target>
+
+ <target name="schema" depends="test-database-default-name, test-database-filter-drops, test-database-target-sql"
+ unless="org.apache.jetspeed.database.target.sql.exists">
+
+ <!-- make target directory -->
+ <mkdir dir="${org.apache.jetspeed.database.target.sql}"/>
+
+ <!-- copy general sql -->
+ <copy todir="${org.apache.jetspeed.database.target.sql}" overwrite="on" verbose="on" failonerror="off">
+ <fileset dir="${org.apache.jetspeed.source.sql}">
+ <include name="*.sql"/>
+ </fileset>
+ </copy>
+
+
+ <!-- conditionally generate sql using torque schema -->
+ <antcall target="schema-mssql"/>
+ <antcall target="schema-mysql"/>
+ <antcall target="schema-oracle"/>
+ <antcall target="schema-hsql"/>
+ <antcall target="schema-postgres"/>
+ <antcall target="schema-sapdb"/>
+ <antcall target="schema-derby"/>
+
+ <!-- conditionally filter generated schema -->
+ <antcall target="schema-filter-drops"/>
+
+ <!-- copy custom/override generated sql -->
+ <copy todir="${org.apache.jetspeed.database.target.sql}" overwrite="on" verbose="on" failonerror="off">
+ <fileset dir="${org.apache.jetspeed.database.source.sql}">
+ <include name="**/*.sql"/>
+ <exclude name="**/*populate.sql"/>
+ </fileset>
+ </copy>
+
+ </target>
+
+ <target name="test-database-default-name">
+ <condition property="org.apache.jetspeed.database.is.mssql">
+ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="mssql"/>
+ </condition>
+ <condition property="org.apache.jetspeed.database.is.mysql">
+ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="mysql"/>
+ </condition>
+ <condition property="org.apache.jetspeed.database.is.oracle">
+ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="oracle"/>
+ </condition>
+ <condition property="org.apache.jetspeed.database.is.db2">
+ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="db2"/>
+ </condition>
+ <condition property="org.apache.jetspeed.database.is.hsql">
+ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="hsql"/>
+ </condition>
+ <condition property="org.apache.jetspeed.database.is.postgres">
+ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="postgres"/>
+ </condition>
+ <condition property="org.apache.jetspeed.database.is.sapdb">
+ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="sapdb"/>
+ </condition>
+ <condition property="org.apache.jetspeed.database.is.derby">
+ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="derby"/>
+ </condition>
+ </target>
+
+ <target name="test-database-filter-drops">
+ <condition property="org.apache.jetspeed.database.filter.drops">
+ <or>
+ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="oracle"/>
+ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="postgres"/>
+ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="sapdb"/>
+ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="derby"/>
+ </or>
+ </condition>
+ </target>
+
+ <target name="test-database-target-sql">
+ <available file="${org.apache.jetspeed.database.target.sql}"
+ property="org.apache.jetspeed.database.target.sql.exists"/>
+ </target>
+
+ <target name="schema-mssql" if="org.apache.jetspeed.database.is.mssql">
+ <antcall target="torque-gen">
+ <param name="torque.database" value="mssql"/>
+ </antcall>
+ </target>
+
+ <target name="schema-mysql" if="org.apache.jetspeed.database.is.mysql">
+ <antcall target="torque-gen">
+ <param name="torque.database" value="mysql"/>
+ </antcall>
+ </target>
+
+ <target name="schema-oracle" if="org.apache.jetspeed.database.is.oracle">
+ <antcall target="torque-gen">
+ <param name="torque.database" value="oracle"/>
+ </antcall>
+ </target>
+
+ <target name="schema-db2" if="org.apache.jetspeed.database.is.db2">
+ <antcall target="torque-gen">
+ <param name="torque.database" value="db2"/>
+ </antcall>
+ </target>
+
+ <target name="schema-hsql" if="org.apache.jetspeed.database.is.hsql">
+ <antcall target="torque-gen">
+ <param name="torque.database" value="hypersonic"/>
+ </antcall>
+ </target>
+
+ <target name="schema-postgres" if="org.apache.jetspeed.database.is.postgres">
+ <antcall target="torque-gen">
+ <param name="torque.database" value="postgresql"/>
+ </antcall>
+ </target>
+
+ <target name="schema-sapdb" if="org.apache.jetspeed.database.is.sapdb">
+ <antcall target="torque-gen">
+ <param name="torque.database" value="sapdb"/>
+ </antcall>
+ </target>
+
+ <target name="schema-derby" if="org.apache.jetspeed.database.is.derby">
+ <antcall target="torque-gen">
+ <param name="torque.database" value="derby"/>
+ </antcall>
+ </target>
+
+ <target name="schema-filter-drops" if="org.apache.jetspeed.database.filter.drops">
+
+ <!-- comment out drops in schema scripts -->
+ <replaceregexp match="^\s*(drop)" flags="i" byline="on" replace="-- \1">
+ <fileset dir="${org.apache.jetspeed.database.target.sql}/schema">
+ <include name="*.sql"/>
+ </fileset>
+ </replaceregexp>
+
+ </target>
+
+ <!-- Torque targets taken from build-torque.xml in the Torque Generator distribution -->
+
+ <target name="check-use-classpath">
+ <condition property="torque.internal.useClasspath">
+ <equals arg1="${torque.useClasspath}" arg2="true"/>
+ </condition>
+ </target>
+
+ <target name="check-run-only-on-schema-change">
+ <condition property="torque.internal.runOnlyOnSchemaChange">
+ <equals arg1="${torque.runOnlyOnSchemaChange}" arg2="true"/>
+ </condition>
+ </target>
+
+ <target name="sql-check" depends="check-run-only-on-schema-change" if="torque.internal.runOnlyOnSchemaChange">
+ <uptodate property="torque.internal.sql.uptodate" targetfile="${torque.sql.dir}/${torque.project}-schema.sql">
+ <srcfiles dir="${torque.schema.dir}" includes="**/*-schema.xml" />
+ </uptodate>
+ </target>
+
+ <target name="torque-gen" depends="check-use-classpath, sql-check" unless="torque.internal.sql.uptodate">
+ <antcall target="sql-classpath"/>
+ <antcall target="sql-template"/>
+ </target>
+
+ <target name="sql-classpath" if="torque.internal.useClasspath">
+ <torque-sql contextProperties="${torque.contextProperties}"
+ controlTemplate="${torque.template.sql}"
+ idTableXMLFile="${torque.idTableXMLFile}"
+ outputDirectory="${torque.sql.dir}"
+ outputFile="report.${torque.project}.sql.generation"
+ sqldbmap="${torque.sql.dir}/sqldb.map"
+ targetDatabase="${torque.database}"
+ useClasspath="${torque.useClasspath}">
+ <fileset dir="${torque.schema.dir}"
+ includes="${torque.schema.sql.includes}"
+ excludes="${torque.schema.sql.excludes}"/>
+ </torque-sql>
+ </target>
+
+ <target name="sql-template" unless="torque.internal.useClasspath">
+ <torque-sql contextProperties="${torque.contextProperties}"
+ controlTemplate="${torque.template.sql}"
+ idTableXMLFile="${torque.idTableXMLFile}"
+ outputDirectory="${torque.sql.dir}"
+ outputFile="report.${torque.project}.sql.generation"
+ sqldbmap="${torque.sql.dir}/sqldb.map"
+ targetDatabase="${torque.database}"
+ templatePath="${torque.templatePath}">
+ <fileset dir="${torque.schema.dir}"
+ includes="${torque.schema.sql.includes}"
+ excludes="${torque.schema.sql.excludes}"/>
+ </torque-sql>
+ </target>
+
+ <!-- Populate Database -->
+
+ <target name="populate-db" depends="test-populate-skip" unless="org.apache.jetspeed.skip">
+
+ <echo message="IN POPULATE"/>
+
+
+ <!-- execute drop scripts -->
+<!-- <antcall target="sql-execute" inheritall="on" inheritrefs="on">
+ <param name="database.arg.scripts.dir" value="${org.apache.jetspeed.database.target.sql}"/>
+ <param name="database.arg.scripts" value="drop.sql"/>
+ <param name="database.arg.onerror" value="continue"/>
+ </antcall>
+
+ <echo message ="SCRIPTS DROPPED" />
+
+-->
+ <!-- execute schema scripts -->
+<!-- <antcall target="sql-execute" inheritall="on" inheritrefs="on">
+ <param name="database.arg.scripts.dir" value="${org.apache.jetspeed.database.target.sql}/schema"/>
+ <param name="database.arg.scripts" value="*.sql"/>
+ <param name="database.arg.onerror" value="abort"/>
+ </antcall>
+
+ <echo message ="SCHEMA EXECUTED" />
+-->
+
+ <!-- execute new seed scripts -->
+ <antcall target="populate-seed-data" inheritall="on" inheritrefs="on">
+ </antcall>
+ <echo message ="SEED CALLED" />
+
+ </target>
+
+ <target name="populate-db-userinfo" depends="populate-db" unless="org.apache.jetspeed.skip">
+ <echo message ="populate-db-userinfo : deprecated" />
+ </target>
+
+ <!-- SQL Execution -->
+
+ <target name="sql-execute" depends="sql-test-database-classpath, sql-execute-drivers-path, sql-execute-derby, sql-execute-hsql"/>
+
+ <target name="sql-test-database-classpath">
+ <condition property="org.apache.jetspeed.database.use.drivers.path">
+ <and>
+ <not><equals arg1="${org.apache.jetspeed.database.jdbc.drivers.path}" arg2=""/></not>
+ <not><equals arg1="${org.apache.jetspeed.database.default.name}" arg2="derby"/></not>
+ <not><equals arg1="${org.apache.jetspeed.database.default.name}" arg2="hsql"/></not>
+ </and>
+ </condition>
+ <condition property="org.apache.jetspeed.database.is.derby.embedded">
+ <and>
+ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="derby"/>
+ <equals arg1="${org.apache.jetspeed.database.jdbc.drivers.path}" arg2=""/>
+ </and>
+ </condition>
+ <condition property="org.apache.jetspeed.database.is.hsql.embedded">
+ <and>
+ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="hsql"/>
+ <equals arg1="${org.apache.jetspeed.database.jdbc.drivers.path}" arg2=""/>
+ </and>
+ </condition>
+ </target>
+
+ <target name="sql-execute-drivers-path" if="org.apache.jetspeed.database.use.drivers.path">
+ <sql url="${org.apache.jetspeed.database.url}"
+ classpath="${org.apache.jetspeed.database.jdbc.drivers.path}" driver="${org.apache.jetspeed.database.driver}"
+ userid="${org.apache.jetspeed.database.user}" password="${org.apache.jetspeed.database.password}"
+ onerror="${database.arg.onerror}">
+ <fileset dir="${database.arg.scripts.dir}">
+ <include name="${database.arg.scripts}"/>
+ </fileset>
+ </sql>
+ </target>
+
+ <target name="sql-execute-derby" if="org.apache.jetspeed.database.is.derby.embedded">
+ <!--
+ Because tests may be executed in forked JVM processes
+ following the execution of this task, the Derby database
+ operations must also be executed in a forked ant task.
+ This is done to prevent the main Maven build process, (in
+ which this Ant build is running), from locking the Derby
+ database instance in its JVM context and this preventing
+ the subsequent test database access in forked JVMs.
+ -->
+ <!-- write out temporary ant build file for forked execution -->
+ <echo file="${basedir}/derby-sql-build.xml">
+ <project name="etc-derby-sql-build">
+ <target name="forked-sql-execute-derby">
+ <sql url="${org.apache.jetspeed.database.url};create=true" driver="${org.apache.jetspeed.database.driver}"
+ userid="${org.apache.jetspeed.database.user}" password="${org.apache.jetspeed.database.password}"
+ onerror="${database.arg.onerror}">
+ <fileset dir="${database.arg.scripts.dir}">
+ <include name="${database.arg.scripts}"/>
+ </fileset>
+ </sql>
+ </target>
+ </project>
+ </echo>
+ <!-- get derby and ant dependencies for fork -->
+ <dependencies filesetId="derby.embedded.db.dependencies.id" useScope="runtime">
+ <dependency groupId="org.apache.derby"
+ artifactId="derby"
+ version="${org.apache.derby.version}"/>
+ </dependencies>
+ <dependencies filesetId="ant.dependencies.id" useScope="runtime">
+ <dependency groupId="ant"
+ artifactId="ant"
+ version="${ant.version}"/>
+ <dependency groupId="ant"
+ artifactId="ant-launcher"
+ version="${ant.version}"/>
+ </dependencies>
+ <!-- fork and execute temporary ant build file -->
+ <java classname="org.apache.tools.ant.Main" fork="on" append="on" failonerror="on" dir="${basedir}">
+ <classpath>
+ <fileset refid="ant.dependencies.id"/>
+ <fileset refid="derby.embedded.db.dependencies.id"/>
+ </classpath>
+ <arg line="-f ${basedir}/derby-sql-build.xml forked-sql-execute-derby"/>
+ </java>
+ <!-- cleanup temporary ant build file -->
+ <delete file="${basedir}/derby-sql-build.xml"/>
+ </target>
+
+ <target name="sql-execute-hsql" if="org.apache.jetspeed.database.is.hsql.embedded">
+ <!--
+ Because tests may be executed in forked JVM processes
+ following the execution of this task, the HSQLDB database
+ must be shutdown when access is complete. The 'shutdown=true'
+ option should appear on the connection url to ensure this
+ behavior here and for the tests. This is done to prevent
+ the main Maven build process, (in which this Ant build is
+ running), from locking the HSQLDB database instance in its
+ JVM context and this preventing the subsequent test database
+ access in forked JVMs.
+ -->
+ <!-- execute specified sql scripts -->
+ <dependencies filesetId="hsql.embedded.db.dependencies.id" useScope="runtime">
+ <dependency groupId="hsqldb"
+ artifactId="hsqldb"
+ version="${hsqldb.version}"/>
+ </dependencies>
+ <sql url="${org.apache.jetspeed.database.url}" driver="${org.apache.jetspeed.database.driver}"
+ userid="${org.apache.jetspeed.database.user}" password="${org.apache.jetspeed.database.password}"
+ onerror="${database.arg.onerror}">
+ <classpath>
+ <fileset refid="hsql.embedded.db.dependencies.id"/>
+ </classpath>
+ <fileset dir="${database.arg.scripts.dir}">
+ <include name="${database.arg.scripts}"/>
+ </fileset>
+ </sql>
+ </target>
+
+ <!-- Utilities -->
+
+ <target name="test-populate-skip">
+ <condition property="org.apache.jetspeed.skip">
+ <or>
+ <equals arg1="${org.apache.jetspeed.database.skip}" arg2="true"/>
+ <not>
+ <equals arg1="${org.apache.jetspeed.database.enable}" arg2="true"/>
+ </not>
+ </or>
+ </condition>
+ </target>
+
+ <target name="generate-schema" depends="test-populate-skip" unless="org.apache.jetspeed.skip">
+ <echo message = "called generate schema with directory ${project.root} " />
+ <!-- prepare a classes directory with resources and libraries to execute import -->
+ <delete dir="${project.root}/target/schema"/>
+ <mkdir dir="${project.root}/target/schema"/>
+ <mkdir dir="${project.root}/target/schema/data"/>
+
+ <!-- copy schema -->
+ <copy todir="${project.root}/target/schema" overwrite="on" verbose="on" failonerror="off">
+ <fileset dir="${torque.schema.dir}"
+ includes="${torque.schema.sql.includes}"
+ excludes="${torque.schema.sql.excludes}"/>
+ </copy>
+
+ <!-- construct ddl serializer component classpath -->
+ <dependencies filesetId="serializer-id" useScope="test">
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-api"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-commons"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-components"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-cm"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-rdbms"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-capability"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-security"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-serializer"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-profiler"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="tyrex"
+ artifactId="tyrex"
+ version="1.0.1"/>
+ <dependency groupId="commons-collections"
+ artifactId="commons-collections"
+ version="3.1"/>
+
+ <dependency groupId="commons-beanutils"
+ artifactId="commons-beanutils"
+ version="1.6.1"/>
+ <dependency groupId="commons-betwixt"
+ artifactId="commons-betwixt"
+ version="20061115"/>
+ <dependency groupId="javolution"
+ artifactId="javolution"
+ version="4.0.2"/>
+ <dependency groupId="ddlutils"
+ artifactId="ddlutils"
+ version="1.0-RC1-PATCHED"/>
+
+
+ </dependencies>
+
+ <!-- create sysproperty set to configure import utility -->
+ <propertyset id="import.syspropertyset.id">
+ <propertyref name="org.apache.jetspeed.database.driver"/>
+ <propertyref name="org.apache.jetspeed.database.url"/>
+ <propertyref name="org.apache.jetspeed.database.user"/>
+ <propertyref name="org.apache.jetspeed.database.password"/>
+ </propertyset>
+ <echo message="calling ddl serializer with datafile= ${org.apache.jetspeed.database.target.sql} -b ${temp.assembly.dir}/boot/ -c ${temp.assembly.dir}/ -dc ${org.apache.jetspeed.database.driver} -ds ${org.apache.jetspeed.database.url} -du ${org.apache.jetspeed.database.user} -dp ${org.apache.jetspeed.database.password}" />
+
+ <!-- execute import utility within the page manager component -->
+ <java classname="org.apache.jetspeed.serializer.JetspeedDDLApplication" fork="on" append="on" dir="${basedir}">
+ <classpath>
+<!-- <fileset refid="maven.dependency.classpath"/>
+-->
+ <fileset refid="serializer-id"/>
+ <pathelement path="${org.apache.jetspeed.database.jdbc.drivers.path}"/>
+ <pathelement path="${project.root}/etc/log4j/log4j.properties"/>
+ </classpath>
+ <arg line="-I ${project.root}/target/schema -R -s order.xml -dc ${org.apache.jetspeed.database.driver} -ds ${org.apache.jetspeed.database.url} -du ${org.apache.jetspeed.database.user} -dp ${org.apache.jetspeed.database.password} -dn ${org.apache.jetspeed.database.default.name}"/>
+ </java>
+ </target>
+
+ <target name="populate-seed-data">
+ <echo message = "called seed data with directory ${project.root} " />
+ <!-- prepare a classes directory with resources and libraries to execute import -->
+ <delete dir="${project.root}/target/seed"/>
+ <mkdir dir="${project.root}/target/seed"/>
+ <mkdir dir="${project.root}/target/seed/data"/>
+
+ <!-- copy seed -->
+ <copy todir="${project.root}/target/seed/data" overwrite="on" verbose="on" failonerror="off">
+ <fileset dir="${org.apache.jetspeed.source.sql}">
+ <include name="*seed.xml"/>
+ </fileset>
+ </copy>
+
+
+
+
+
+ <mkdir dir="${project.root}/target/seed/classes"/>
+ <copy todir="${project.root}/target/seed/classes" flatten="on">
+ <fileset dir="${project.root}/etc" >
+ <include name="log4j/log4j.properties"/>
+ <include name="db-ojb/*"/>
+ </fileset>
+ </copy>
+ <!-- prepare spring assemblies (TODO: why not use a Spring classpath loader?) -->
+ <property name="temp.assembly.dir" value="${project.root}/target/seed/assembly/"/>
+ <mkdir dir="${temp.assembly.dir}"/>
+ <echo message="Running Jetspeed Seed Importer with -b ${temp.assembly.dir}/boot/ -c ${temp.assembly.dir}/ "/>
+ <copy todir="${temp.assembly.dir}" overwrite="true" failonerror="true">
+ <fileset dir="${project.root}/src/webapp/WEB-INF/assembly">
+ <include name="security*.xml"/>
+ <include name="capabilities.xml"/>
+ <include name="prefs.xml"/>
+ <include name="profiler.xml"/>
+ <include name="transaction.xml"/>
+ </fileset>
+ </copy>
+ <mkdir dir="${temp.assembly.dir}/boot/"/>
+ <copy todir="${temp.assembly.dir}/boot/" overwrite="true" failonerror="true">
+ <fileset dir="${project.root}/src/webapp/WEB-INF/assembly/boot">
+ <include name="*.xml"/>
+ </fileset>
+ </copy>
+
+
+ <!-- construct serializer component classpath -->
+ <dependencies filesetId="serializer-id" useScope="test">
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-api"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-commons"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-components"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-cm"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-rdbms"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-capability"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-security"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-serializer"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
+ artifactId="jetspeed-profiler"
+ version="${org.apache.jetspeed.deploy.version}"/>
+ <dependency groupId="portlet-api"
+ artifactId="portlet-api"
+ version="${portlet-api.version}"/>
+
+ <dependency groupId="tyrex"
+ artifactId="tyrex"
+ version="1.0.1"/>
+ </dependencies>
+
+ <!-- create sysproperty set to configure import utility -->
+ <propertyset id="import.syspropertyset.id">
+ <propertyref name="org.apache.jetspeed.database.driver"/>
+ <propertyref name="org.apache.jetspeed.database.url"/>
+ <propertyref name="org.apache.jetspeed.database.user"/>
+ <propertyref name="org.apache.jetspeed.database.password"/>
+ </propertyset>
+ <echo message="calling serializer with data in ${project.root}/target/seed/data , assembly and b oot:${temp.assembly.dir}/ database:-dc ${org.apache.jetspeed.database.driver} -ds ${org.apache.jetspeed.database.url} -du ${org.apache.jetspeed.database.user} -dp ${org.apache.jetspeed.database.password}" />
+
+ <!-- execute import utility within the page manager component -->
+ <java classname="org.apache.jetspeed.serializer.JetspeedSerializerApplication" fork="on" append="on" dir="${basedir}">
+ <classpath>
+<!-- <fileset refid="maven.dependency.classpath"/>
+-->
+ <fileset refid="serializer-id"/>
+ <pathelement path="${org.apache.jetspeed.database.jdbc.drivers.path}"/>
+ <pathelement path="${project.root}/target/seed/classes"/>
+ </classpath>
+ <arg line="-I ${project.root}/target/seed/data -b ${temp.assembly.dir}/boot/ -c ${temp.assembly.dir}/ -dc ${org.apache.jetspeed.database.driver} -ds ${org.apache.jetspeed.database.url} -du ${org.apache.jetspeed.database.user} -dp ${org.apache.jetspeed.database.password}"/>
+ </java>
+
+ </target>
+
+
+</project>
+
+<!-- patch -->
+Index: etc/build.xml
+===================================================================
+--- etc/build.xml (revision 485018)
++++ etc/build.xml (working copy)
+@@ -1,440 +1,652 @@
+-<?xml version="1.0" encoding="UTF-8"?>
+-<!--
+-Copyright 2006 The Apache Software Foundation
+-
+-Licensed under the Apache License, Version 2.0 (the "License");
+-you may not use this file except in compliance with the License.
+-You may obtain a copy of the License at
+-
+- http://www.apache.org/licenses/LICENSE-2.0
+-
+-Unless required by applicable law or agreed to in writing, software
+-distributed under the License is distributed on an "AS IS" BASIS,
+-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+-See the License for the specific language governing permissions and
+-limitations under the License.
+-
+- $Id:$
+--->
+-<project name="etc" default="help">
+-
+- <!-- Properties -->
+-
+- <property name="org.apache.jetspeed.database.enable" value="true"/>
+- <property name="org.apache.jetspeed.database.skip" value="false"/>
+- <property name="org.apache.jetspeed.database.default.name" value=""/>
+- <property name="org.apache.jetspeed.database.url" value=""/>
+- <property name="org.apache.jetspeed.database.jdbc.drivers.path" value=""/>
+- <property name="org.apache.jetspeed.database.driver" value=""/>
+- <property name="org.apache.jetspeed.database.user" value=""/>
+- <property name="org.apache.jetspeed.database.password" value=""/>
+- <property name="org.apache.derby.version" value=""/>
+- <property name="ant.version" value=""/>
+- <property name="hsqldb.version" value=""/>
+-
+- <property name="org.apache.jetspeed.source.sql" value="${basedir}/sql"/>
+- <property name="org.apache.jetspeed.database.source.sql" value="${org.apache.jetspeed.source.sql}/${org.apache.jetspeed.database.default.name}"/>
+- <property name="org.apache.jetspeed.database.target.sql.root" value="${basedir}/target/sql"/>
+- <property name="org.apache.jetspeed.database.target.sql" value="${org.apache.jetspeed.database.target.sql.root}/${org.apache.jetspeed.database.default.name}"/>
+-
+- <property name="torque.contextProperties" value=""/>
+- <property name="torque.runOnlyOnSchemaChange" value="true"/>
+- <property name="torque.idTableXMLFile" value=""/>
+- <property name="torque.project" value="phase1"/>
+- <property name="torque.schema.dir" value="${basedir}/schema"/>
+- <property name="torque.schema.sql.excludes" value=""/>
+- <property name="torque.schema.sql.includes" value="*-schema.xml"/>
+- <property name="torque.template.sql" value="sql/base/Control.vm"/>
+- <property name="torque.templatePath" value=""/>
+- <property name="torque.useClasspath" value="true"/>
+- <property name="torque.sql.dir" value="${org.apache.jetspeed.database.target.sql}/schema"/>
+-
+- <!-- Usage -->
+-
+- <target name="help">
+- <echo message="Buildfile for the etc maven POM."/>
+- <echo message="Usage: ant [ clean-schema | schema | populate-db | populate-db-userinfo ]"/>
+- <echo message="Where:"/>
+- <echo message=" clean-schema - clean schemas for all databases."/>
+- <echo message=" schema - build schema for database if not already built."/>
+- <echo message=" populate-db - build and minimally populate database instance."/>
+- <echo message=" populate-db-userinfo - build and populate database instance with default users."/>
+- <echo message="Configuration:"/>
+- <echo message=" org.apache.jetspeed.database.enable=${org.apache.jetspeed.database.enable}"/>
+- <echo message=" org.apache.jetspeed.database.skip=${org.apache.jetspeed.database.skip}"/>
+- <echo message=" org.apache.jetspeed.database.default.name=${org.apache.jetspeed.database.default.name}"/>
+- <echo message=" org.apache.jetspeed.database.url=${org.apache.jetspeed.database.url}"/>
+- <echo message=" org.apache.jetspeed.database.jdbc.drivers.path=${org.apache.jetspeed.database.jdbc.drivers.path}"/>
+- <echo message=" org.apache.jetspeed.database.driver=${org.apache.jetspeed.database.driver}"/>
+- <echo message=" org.apache.jetspeed.database.user=${org.apache.jetspeed.database.user}"/>
+- <echo message=" org.apache.jetspeed.database.password=${org.apache.jetspeed.database.password}"/>
+- <echo message=" org.apache.derby.version=${org.apache.derby.version}"/>
+- <echo message=" ant.version=${ant.version}"/>
+- <echo message=" hsqldb.version=${hsqldb.version}"/>
+- </target>
+-
+- <!-- Additional Task Definitions -->
+-
+- <taskdef name="torque-sql" classname="org.apache.torque.task.TorqueSQLTask"/>
+- <taskdef resource="org/apache/maven/artifact/ant/antlib.xml"/>
+-
+- <!-- Schema Generation -->
+-
+- <target name="clean-schema">
+-
+- <!-- clean target directories -->
+- <delete dir="${org.apache.jetspeed.database.target.sql.root}"/>
+-
+- </target>
+-
+- <target name="schema" depends="test-database-default-name, test-database-filter-drops, test-database-target-sql"
+- unless="org.apache.jetspeed.database.target.sql.exists">
+-
+- <!-- make target directory -->
+- <mkdir dir="${org.apache.jetspeed.database.target.sql}"/>
+-
+- <!-- copy general sql -->
+- <copy todir="${org.apache.jetspeed.database.target.sql}" overwrite="on" verbose="on" failonerror="off">
+- <fileset dir="${org.apache.jetspeed.source.sql}">
+- <include name="*.sql"/>
+- </fileset>
+- </copy>
+-
+- <!-- conditionally generate sql using torque schema -->
+- <antcall target="schema-mssql"/>
+- <antcall target="schema-mysql"/>
+- <antcall target="schema-oracle"/>
+- <antcall target="schema-hsql"/>
+- <antcall target="schema-postgres"/>
+- <antcall target="schema-sapdb"/>
+- <antcall target="schema-derby"/>
+-
+- <!-- conditionally filter generated schema -->
+- <antcall target="schema-filter-drops"/>
+-
+- <!-- copy custom/override generated sql -->
+- <copy todir="${org.apache.jetspeed.database.target.sql}" overwrite="on" verbose="on" failonerror="off">
+- <fileset dir="${org.apache.jetspeed.database.source.sql}">
+- <include name="**/*.sql"/>
+- </fileset>
+- </copy>
+-
+- </target>
+-
+- <target name="test-database-default-name">
+- <condition property="org.apache.jetspeed.database.is.mssql">
+- <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="mssql"/>
+- </condition>
+- <condition property="org.apache.jetspeed.database.is.mysql">
+- <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="mysql"/>
+- </condition>
+- <condition property="org.apache.jetspeed.database.is.oracle">
+- <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="oracle"/>
+- </condition>
+- <condition property="org.apache.jetspeed.database.is.hsql">
+- <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="hsql"/>
+- </condition>
+- <condition property="org.apache.jetspeed.database.is.postgres">
+- <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="postgres"/>
+- </condition>
+- <condition property="org.apache.jetspeed.database.is.sapdb">
+- <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="sapdb"/>
+- </condition>
+- <condition property="org.apache.jetspeed.database.is.derby">
+- <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="derby"/>
+- </condition>
+- </target>
+-
+- <target name="test-database-filter-drops">
+- <condition property="org.apache.jetspeed.database.filter.drops">
+- <or>
+- <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="oracle"/>
+- <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="postgres"/>
+- <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="sapdb"/>
+- <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="derby"/>
+- </or>
+- </condition>
+- </target>
+-
+- <target name="test-database-target-sql">
+- <available file="${org.apache.jetspeed.database.target.sql}"
+- property="org.apache.jetspeed.database.target.sql.exists"/>
+- </target>
+-
+- <target name="schema-mssql" if="org.apache.jetspeed.database.is.mssql">
+- <antcall target="torque-gen">
+- <param name="torque.database" value="mssql"/>
+- </antcall>
+- </target>
+-
+- <target name="schema-mysql" if="org.apache.jetspeed.database.is.mysql">
+- <antcall target="torque-gen">
+- <param name="torque.database" value="mysql"/>
+- </antcall>
+- </target>
+-
+- <target name="schema-oracle" if="org.apache.jetspeed.database.is.oracle">
+- <antcall target="torque-gen">
+- <param name="torque.database" value="oracle"/>
+- </antcall>
+- </target>
+-
+- <target name="schema-hsql" if="org.apache.jetspeed.database.is.hsql">
+- <antcall target="torque-gen">
+- <param name="torque.database" value="hypersonic"/>
+- </antcall>
+- </target>
+-
+- <target name="schema-postgres" if="org.apache.jetspeed.database.is.postgres">
+- <antcall target="torque-gen">
+- <param name="torque.database" value="postgresql"/>
+- </antcall>
+- </target>
+-
+- <target name="schema-sapdb" if="org.apache.jetspeed.database.is.sapdb">
+- <antcall target="torque-gen">
+- <param name="torque.database" value="sapdb"/>
+- </antcall>
+- </target>
+-
+- <target name="schema-derby" if="org.apache.jetspeed.database.is.derby">
+- <antcall target="torque-gen">
+- <param name="torque.database" value="derby"/>
+- </antcall>
+- </target>
+-
+- <target name="schema-filter-drops" if="org.apache.jetspeed.database.filter.drops">
+-
+- <!-- comment out drops in schema scripts -->
+- <replaceregexp match="^\s*(drop)" flags="i" byline="on" replace="-- \1">
+- <fileset dir="${org.apache.jetspeed.database.target.sql}/schema">
+- <include name="*.sql"/>
+- </fileset>
+- </replaceregexp>
+-
+- </target>
+-
+- <!-- Torque targets taken from build-torque.xml in the Torque Generator distribution -->
+-
+- <target name="check-use-classpath">
+- <condition property="torque.internal.useClasspath">
+- <equals arg1="${torque.useClasspath}" arg2="true"/>
+- </condition>
+- </target>
+-
+- <target name="check-run-only-on-schema-change">
+- <condition property="torque.internal.runOnlyOnSchemaChange">
+- <equals arg1="${torque.runOnlyOnSchemaChange}" arg2="true"/>
+- </condition>
+- </target>
+-
+- <target name="sql-check" depends="check-run-only-on-schema-change" if="torque.internal.runOnlyOnSchemaChange">
+- <uptodate property="torque.internal.sql.uptodate" targetfile="${torque.sql.dir}/${torque.project}-schema.sql">
+- <srcfiles dir="${torque.schema.dir}" includes="**/*-schema.xml" />
+- </uptodate>
+- </target>
+-
+- <target name="torque-gen" depends="check-use-classpath, sql-check" unless="torque.internal.sql.uptodate">
+- <antcall target="sql-classpath"/>
+- <antcall target="sql-template"/>
+- </target>
+-
+- <target name="sql-classpath" if="torque.internal.useClasspath">
+- <torque-sql contextProperties="${torque.contextProperties}"
+- controlTemplate="${torque.template.sql}"
+- idTableXMLFile="${torque.idTableXMLFile}"
+- outputDirectory="${torque.sql.dir}"
+- outputFile="report.${torque.project}.sql.generation"
+- sqldbmap="${torque.sql.dir}/sqldb.map"
+- targetDatabase="${torque.database}"
+- useClasspath="${torque.useClasspath}">
+- <fileset dir="${torque.schema.dir}"
+- includes="${torque.schema.sql.includes}"
+- excludes="${torque.schema.sql.excludes}"/>
+- </torque-sql>
+- </target>
+-
+- <target name="sql-template" unless="torque.internal.useClasspath">
+- <torque-sql contextProperties="${torque.contextProperties}"
+- controlTemplate="${torque.template.sql}"
+- idTableXMLFile="${torque.idTableXMLFile}"
+- outputDirectory="${torque.sql.dir}"
+- outputFile="report.${torque.project}.sql.generation"
+- sqldbmap="${torque.sql.dir}/sqldb.map"
+- targetDatabase="${torque.database}"
+- templatePath="${torque.templatePath}">
+- <fileset dir="${torque.schema.dir}"
+- includes="${torque.schema.sql.includes}"
+- excludes="${torque.schema.sql.excludes}"/>
+- </torque-sql>
+- </target>
+-
+- <!-- Populate Database -->
+-
+- <target name="populate-db" depends="test-populate-skip" unless="org.apache.jetspeed.skip">
+-
+- <!-- execute drop scripts -->
+- <antcall target="sql-execute" inheritall="on" inheritrefs="on">
+- <param name="database.arg.scripts.dir" value="${org.apache.jetspeed.database.target.sql}"/>
+- <param name="database.arg.scripts" value="drop.sql"/>
+- <param name="database.arg.onerror" value="continue"/>
+- </antcall>
+-
+- <!-- execute schema scripts -->
+- <antcall target="sql-execute" inheritall="on" inheritrefs="on">
+- <param name="database.arg.scripts.dir" value="${org.apache.jetspeed.database.target.sql}/schema"/>
+- <param name="database.arg.scripts" value="*.sql"/>
+- <param name="database.arg.onerror" value="abort"/>
+- </antcall>
+-
+- <!-- execute default population scripts -->
+- <antcall target="sql-execute" inheritall="on" inheritrefs="on">
+- <param name="database.arg.scripts.dir" value="${org.apache.jetspeed.database.target.sql}"/>
+- <param name="database.arg.scripts" value="populate-db-default.sql"/>
+- <param name="database.arg.onerror" value="abort"/>
+- </antcall>
+-
+- </target>
+-
+- <target name="populate-db-userinfo" depends="populate-db" unless="org.apache.jetspeed.skip">
+-
+- <!-- execute default userinfo population scripts -->
+- <antcall target="sql-execute" inheritall="on" inheritrefs="on">
+- <param name="database.arg.scripts.dir" value="${org.apache.jetspeed.database.target.sql}"/>
+- <param name="database.arg.scripts" value="populate-userinfo-for-default-psml.sql"/>
+- <param name="database.arg.onerror" value="abort"/>
+- </antcall>
+-
+- </target>
+-
+- <!-- SQL Execution -->
+-
+- <target name="sql-execute" depends="sql-test-database-classpath, sql-execute-drivers-path, sql-execute-derby, sql-execute-hsql"/>
+-
+- <target name="sql-test-database-classpath">
+- <condition property="org.apache.jetspeed.database.use.drivers.path">
+- <and>
+- <not><equals arg1="${org.apache.jetspeed.database.jdbc.drivers.path}" arg2=""/></not>
+- <not><equals arg1="${org.apache.jetspeed.database.default.name}" arg2="derby"/></not>
+- <not><equals arg1="${org.apache.jetspeed.database.default.name}" arg2="hsql"/></not>
+- </and>
+- </condition>
+- <condition property="org.apache.jetspeed.database.is.derby.embedded">
+- <and>
+- <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="derby"/>
+- <equals arg1="${org.apache.jetspeed.database.jdbc.drivers.path}" arg2=""/>
+- </and>
+- </condition>
+- <condition property="org.apache.jetspeed.database.is.hsql.embedded">
+- <and>
+- <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="hsql"/>
+- <equals arg1="${org.apache.jetspeed.database.jdbc.drivers.path}" arg2=""/>
+- </and>
+- </condition>
+- </target>
+-
+- <target name="sql-execute-drivers-path" if="org.apache.jetspeed.database.use.drivers.path">
+- <sql url="${org.apache.jetspeed.database.url}"
+- classpath="${org.apache.jetspeed.database.jdbc.drivers.path}" driver="${org.apache.jetspeed.database.driver}"
+- userid="${org.apache.jetspeed.database.user}" password="${org.apache.jetspeed.database.password}"
+- onerror="${database.arg.onerror}">
+- <fileset dir="${database.arg.scripts.dir}">
+- <include name="${database.arg.scripts}"/>
+- </fileset>
+- </sql>
+- </target>
+-
+- <target name="sql-execute-derby" if="org.apache.jetspeed.database.is.derby.embedded">
+- <!--
+- Because tests may be executed in forked JVM processes
+- following the execution of this task, the Derby database
+- operations must also be executed in a forked ant task.
+- This is done to prevent the main Maven build process, (in
+- which this Ant build is running), from locking the Derby
+- database instance in its JVM context and this preventing
+- the subsequent test database access in forked JVMs.
+- -->
+- <!-- write out temporary ant build file for forked execution -->
+- <echo file="${basedir}/derby-sql-build.xml">
+- <project name="etc-derby-sql-build">
+- <target name="forked-sql-execute-derby">
+- <sql url="${org.apache.jetspeed.database.url};create=true" driver="${org.apache.jetspeed.database.driver}"
+- userid="${org.apache.jetspeed.database.user}" password="${org.apache.jetspeed.database.password}"
+- onerror="${database.arg.onerror}">
+- <fileset dir="${database.arg.scripts.dir}">
+- <include name="${database.arg.scripts}"/>
+- </fileset>
+- </sql>
+- </target>
+- </project>
+- </echo>
+- <!-- get derby and ant dependencies for fork -->
+- <dependencies filesetId="derby.embedded.db.dependencies.id" useScope="runtime">
+- <dependency groupId="org.apache.derby"
+- artifactId="derby"
+- version="${org.apache.derby.version}"/>
+- </dependencies>
+- <dependencies filesetId="ant.dependencies.id" useScope="runtime">
+- <dependency groupId="ant"
+- artifactId="ant"
+- version="${ant.version}"/>
+- <dependency groupId="ant"
+- artifactId="ant-launcher"
+- version="${ant.version}"/>
+- </dependencies>
+- <!-- fork and execute temporary ant build file -->
+- <java classname="org.apache.tools.ant.Main" fork="on" append="on" failonerror="on" dir="${basedir}">
+- <classpath>
+- <fileset refid="ant.dependencies.id"/>
+- <fileset refid="derby.embedded.db.dependencies.id"/>
+- </classpath>
+- <arg line="-f ${basedir}/derby-sql-build.xml forked-sql-execute-derby"/>
+- </java>
+- <!-- cleanup temporary ant build file -->
+- <delete file="${basedir}/derby-sql-build.xml"/>
+- </target>
+-
+- <target name="sql-execute-hsql" if="org.apache.jetspeed.database.is.hsql.embedded">
+- <!--
+- Because tests may be executed in forked JVM processes
+- following the execution of this task, the HSQLDB database
+- must be shutdown when access is complete. The 'shutdown=true'
+- option should appear on the connection url to ensure this
+- behavior here and for the tests. This is done to prevent
+- the main Maven build process, (in which this Ant build is
+- running), from locking the HSQLDB database instance in its
+- JVM context and this preventing the subsequent test database
+- access in forked JVMs.
+- -->
+- <!-- execute specified sql scripts -->
+- <dependencies filesetId="hsql.embedded.db.dependencies.id" useScope="runtime">
+- <dependency groupId="hsqldb"
+- artifactId="hsqldb"
+- version="${hsqldb.version}"/>
+- </dependencies>
+- <sql url="${org.apache.jetspeed.database.url}" driver="${org.apache.jetspeed.database.driver}"
+- userid="${org.apache.jetspeed.database.user}" password="${org.apache.jetspeed.database.password}"
+- onerror="${database.arg.onerror}">
+- <classpath>
+- <fileset refid="hsql.embedded.db.dependencies.id"/>
+- </classpath>
+- <fileset dir="${database.arg.scripts.dir}">
+- <include name="${database.arg.scripts}"/>
+- </fileset>
+- </sql>
+- </target>
+-
+- <!-- Utilities -->
+-
+- <target name="test-populate-skip">
+- <condition property="org.apache.jetspeed.skip">
+- <or>
+- <equals arg1="${org.apache.jetspeed.database.skip}" arg2="true"/>
+- <not>
+- <equals arg1="${org.apache.jetspeed.database.enable}" arg2="true"/>
+- </not>
+- </or>
+- </condition>
+- </target>
+-
+-</project>
++<?xml version="1.0" encoding="UTF-8"?>
++<!--
++Copyright 2006 The Apache Software Foundation
++
++Licensed under the Apache License, Version 2.0 (the "License");
++you may not use this file except in compliance with the License.
++You may obtain a copy of the License at
++
++ http://www.apache.org/licenses/LICENSE-2.0
++
++Unless required by applicable law or agreed to in writing, software
++distributed under the License is distributed on an "AS IS" BASIS,
++WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
++See the License for the specific language governing permissions and
++limitations under the License.
++
++ $Id:$
++-->
++<project name="etc" default="help">
++
++ <!-- Properties -->
++
++ <property name="org.apache.jetspeed.database.enable" value="true"/>
++ <property name="org.apache.jetspeed.database.skip" value="false"/>
++ <property name="org.apache.jetspeed.database.default.name" value=""/>
++ <property name="org.apache.jetspeed.database.url" value=""/>
++ <property name="org.apache.jetspeed.database.jdbc.drivers.path" value=""/>
++ <property name="org.apache.jetspeed.database.driver" value=""/>
++ <property name="org.apache.jetspeed.database.user" value=""/>
++ <property name="org.apache.jetspeed.database.password" value=""/>
++ <property name="org.apache.derby.version" value=""/>
++ <property name="ant.version" value=""/>
++ <property name="hsqldb.version" value=""/>
++ <property name="project.root" value=""/>
++ <property name="portlet-api.version" value=""/>
++
++ <property name="org.apache.jetspeed.source.sql" value="${basedir}/sql"/>
++ <property name="org.apache.jetspeed.database.source.sql" value="${org.apache.jetspeed.source.sql}/${org.apache.jetspeed.database.default.name}"/>
++ <property name="org.apache.jetspeed.database.target.sql.root" value="${basedir}/target/sql"/>
++ <property name="org.apache.jetspeed.database.target.sql" value="${org.apache.jetspeed.database.target.sql.root}/${org.apache.jetspeed.database.default.name}"/>
++
++ <property name="torque.contextProperties" value=""/>
++ <property name="torque.runOnlyOnSchemaChange" value="true"/>
++ <property name="torque.idTableXMLFile" value=""/>
++ <property name="torque.project" value="phase1"/>
++ <property name="torque.schema.dir" value="${basedir}/schema"/>
++ <property name="torque.schema.sql.excludes" value=""/>
++ <property name="torque.schema.sql.includes" value="*-schema.xml"/>
++ <property name="torque.template.sql" value="sql/base/Control.vm"/>
++ <property name="torque.templatePath" value=""/>
++ <property name="torque.useClasspath" value="true"/>
++ <property name="torque.sql.dir" value="${org.apache.jetspeed.database.target.sql}/schema"/>
++ <property name="org.apache.jetspeed.deploy.groupid" value=""/>
++ <property name="org.apache.jetspeed.deploy.artifactid" value=""/>
++ <property name="org.apache.jetspeed.deploy.version" value=""/>
++
++
++ <!-- Usage -->
++
++ <target name="help">
++ <echo message="Buildfile for the etc maven POM."/>
++ <echo message="Usage: ant [ clean-schema | schema | populate-db ]"/>
++ <echo message="Where:"/>
++ <echo message=" clean-schema - clean schemas for all databases."/>
++ <echo message=" schema - build schema for database if not already built."/>
++ <echo message=" populate-db - build and minimally populate database instance."/>
++ <echo message="Configuration:"/>
++ <echo message=" org.apache.jetspeed.database.enable=${org.apache.jetspeed.database.enable}"/>
++ <echo message=" org.apache.jetspeed.database.skip=${org.apache.jetspeed.database.skip}"/>
++ <echo message=" org.apache.jetspeed.database.default.name=${org.apache.jetspeed.database.default.name}"/>
++ <echo message=" org.apache.jetspeed.database.url=${org.apache.jetspeed.database.url}"/>
++ <echo message=" org.apache.jetspeed.database.jdbc.drivers.path=${org.apache.jetspeed.database.jdbc.drivers.path}"/>
++ <echo message=" org.apache.jetspeed.database.driver=${org.apache.jetspeed.database.driver}"/>
++ <echo message=" org.apache.jetspeed.database.user=${org.apache.jetspeed.database.user}"/>
++ <echo message=" org.apache.jetspeed.database.password=${org.apache.jetspeed.database.password}"/>
++ <echo message=" org.apache.derby.version=${org.apache.derby.version}"/>
++ <echo message=" ant.version=${ant.version}"/>
++ <echo message=" hsqldb.version=${hsqldb.version}"/>
++ </target>
++
++ <!-- Additional Task Definitions -->
++
++ <taskdef name="torque-sql" classname="org.apache.torque.task.TorqueSQLTask"/>
++ <taskdef resource="org/apache/maven/artifact/ant/antlib.xml"/>
++
++ <!-- Schema Generation -->
++
++ <target name="clean-schema">
++
++ <!-- clean target directories -->
++ <delete dir="${org.apache.jetspeed.database.target.sql.root}"/>
++
++ </target>
++
++ <target name="schema" depends="test-database-default-name, test-database-filter-drops, test-database-target-sql"
++ unless="org.apache.jetspeed.database.target.sql.exists">
++
++ <!-- make target directory -->
++ <mkdir dir="${org.apache.jetspeed.database.target.sql}"/>
++
++ <!-- copy general sql -->
++ <copy todir="${org.apache.jetspeed.database.target.sql}" overwrite="on" verbose="on" failonerror="off">
++ <fileset dir="${org.apache.jetspeed.source.sql}">
++ <include name="*.sql"/>
++ </fileset>
++ </copy>
++
++
++ <!-- conditionally generate sql using torque schema -->
++ <antcall target="schema-mssql"/>
++ <antcall target="schema-mysql"/>
++ <antcall target="schema-oracle"/>
++ <antcall target="schema-hsql"/>
++ <antcall target="schema-postgres"/>
++ <antcall target="schema-sapdb"/>
++ <antcall target="schema-derby"/>
++
++ <!-- conditionally filter generated schema -->
++ <antcall target="schema-filter-drops"/>
++
++ <!-- copy custom/override generated sql -->
++ <copy todir="${org.apache.jetspeed.database.target.sql}" overwrite="on" verbose="on" failonerror="off">
++ <fileset dir="${org.apache.jetspeed.database.source.sql}">
++ <include name="**/*.sql"/>
++ <exclude name="**/*populate.sql"/>
++ </fileset>
++ </copy>
++
++ </target>
++
++ <target name="test-database-default-name">
++ <condition property="org.apache.jetspeed.database.is.mssql">
++ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="mssql"/>
++ </condition>
++ <condition property="org.apache.jetspeed.database.is.mysql">
++ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="mysql"/>
++ </condition>
++ <condition property="org.apache.jetspeed.database.is.oracle">
++ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="oracle"/>
++ </condition>
++ <condition property="org.apache.jetspeed.database.is.db2">
++ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="db2"/>
++ </condition>
++ <condition property="org.apache.jetspeed.database.is.hsql">
++ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="hsql"/>
++ </condition>
++ <condition property="org.apache.jetspeed.database.is.postgres">
++ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="postgres"/>
++ </condition>
++ <condition property="org.apache.jetspeed.database.is.sapdb">
++ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="sapdb"/>
++ </condition>
++ <condition property="org.apache.jetspeed.database.is.derby">
++ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="derby"/>
++ </condition>
++ </target>
++
++ <target name="test-database-filter-drops">
++ <condition property="org.apache.jetspeed.database.filter.drops">
++ <or>
++ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="oracle"/>
++ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="postgres"/>
++ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="sapdb"/>
++ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="derby"/>
++ </or>
++ </condition>
++ </target>
++
++ <target name="test-database-target-sql">
++ <available file="${org.apache.jetspeed.database.target.sql}"
++ property="org.apache.jetspeed.database.target.sql.exists"/>
++ </target>
++
++ <target name="schema-mssql" if="org.apache.jetspeed.database.is.mssql">
++ <antcall target="torque-gen">
++ <param name="torque.database" value="mssql"/>
++ </antcall>
++ </target>
++
++ <target name="schema-mysql" if="org.apache.jetspeed.database.is.mysql">
++ <antcall target="torque-gen">
++ <param name="torque.database" value="mysql"/>
++ </antcall>
++ </target>
++
++ <target name="schema-oracle" if="org.apache.jetspeed.database.is.oracle">
++ <antcall target="torque-gen">
++ <param name="torque.database" value="oracle"/>
++ </antcall>
++ </target>
++
++ <target name="schema-db2" if="org.apache.jetspeed.database.is.db2">
++ <antcall target="torque-gen">
++ <param name="torque.database" value="db2"/>
++ </antcall>
++ </target>
++
++ <target name="schema-hsql" if="org.apache.jetspeed.database.is.hsql">
++ <antcall target="torque-gen">
++ <param name="torque.database" value="hypersonic"/>
++ </antcall>
++ </target>
++
++ <target name="schema-postgres" if="org.apache.jetspeed.database.is.postgres">
++ <antcall target="torque-gen">
++ <param name="torque.database" value="postgresql"/>
++ </antcall>
++ </target>
++
++ <target name="schema-sapdb" if="org.apache.jetspeed.database.is.sapdb">
++ <antcall target="torque-gen">
++ <param name="torque.database" value="sapdb"/>
++ </antcall>
++ </target>
++
++ <target name="schema-derby" if="org.apache.jetspeed.database.is.derby">
++ <antcall target="torque-gen">
++ <param name="torque.database" value="derby"/>
++ </antcall>
++ </target>
++
++ <target name="schema-filter-drops" if="org.apache.jetspeed.database.filter.drops">
++
++ <!-- comment out drops in schema scripts -->
++ <replaceregexp match="^\s*(drop)" flags="i" byline="on" replace="-- \1">
++ <fileset dir="${org.apache.jetspeed.database.target.sql}/schema">
++ <include name="*.sql"/>
++ </fileset>
++ </replaceregexp>
++
++ </target>
++
++ <!-- Torque targets taken from build-torque.xml in the Torque Generator distribution -->
++
++ <target name="check-use-classpath">
++ <condition property="torque.internal.useClasspath">
++ <equals arg1="${torque.useClasspath}" arg2="true"/>
++ </condition>
++ </target>
++
++ <target name="check-run-only-on-schema-change">
++ <condition property="torque.internal.runOnlyOnSchemaChange">
++ <equals arg1="${torque.runOnlyOnSchemaChange}" arg2="true"/>
++ </condition>
++ </target>
++
++ <target name="sql-check" depends="check-run-only-on-schema-change" if="torque.internal.runOnlyOnSchemaChange">
++ <uptodate property="torque.internal.sql.uptodate" targetfile="${torque.sql.dir}/${torque.project}-schema.sql">
++ <srcfiles dir="${torque.schema.dir}" includes="**/*-schema.xml" />
++ </uptodate>
++ </target>
++
++ <target name="torque-gen" depends="check-use-classpath, sql-check" unless="torque.internal.sql.uptodate">
++ <antcall target="sql-classpath"/>
++ <antcall target="sql-template"/>
++ </target>
++
++ <target name="sql-classpath" if="torque.internal.useClasspath">
++ <torque-sql contextProperties="${torque.contextProperties}"
++ controlTemplate="${torque.template.sql}"
++ idTableXMLFile="${torque.idTableXMLFile}"
++ outputDirectory="${torque.sql.dir}"
++ outputFile="report.${torque.project}.sql.generation"
++ sqldbmap="${torque.sql.dir}/sqldb.map"
++ targetDatabase="${torque.database}"
++ useClasspath="${torque.useClasspath}">
++ <fileset dir="${torque.schema.dir}"
++ includes="${torque.schema.sql.includes}"
++ excludes="${torque.schema.sql.excludes}"/>
++ </torque-sql>
++ </target>
++
++ <target name="sql-template" unless="torque.internal.useClasspath">
++ <torque-sql contextProperties="${torque.contextProperties}"
++ controlTemplate="${torque.template.sql}"
++ idTableXMLFile="${torque.idTableXMLFile}"
++ outputDirectory="${torque.sql.dir}"
++ outputFile="report.${torque.project}.sql.generation"
++ sqldbmap="${torque.sql.dir}/sqldb.map"
++ targetDatabase="${torque.database}"
++ templatePath="${torque.templatePath}">
++ <fileset dir="${torque.schema.dir}"
++ includes="${torque.schema.sql.includes}"
++ excludes="${torque.schema.sql.excludes}"/>
++ </torque-sql>
++ </target>
++
++ <!-- Populate Database -->
++
++ <target name="populate-db" depends="test-populate-skip" unless="org.apache.jetspeed.skip">
++
++ <echo message="IN POPULATE"/>
++
++
++ <!-- execute drop scripts -->
++<!-- <antcall target="sql-execute" inheritall="on" inheritrefs="on">
++ <param name="database.arg.scripts.dir" value="${org.apache.jetspeed.database.target.sql}"/>
++ <param name="database.arg.scripts" value="drop.sql"/>
++ <param name="database.arg.onerror" value="continue"/>
++ </antcall>
++
++ <echo message ="SCRIPTS DROPPED" />
++
++-->
++ <!-- execute schema scripts -->
++<!-- <antcall target="sql-execute" inheritall="on" inheritrefs="on">
++ <param name="database.arg.scripts.dir" value="${org.apache.jetspeed.database.target.sql}/schema"/>
++ <param name="database.arg.scripts" value="*.sql"/>
++ <param name="database.arg.onerror" value="abort"/>
++ </antcall>
++
++ <echo message ="SCHEMA EXECUTED" />
++-->
++
++ <!-- execute new seed scripts -->
++ <antcall target="populate-seed-data" inheritall="on" inheritrefs="on">
++ </antcall>
++ <echo message ="SEED CALLED" />
++
++ </target>
++
++ <target name="populate-db-userinfo" depends="populate-db" unless="org.apache.jetspeed.skip">
++ <echo message ="populate-db-userinfo : deprecated" />
++ </target>
++
++ <!-- SQL Execution -->
++
++ <target name="sql-execute" depends="sql-test-database-classpath, sql-execute-drivers-path, sql-execute-derby, sql-execute-hsql"/>
++
++ <target name="sql-test-database-classpath">
++ <condition property="org.apache.jetspeed.database.use.drivers.path">
++ <and>
++ <not><equals arg1="${org.apache.jetspeed.database.jdbc.drivers.path}" arg2=""/></not>
++ <not><equals arg1="${org.apache.jetspeed.database.default.name}" arg2="derby"/></not>
++ <not><equals arg1="${org.apache.jetspeed.database.default.name}" arg2="hsql"/></not>
++ </and>
++ </condition>
++ <condition property="org.apache.jetspeed.database.is.derby.embedded">
++ <and>
++ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="derby"/>
++ <equals arg1="${org.apache.jetspeed.database.jdbc.drivers.path}" arg2=""/>
++ </and>
++ </condition>
++ <condition property="org.apache.jetspeed.database.is.hsql.embedded">
++ <and>
++ <equals arg1="${org.apache.jetspeed.database.default.name}" arg2="hsql"/>
++ <equals arg1="${org.apache.jetspeed.database.jdbc.drivers.path}" arg2=""/>
++ </and>
++ </condition>
++ </target>
++
++ <target name="sql-execute-drivers-path" if="org.apache.jetspeed.database.use.drivers.path">
++ <sql url="${org.apache.jetspeed.database.url}"
++ classpath="${org.apache.jetspeed.database.jdbc.drivers.path}" driver="${org.apache.jetspeed.database.driver}"
++ userid="${org.apache.jetspeed.database.user}" password="${org.apache.jetspeed.database.password}"
++ onerror="${database.arg.onerror}">
++ <fileset dir="${database.arg.scripts.dir}">
++ <include name="${database.arg.scripts}"/>
++ </fileset>
++ </sql>
++ </target>
++
++ <target name="sql-execute-derby" if="org.apache.jetspeed.database.is.derby.embedded">
++ <!--
++ Because tests may be executed in forked JVM processes
++ following the execution of this task, the Derby database
++ operations must also be executed in a forked ant task.
++ This is done to prevent the main Maven build process, (in
++ which this Ant build is running), from locking the Derby
++ database instance in its JVM context and this preventing
++ the subsequent test database access in forked JVMs.
++ -->
++ <!-- write out temporary ant build file for forked execution -->
++ <echo file="${basedir}/derby-sql-build.xml">
++ <project name="etc-derby-sql-build">
++ <target name="forked-sql-execute-derby">
++ <sql url="${org.apache.jetspeed.database.url};create=true" driver="${org.apache.jetspeed.database.driver}"
++ userid="${org.apache.jetspeed.database.user}" password="${org.apache.jetspeed.database.password}"
++ onerror="${database.arg.onerror}">
++ <fileset dir="${database.arg.scripts.dir}">
++ <include name="${database.arg.scripts}"/>
++ </fileset>
++ </sql>
++ </target>
++ </project>
++ </echo>
++ <!-- get derby and ant dependencies for fork -->
++ <dependencies filesetId="derby.embedded.db.dependencies.id" useScope="runtime">
++ <dependency groupId="org.apache.derby"
++ artifactId="derby"
++ version="${org.apache.derby.version}"/>
++ </dependencies>
++ <dependencies filesetId="ant.dependencies.id" useScope="runtime">
++ <dependency groupId="ant"
++ artifactId="ant"
++ version="${ant.version}"/>
++ <dependency groupId="ant"
++ artifactId="ant-launcher"
++ version="${ant.version}"/>
++ </dependencies>
++ <!-- fork and execute temporary ant build file -->
++ <java classname="org.apache.tools.ant.Main" fork="on" append="on" failonerror="on" dir="${basedir}">
++ <classpath>
++ <fileset refid="ant.dependencies.id"/>
++ <fileset refid="derby.embedded.db.dependencies.id"/>
++ </classpath>
++ <arg line="-f ${basedir}/derby-sql-build.xml forked-sql-execute-derby"/>
++ </java>
++ <!-- cleanup temporary ant build file -->
++ <delete file="${basedir}/derby-sql-build.xml"/>
++ </target>
++
++ <target name="sql-execute-hsql" if="org.apache.jetspeed.database.is.hsql.embedded">
++ <!--
++ Because tests may be executed in forked JVM processes
++ following the execution of this task, the HSQLDB database
++ must be shutdown when access is complete. The 'shutdown=true'
++ option should appear on the connection url to ensure this
++ behavior here and for the tests. This is done to prevent
++ the main Maven build process, (in which this Ant build is
++ running), from locking the HSQLDB database instance in its
++ JVM context and this preventing the subsequent test database
++ access in forked JVMs.
++ -->
++ <!-- execute specified sql scripts -->
++ <dependencies filesetId="hsql.embedded.db.dependencies.id" useScope="runtime">
++ <dependency groupId="hsqldb"
++ artifactId="hsqldb"
++ version="${hsqldb.version}"/>
++ </dependencies>
++ <sql url="${org.apache.jetspeed.database.url}" driver="${org.apache.jetspeed.database.driver}"
++ userid="${org.apache.jetspeed.database.user}" password="${org.apache.jetspeed.database.password}"
++ onerror="${database.arg.onerror}">
++ <classpath>
++ <fileset refid="hsql.embedded.db.dependencies.id"/>
++ </classpath>
++ <fileset dir="${database.arg.scripts.dir}">
++ <include name="${database.arg.scripts}"/>
++ </fileset>
++ </sql>
++ </target>
++
++ <!-- Utilities -->
++
++ <target name="test-populate-skip">
++ <condition property="org.apache.jetspeed.skip">
++ <or>
++ <equals arg1="${org.apache.jetspeed.database.skip}" arg2="true"/>
++ <not>
++ <equals arg1="${org.apache.jetspeed.database.enable}" arg2="true"/>
++ </not>
++ </or>
++ </condition>
++ </target>
++
++ <target name="generate-schema" depends="test-populate-skip" unless="org.apache.jetspeed.skip">
++ <echo message = "called generate schema with directory ${project.root} " />
++ <!-- prepare a classes directory with resources and libraries to execute import -->
++ <delete dir="${project.root}/target/schema"/>
++ <mkdir dir="${project.root}/target/schema"/>
++ <mkdir dir="${project.root}/target/schema/data"/>
++
++ <!-- copy schema -->
++ <copy todir="${project.root}/target/schema" overwrite="on" verbose="on" failonerror="off">
++ <fileset dir="${torque.schema.dir}"
++ includes="${torque.schema.sql.includes}"
++ excludes="${torque.schema.sql.excludes}"/>
++ </copy>
++
++ <!-- construct ddl serializer component classpath -->
++ <dependencies filesetId="serializer-id" useScope="test">
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-api"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-commons"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-components"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-cm"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-rdbms"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-capability"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-security"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-serializer"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-profiler"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="tyrex"
++ artifactId="tyrex"
++ version="1.0.1"/>
++ <dependency groupId="commons-collections"
++ artifactId="commons-collections"
++ version="3.1"/>
++
++ <dependency groupId="commons-beanutils"
++ artifactId="commons-beanutils"
++ version="1.6.1"/>
++ <dependency groupId="commons-betwixt"
++ artifactId="commons-betwixt"
++ version="20061115"/>
++ <dependency groupId="javolution"
++ artifactId="javolution"
++ version="4.0.2"/>
++ <dependency groupId="ddlutils"
++ artifactId="ddlutils"
++ version="1.0-RC1-PATCHED"/>
++
++
++ </dependencies>
++
++ <!-- create sysproperty set to configure import utility -->
++ <propertyset id="import.syspropertyset.id">
++ <propertyref name="org.apache.jetspeed.database.driver"/>
++ <propertyref name="org.apache.jetspeed.database.url"/>
++ <propertyref name="org.apache.jetspeed.database.user"/>
++ <propertyref name="org.apache.jetspeed.database.password"/>
++ </propertyset>
++ <echo message="calling ddl serializer with datafile= ${org.apache.jetspeed.database.target.sql} -b ${temp.assembly.dir}/boot/ -c ${temp.assembly.dir}/ -dc ${org.apache.jetspeed.database.driver} -ds ${org.apache.jetspeed.database.url} -du ${org.apache.jetspeed.database.user} -dp ${org.apache.jetspeed.database.password}" />
++
++ <!-- execute import utility within the page manager component -->
++ <java classname="org.apache.jetspeed.serializer.JetspeedDDLApplication" fork="on" append="on" dir="${basedir}">
++ <classpath>
++<!-- <fileset refid="maven.dependency.classpath"/>
++-->
++ <fileset refid="serializer-id"/>
++ <pathelement path="${org.apache.jetspeed.database.jdbc.drivers.path}"/>
++ <pathelement path="${project.root}/etc/log4j/log4j.properties"/>
++ </classpath>
++ <arg line="-I ${project.root}/target/schema -R -s order.xml -dc ${org.apache.jetspeed.database.driver} -ds ${org.apache.jetspeed.database.url} -du ${org.apache.jetspeed.database.user} -dp ${org.apache.jetspeed.database.password} -dn ${org.apache.jetspeed.database.default.name}"/>
++ </java>
++ </target>
++
++ <target name="populate-seed-data">
++ <echo message = "called seed data with directory ${project.root} " />
++ <!-- prepare a classes directory with resources and libraries to execute import -->
++ <delete dir="${project.root}/target/seed"/>
++ <mkdir dir="${project.root}/target/seed"/>
++ <mkdir dir="${project.root}/target/seed/data"/>
++
++ <!-- copy seed -->
++ <copy todir="${project.root}/target/seed/data" overwrite="on" verbose="on" failonerror="off">
++ <fileset dir="${org.apache.jetspeed.source.sql}">
++ <include name="*seed.xml"/>
++ </fileset>
++ </copy>
++
++
++
++
++
++ <mkdir dir="${project.root}/target/seed/classes"/>
++ <copy todir="${project.root}/target/seed/classes" flatten="on">
++ <fileset dir="${project.root}/etc" >
++ <include name="log4j/log4j.properties"/>
++ <include name="db-ojb/*"/>
++ </fileset>
++ </copy>
++ <!-- prepare spring assemblies (TODO: why not use a Spring classpath loader?) -->
++ <property name="temp.assembly.dir" value="${project.root}/target/seed/assembly/"/>
++ <mkdir dir="${temp.assembly.dir}"/>
++ <echo message="Running Jetspeed Seed Importer with -b ${temp.assembly.dir}/boot/ -c ${temp.assembly.dir}/ "/>
++ <copy todir="${temp.assembly.dir}" overwrite="true" failonerror="true">
++ <fileset dir="${project.root}/src/webapp/WEB-INF/assembly">
++ <include name="security*.xml"/>
++ <include name="capabilities.xml"/>
++ <include name="prefs.xml"/>
++ <include name="profiler.xml"/>
++ <include name="transaction.xml"/>
++ </fileset>
++ </copy>
++ <mkdir dir="${temp.assembly.dir}/boot/"/>
++ <copy todir="${temp.assembly.dir}/boot/" overwrite="true" failonerror="true">
++ <fileset dir="${project.root}/src/webapp/WEB-INF/assembly/boot">
++ <include name="*.xml"/>
++ </fileset>
++ </copy>
++
++
++ <!-- construct serializer component classpath -->
++ <dependencies filesetId="serializer-id" useScope="test">
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-api"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-commons"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-components"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-cm"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-rdbms"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-capability"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-security"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-serializer"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="${org.apache.jetspeed.deploy.groupid}"
++ artifactId="jetspeed-profiler"
++ version="${org.apache.jetspeed.deploy.version}"/>
++ <dependency groupId="portlet-api"
++ artifactId="portlet-api"
++ version="${portlet-api.version}"/>
++
++ <dependency groupId="tyrex"
++ artifactId="tyrex"
++ version="1.0.1"/>
++ </dependencies>
++
++ <!-- create sysproperty set to configure import utility -->
++ <propertyset id="import.syspropertyset.id">
++ <propertyref name="org.apache.jetspeed.database.driver"/>
++ <propertyref name="org.apache.jetspeed.database.url"/>
++ <propertyref name="org.apache.jetspeed.database.user"/>
++ <propertyref name="org.apache.jetspeed.database.password"/>
++ </propertyset>
[... 19 lines stripped ...]
---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org