db-jdo-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From m..@apache.org
Subject svn commit: r158176 [79/79] - in incubator/jdo/trunk/ri11: ./ src/ src/conf/ src/java/ src/java/org/ src/java/org/apache/ src/java/org/apache/jdo/ src/java/org/apache/jdo/ejb/ src/java/org/apache/jdo/enhancer/ src/java/org/apache/jdo/impl/ src/java/org/apache/jdo/impl/enhancer/ src/java/org/apache/jdo/impl/enhancer/classfile/ src/java/org/apache/jdo/impl/enhancer/core/ src/java/org/apache/jdo/impl/enhancer/generator/ src/java/org/apache/jdo/impl/enhancer/meta/ src/java/org/apache/jdo/impl/enhancer/meta/model/ src/java/org/apache/jdo/impl/enhancer/meta/prop/ src/java/org/apache/jdo/impl/enhancer/meta/util/ src/java/org/apache/jdo/impl/enhancer/util/ src/java/org/apache/jdo/impl/fostore/ src/java/org/apache/jdo/impl/jdoql/ src/java/org/apache/jdo/impl/jdoql/jdoqlc/ src/java/org/apache/jdo/impl/jdoql/scope/ src/java/org/apache/jdo/impl/jdoql/tree/ src/java/org/apache/jdo/impl/model/ src/java/org/apache/jdo/impl/model/java/ src/java/org/apache/jdo/impl/model/java/runtime/ src/java/org/apache/jdo/impl/model/jdo/ src/java/org/apache/jdo/impl/model/jdo/caching/ src/java/org/apache/jdo/impl/model/jdo/util/ src/java/org/apache/jdo/impl/model/jdo/xml/ src/java/org/apache/jdo/impl/pm/ src/java/org/apache/jdo/impl/sco/ src/java/org/apache/jdo/impl/state/ src/java/org/apache/jdo/jdoql/ src/java/org/apache/jdo/jdoql/tree/ src/java/org/apache/jdo/model/ src/java/org/apache/jdo/model/java/ src/java/org/apache/jdo/model/jdo/ src/java/org/apache/jdo/pm/ src/java/org/apache/jdo/sco/ src/java/org/apache/jdo/state/ src/java/org/apache/jdo/store/ src/java/org/apache/jdo/util/ test/ test/conf/ test/enhancer/ test/enhancer/sempdept/ test/enhancer/sempdept/src/ test/enhancer/sempdept/src/empdept/ test/fsuid2/ test/fsuid2/org/ test/fsuid2/org/apache/ test/fsuid2/org/apache/jdo/ test/fsuid2/org/apache/jdo/pc/ test/java/ test/java/org/ test/java/org/apache/ test/java/org/apache/jdo/ test/java/org/apache/jdo/impl/ test/java/org/apache/jdo/impl/fostore/ test/java/org/apache/jdo/pc/ test/java/org/apache/jdo/pc/appid/ test/java/org/apache/jdo/pc/empdept/ test/java/org/apache/jdo/pc/serializable/ test/java/org/apache/jdo/pc/xempdept/ test/java/org/apache/jdo/test/ test/java/org/apache/jdo/test/query/ test/java/org/apache/jdo/test/util/ test/jdo/ test/jdo/org/ test/jdo/org/apache/ test/jdo/org/apache/jdo/ test/jdo/org/apache/jdo/pc/ test/jdo/org/apache/jdo/pc/appid/ test/jdo/org/apache/jdo/pc/empdept/ test/jdo/org/apache/jdo/pc/serializable/ test/jdo/org/apache/jdo/pc/xempdept/ xdocs/
Date Sat, 19 Mar 2005 01:06:19 GMT
Added: incubator/jdo/trunk/ri11/test/jdo/org/apache/jdo/pc/xempdept/xempdept.jdoproperties
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/jdo/org/apache/jdo/pc/xempdept/xempdept.jdoproperties?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/jdo/org/apache/jdo/pc/xempdept/xempdept.jdoproperties (added)
+++ incubator/jdo/trunk/ri11/test/jdo/org/apache/jdo/pc/xempdept/xempdept.jdoproperties Fri Mar 18 17:02:29 2005
@@ -0,0 +1,99 @@
+# Classnames can have the following attributes: 
+#          jdo:{persistent|transient} 
+#          super: <classname> 
+#          oid: <classname> 
+#          access: {public|protected|package|private} 
+# Fieldnames can have the following attributes: 
+#          type:<type> 
+#          access: {public|protected|package|private} 
+#          jdo:{persistent|transactional|transient} 
+#          annotation:{key|dfg|mediated} 
+
+org.apache.jdo.pc.xempdept.Company=jdo:persistent
+org.apache.jdo.pc.xempdept.Company#name=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Company#founded=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Company#address=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Company#departments=jdo:persistent,annotation:mediated
+
+org.apache.jdo.pc.xempdept.Department=jdo:persistent
+org.apache.jdo.pc.xempdept.Department#deptid=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Department#name=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Department#company=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Department#employees=jdo:persistent,annotation:mediated
+
+org.apache.jdo.pc.xempdept.Person=jdo:persistent
+org.apache.jdo.pc.xempdept.Person#firstname=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Person#lastname=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Person#birthdate=jdo:persistent,annotation:mediated
+
+org.apache.jdo.pc.xempdept.Employee=jdo:persistent,super:org.apache.jdo.pc.xempdept.Person
+org.apache.jdo.pc.xempdept.Employee#empid=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Employee#hiredate=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Employee#weeklyhours=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Employee#discriminator=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Employee#reviewedProjects=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Employee#projects=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Employee#insurance=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Employee#department=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Employee#manager=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Employee#team=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Employee#mentor=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Employee#protege=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Employee#hradvisor=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Employee#hradvisees=jdo:persistent,annotation:mediated
+
+org.apache.jdo.pc.xempdept.FullTimeEmployee=jdo:persistent,super:org.apache.jdo.pc.xempdept.Employee
+org.apache.jdo.pc.xempdept.FullTimeEmployee#salary=jdo:persistent,annotation:mediated
+
+org.apache.jdo.pc.xempdept.PartTimeEmployee=jdo:persistent,super:org.apache.jdo.pc.xempdept.Employee
+org.apache.jdo.pc.xempdept.PartTimeEmployee#wage=jdo:persistent,annotation:mediated
+
+org.apache.jdo.pc.xempdept.Insurance=jdo:persistent
+org.apache.jdo.pc.xempdept.Insurance#insid=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Insurance#carrier=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Insurance#employee=jdo:persistent,annotation:mediated
+
+org.apache.jdo.pc.xempdept.Project=jdo:persistent
+org.apache.jdo.pc.xempdept.Project#projid=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Project#name=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Project#budget=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Project#reviewers=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.Project#employees=jdo:persistent,annotation:mediated
+
+org.apache.jdo.pc.xempdept.PrimitiveTypes=jdo:persistent
+org.apache.jdo.pc.xempdept.PrimitiveTypes#id=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#booleanNotNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#booleanNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#byteNotNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#byteNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#shortNotNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#shortNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#intNotNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#intNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#longNotNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#longNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#floatNotNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#floatNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#doubleNotNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#doubleNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#charNotNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#charNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#dateNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#stringNull=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#bigDecimal=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#bigInteger=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.xempdept.PrimitiveTypes#PrimitiveTypes=jdo:persistent,annotation:mediated
+
+org.apache.jdo.pc.xempdept.Company$Oid=jdo:transient
+org.apache.jdo.pc.xempdept.Company$Oid#name=jdo:transient
+org.apache.jdo.pc.xempdept.Company$Oid#founded=jdo:transient
+org.apache.jdo.pc.xempdept.Department$Oid=jdo:transient
+org.apache.jdo.pc.xempdept.Department$Oid#deptid=jdo:transient
+org.apache.jdo.pc.xempdept.Employee$Oid=jdo:transient
+org.apache.jdo.pc.xempdept.Employee$Oid#empid=jdo:transient
+org.apache.jdo.pc.xempdept.Project$Oid=jdo:transient
+org.apache.jdo.pc.xempdept.Project$Oid#projid=jdo:transient
+org.apache.jdo.pc.xempdept.Insurance$Oid=jdo:transient
+org.apache.jdo.pc.xempdept.Insurance$Oid#insid=jdo:transient
+org.apache.jdo.pc.xempdept.PrimitiveTypes$Oid=jdo:transient
+org.apache.jdo.pc.xempdept.PrimitiveTypes$Oid#id=jdo:transient

Added: incubator/jdo/trunk/ri11/test/runtest.xml
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/runtest.xml?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/runtest.xml (added)
+++ incubator/jdo/trunk/ri11/test/runtest.xml Fri Mar 18 17:02:29 2005
@@ -0,0 +1,1772 @@
+<!--
+    Copyright 2005 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.
+-->
+
+<!--
+
+The targets in this buildfile all presume that JDO has been built.
+
+Interesting targets include:
+
+test: Run all tests. Run test.run.list against class files.
+test.jar: Run all tests. Run test.run.list against jar files.
+jar: Don't run any tests, just build the jar files.
+
+Also, you can run any individual test.  Let's say there's a test XXX, then it
+will have these targets:
+
+XXX: Runs the test against class files, rebuilding as necessary
+XXX.build: Builds the test
+XXX.run: Runs the test without rebuilding.
+
+-->
+
+<project name="runtest" default="runtest.list" basedir=".">
+
+<!-- Uncomment this if you want to use jikes
+<property name="build.compiler" value="jikes"/>
+-->
+
+<!-- JAR files required to run the tests
+-->
+<property name="builddir" value="${basedir}/../target"/>
+<property name="jdoapi" value="${user.home}/.maven/repository/jdo/jars/jdo-api-1.1.jar"/>
+<property name="jdobtree" value="${user.home}/.maven/repository/jdo/jars/jdo-btree-1.1.jar"/>
+<property name="jdori" value="${builddir}/classes"/>
+<property name="jdoritests" value="${builddir}/test-classes/jdo-ri-tests.jar"/>
+<property name="pcclasses" value="${builddir}/test-classes/pcclasses.jar"/>
+<property name="testdir" value="${builddir}/database"/>
+<property name="fsuidjar" value="${basedir}/fsuid/fsuid2.jar"/>
+
+<!-- external libs -->
+<property name="junit" value="${user.home}/.maven/repository/junit/jars/junit-3.8.1.jar"/>
+<property name="jta" value="${user.home}/.maven/repository/geronimo-spec/jars/geronimo-spec-jta-1.0.1B-rc2.jar"/>
+<property name="antlr" value="${user.home}/.maven/repository/antlr/jars/antlr-2.7.3.jar"/>
+<property name="logging" value="${user.home}/.maven/repository/commons-logging/jars/commons-logging-1.0.4.jar"/>
+<property name="xmlparser" value=""/>
+<!-- jndi implementation jars, needs to be consistent with jndi.properties -->
+<property name="jndi" value="${basedir}/fscontext.jar:${basedir}/providerutil.jar"/>
+
+<!-- other properties -->
+<property name="testlist" value="${basedir}/conf/tests.list"/>
+<property name="ResultPrinterClass" value="org.apache.jdo.test.util.BatchResultPrinter"/>
+<property name="policyfile" value="${basedir}/conf/JDO11Policy"/>
+<property name="gui" value="false"/>
+<property name="cfdbname" value="CFDB"/>
+
+                    <!-- CLASSPATH -->
+                    <!-- CLASSPATH -->
+                    <!-- CLASSPATH -->
+
+<!-- Jars that we don't build
+-->
+
+<!-- Classpath
+-->
+<property name="extjars" 
+          value="${antlr}:${junit}:${jta}:${logging}:${xmlparser}"/>
+<property name="classpath" 
+          value="${jdoritests}:${pcclasses}:${jdoapi}:${jdori}:${jdobtree}:${extjars}"/>
+
+                    <!-- TEST PROPERTIES -->
+                    <!-- TEST PROPERTIES -->
+                    <!-- TEST PROPERTIES -->
+
+<!-- Several tests can insert a user-specified number of objects.
+     Use this property to specify how many.
+-->
+<property name="insert" value="--default--"/>
+
+<!-- Indicate the directory and root name of the database.  With the given
+     defaults, the database is in `pwd`//FOStoreTestDB.
+-->
+<property name="dir" value="--default--"/>
+<property name="name" value="--default--"/>
+
+<!-- Indicates the name used for loading and saving PMF's with JNDI.  The name here
+     given is used to in an InitialContext rooted at the value of dir (above).
+-->
+<property name="pmfLoadName" value=""/>
+<property name="pmfSaveName" value=""/>
+<property name="cfPropsFile" value=""/>
+
+<!-- Indicates information for the fostore server when run in client/server
+     mode.
+-->
+<property name="host" value=""/>
+<property name="port" value=""/>
+<property name="backlog" value=""/>
+<property name="timeout" value=""/>
+<property name="root" value=""/>
+
+<!-- Indicates whether exceptions from the server should be displayed verbosely
+     or not.  Note that "status.verbose" is accessed by the fostore 
+     implementation itself.  It will *not* cause fostore to print data
+     in and of itself, it only provides that when exceptions occur in the
+     server, that they are reported along with their stack trace instead of
+     just by name. See Reply.java
+-->
+<property name="status.verbose" value="false"/>
+
+                    <!-- RUNNING TESTS -->
+                    <!-- RUNNING TESTS -->
+                    <!-- RUNNING TESTS -->
+
+<!-- Run all tests. 
+-->
+
+<target name="testrunner">
+   <condition property="TestRunnerClass" 
+              value="org.apache.jdo.test.util.SwingTestRunner">
+       <istrue value="${gui}"/>
+   </condition>
+   <condition property="TestRunnerClass" 
+              value="org.apache.jdo.test.util.JDORITestRunner">
+       <isfalse value="${gui}"/>
+   </condition>
+</target>
+
+<target name="runtest" depends="runtest.list, runtest.security, runtest.multiJVMtests"/>
+
+<!-- Runs all tests from the specified test list
+-->
+<target name="runtest.list" depends="testrunner">
+  <echo message="Run all tests from testlist ${testlist}"/>
+  <mkdir dir="${testdir}"/>
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="${TestRunnerClass}">
+    <sysproperty key="ResultPrinterClass" value="${ResultPrinterClass}"/>
+    <sysproperty key="jdoapi" value="${jdoapi}"/>
+    <sysproperty key="jdobtree" value="${jdobtree}"/>
+    <sysproperty key="jdori" value="${jdori}"/>
+    <sysproperty key="jdoritests" value="${jdoritests}"/>
+    <sysproperty key="pcclasses" value="${pcclasses}"/>
+    <sysproperty key="testdir" value="${testdir}"/>
+    <sysproperty key="fsuidjar" value="${fsuidjar}"/>
+    <sysproperty key="junit" value="${junit}"/>
+    <sysproperty key="logging" value="${logging}"/>
+    <sysproperty key="xmlparser" value="${xmlparser}"/>
+    <sysproperty key="testlist" value="${testlist}"/>
+    <sysproperty key="dir" value="${testdir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test FOStore's security policy implementation.  This tests that in 
+     an environment with a security manager, basic operations can be performed
+     including create and read of persistent instances.  The security policy
+     contains different permission grants for: jdo.jar, jdori.jar, and the
+     test program itself. The query needs RuntimePermission 
+     "accessDeclaredMembers" to get metadata about non managed fields
+     and ReflectPermission "suppressAccessChecks" to access values of 
+     non managed fields in memory. 
+
+
+     Note, this test sets the sysproperty dir to ${securityDir} to make sure 
+     that the fostore database files are located in an extra directory.
+     This allows to have cleaner policy definitions in JDO20Policy. The dir 
+     sysproperty needs to be in sync with the FilePermissions in JDO20Policy.  
+-->
+
+<!-- Runs all tests from the specified test list in batch mode 
+     using a security manager.
+-->
+<target name="runtest.security" depends="testrunner">
+  <echo message="Run all tests from testlist ${testlist}"/>
+  <echo message="Using a security manager and the policies from ${policyfile}"/>
+  <mkdir dir="${testdir}"/>
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="${TestRunnerClass}">
+    <jvmarg value="-Djava.security.manager"/>
+    <sysproperty key="java.security.policy" value="${policyfile}"/>
+    <sysproperty key="ResultPrinterClass" value="${ResultPrinterClass}"/>
+    <sysproperty key="jdoapi" value="${jdoapi}"/>
+    <sysproperty key="jdobtree" value="${jdobtree}"/>
+    <sysproperty key="jdori" value="${jdori}"/>
+    <sysproperty key="jdoritests" value="${jdoritests}"/>
+    <sysproperty key="pcclasses" value="${pcclasses}"/>
+    <sysproperty key="testdir" value="${testdir}"/>
+    <sysproperty key="fsuidjar" value="${fsuidjar}"/>
+    <sysproperty key="junit" value="${junit}"/>
+    <sysproperty key="logging" value="${logging}"/>
+    <sysproperty key="xmlparser" value="${xmlparser}"/>
+    <sysproperty key="testlist" value="${testlist}"/>
+    <sysproperty key="dir" value="${testdir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Runs tests that cannot be run from a test list 
+     (e.g. they require starting a sequence of test programs 
+      where each test programs needs to run in its own JVM.
+-->
+<target name="runtest.multiJVMtests">
+  <echo message="Start FetchInserted test"/>
+  <antcall target="FetchInserted"/>
+  <echo message="Start JNDI test"/>
+  <antcall target="JNDI"/>
+  <echo message="Start JNDICF test"/>
+  <antcall target="JNDICF"/>
+  <echo message="Start GetObjectById2 test"/>
+  <antcall target="GetObjectById2"/>
+  <echo message="Start NonExistent test"/>
+  <antcall target="NonExistent"/>
+  <echo message="Start EmpDeptAppIdExt test"/>
+  <antcall target="EmpDeptAppIdExt"/>
+  <echo message="Start Enhancer test"/>
+  <antcall target="Enhancer"/>
+  <echo message="Start Generator test"/>
+  <antcall target="Generator"/>
+</target>
+
+                    <!-- INDIVIDUAL TESTS -->
+                    <!-- INDIVIDUAL TESTS -->
+                    <!-- INDIVIDUAL TESTS -->
+<!--
+
+Conventions:
+
+(1) Test naming conventions
+* The files with main() in them have the prefix "Test_".
+* Files to be enhanced have names that begin with "PC".
+
+(2) Test targets:
+* Each target is specified as XXX.
+* There is a block comment briefly describing the test immediately before each
+  XXX target.
+* Each XXX target depends on XXX.build followed by XXX.run.
+* The .build and .run targets are given in that order.
+* A .run target never depends on nor antcall's any other targets that require
+  anything to be built (though it may do so to split the running of the test
+  into separate pieces).
+* If a .run target requires that a property have a certain value, which is
+  user modifyable, that property is indicated before the .run target; this
+  property is documented with a comment immediately before it.
+* Two blank lines separate each test from those next to it in the file.
+
+-->
+
+<!-- Test the JDO model
+-->
+<target name="JDOModel">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_JDOModel"/>
+</target>
+
+<!-- Test FOStore Transcribers
+-->
+<target name="Transcriber">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.impl.fostore.Test_Transcriber"/>
+</target>
+
+
+<!-- Test FOStore's Serial UID
+-->
+<target name="FSUID">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.impl.fostore.Test_FSUID"/>
+</target>
+
+
+<!-- Test the Life Cycle of JDO Instances
+-->
+<target name="LifeCycle">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_LifeCycle"/>
+</target>
+
+<!-- Test the Life Cycle of JDO Instances with RetainValues set to false
+-->
+<target name="LifeCycle_RetF">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_LifeCycle_RetF"/>
+</target>
+
+<!-- Test the Life Cycle of JDO Instances in Optimistic transaction
+-->
+<target name="LifeCycle_Opt">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_LifeCycle_Opt"/>
+</target>
+
+<!-- Test the Life Cycle of JDO Instances with RetainValues set to false in Opt mode
+-->
+<target name="LifeCycle_RetFOpt">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_LifeCycle_RetFOpt"/>
+</target>
+
+<!-- Test the PM.makeXXXAll and PM.deletePersistentAll methods for failed objects
+-->
+<target name="NegAll">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_NegAll"/>
+</target>
+
+<!-- Test the configuration of PMF by properties
+-->
+<target name="PMFProperties">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_PMFProperties">
+    <sysproperty key="pmfLoadName" value="${pmfLoadName}"/>
+    <sysproperty key="pmfSaveName" value="${pmfSaveName}"/>
+    <sysproperty key="cfPropsFile" value="${cfPropsFile}"/>
+  </java>
+</target>
+
+<!-- Test FOStore's class activation, for datastore identity
+-->
+<target name="ActivateClass">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_ActivateClass">
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test FOStore insert
+-->
+<target name="Insert">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Insert">
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="pmfLoadName" value="${pmfLoadName}"/>
+    <sysproperty key="pmfSaveName" value="${pmfSaveName}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<target name="Insert.silent.run">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Insert">
+    <arg value="-silent"/> 
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="pmfLoadName" value="${pmfLoadName}"/>
+    <sysproperty key="pmfSaveName" value="${pmfSaveName}"/>
+    <sysproperty key="cfPropsFile" value="${cfPropsFile}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+    <sysproperty key="class" value="${class}"/>
+  </java>
+</target>
+
+<!-- Test FOStore insert with many instances
+-->
+<target name="Many">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Many" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="pmfLoadName" value="${pmfLoadName}"/>
+    <sysproperty key="pmfSaveName" value="${pmfSaveName}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<target name="Many.security">
+  <mkdir dir="${securityDir}"/>
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Many" >
+    <jvmarg value="-Djava.security.manager"/>
+    <sysproperty key="java.security.policy" value="JDO20Policy"/>
+    <sysproperty key="dir" value="${securityDir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test FOStore rollback of flushed new instances
+-->
+<target name="RollbackFlushedNew">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_RollbackFlushedNew" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="pmfLoadName" value="${pmfLoadName}"/>
+    <sysproperty key="pmfSaveName" value="${pmfSaveName}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore can insert and fetch instances.
+     Note that there are two separate tests!
+     Fetch2 inserts twice as many objects ast Fetch.
+-->
+<target name="Fetch">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Fetch" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- 
+-->
+<target name="Fetch2">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Fetch2" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+ </java>
+</target>
+
+
+<!-- Test that FOStore can fetch an instance inserted in by separted JVM
+     Note: Before running this test, run some other test that puts instances
+     into the database (e.g. Insert).
+-->
+<target name="FetchInserted">
+  <antcall target="Insert.silent.run"/> 
+  <antcall target="doFetchInserted.run">
+    <param name="shouldExist" value="true"/>
+  </antcall> 
+</target>
+
+<target name="doFetchInserted.run">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_FetchInserted" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="pmfLoadName" value="${pmfLoadName}"/>
+    <sysproperty key="pmfSaveName" value="${pmfSaveName}"/>
+    <sysproperty key="cfPropsFile" value="${cfPropsFile}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+    <sysproperty key="class" value="${class}"/>
+    <sysproperty key="shouldExist" value="${shouldExist}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore can get an object by its OID
+     Note that there are two separate tests!
+     GetObjectById2 does *not* extend AbstractTest; see it's javadoc.
+-->
+<target name="GetObjectById">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_GetObjectById" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<target name="GetObjectById2">
+  <antcall target="Insert.silent.run"/>
+  <antcall target="doGetObjectById2.run"/>
+</target>
+
+<target name="doGetObjectById2.run">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_GetObjectById2" >
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore can serially make a number of instances persistent
+-->
+<!-- Number of PM's to use serially for insertion -->
+<property name="serialInsert" value="50"/>
+<target name="SerialPMs">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}" 
+        classname="org.apache.jdo.test.Test_SerialPMs" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${serialInsert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore can make a number of instances persistent in parallel
+-->
+<target name="ParallelPMs">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_ParallelPMs" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="share" value="${share}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore can use optimistic transactions
+-->
+<target name="Optimistic">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Optimistic" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore works correctly when asked to fetch an instance by oid
+     which is known to *not* exist in the database
+-->
+<target name="NonExistent">
+  <antcall target="Insert.silent.run"/>
+  <antcall target="Delete.silent.run"/>
+  <antcall target="doFetchInserted.run">
+    <param name="shoudExists" value="false"/>
+  </antcall>
+</target>
+
+
+<!-- Test that FOStore can delete instances.
+-->
+<!-- Class of instances to delete for extent -->
+<property name="class" value="org.apache.jdo.pc.PCPoint"/>
+<target name="Delete">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Delete" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="class" value="${class}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<target name="Delete.silent.run">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Delete" >
+    <arg value="-silent"/> 
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="class" value="${class}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore can insert large objects
+-->
+<!-- Size of object to insert -->
+<property name="size" value="1000000"/>
+<target name="LargeObj">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_LargeObj" >
+    <arg value="${size}"/>
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStoe can store all the JDO-required primitives
+-->
+<target name="Primitives">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Primitives" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore can handle all the JDO-required, and FOStore-supported,
+     kinds of collections.
+-->
+<target name="Collections">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Collections">
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore correctly handles SCO instances.
+-->
+<target name="SCO">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_SCO" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore can handle arrays of primitives.
+-->
+<target name="Arrays">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Arrays" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore can handle arrays of references to PC instances
+-->
+<target name="RefArrays">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_RefArrays" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore can handle objects containing references to other where
+     the type of the reference in the referring class is an interface type.
+-->
+<target name="Interfaces">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}" 
+        classname="org.apache.jdo.test.Test_Interfaces" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore can handle a PC object which has references to other PC
+     objects.
+-->
+<target name="Rect">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Rect" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore can handle an instance which contains a collection of
+     references to PC's.
+-->
+<target name="Stroke">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Stroke" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore can handle PC instances which are mutually
+     referential.  In this case, the cycle's instances are of 2 different
+     types.
+-->
+<target name="Cycle">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Cycle" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore can get the extent of instances of a type.
+-->
+<!-- Class of instances whose extent we get -->
+<property name="class" value="org.apache.jdo.pc.PCPoint"/>
+
+<!-- If true, get subclass instances too -->
+<property name="subclasses" value="false"/>
+
+<!-- See GetExtentRequest.java -->
+<property name="maxInstances" value="100"/>
+<target name="Extent">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Extent" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+    <sysproperty key="class" value="${class}"/>
+    <sysproperty key="subclasses" value="${subclasses}"/>
+    <sysproperty key="maxInstances" value="${maxInstances}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore can handle the standard Employee/Department example.
+-->
+<target name="EmpDept">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_EmpDept" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore can handle the reachabilty algorithm
+-->
+<target name="Reachability">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}" 
+    classname="org.apache.jdo.test.Test_Reachability" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore can navigate from an instance to its fields.
+-->
+<target name="Navigate">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Navigate" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore can correctly update instances with different values.
+-->
+<target name="Update">
+  <!-- Change the values of those PCPoint instances' coordinates. -->
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Update" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="optimistic" value="${optimistic}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore can rollback a transaction.
+-->
+<target name="Rollback">
+  <!-- Rollback to update/delete of those PCPoint instances'. -->
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Rollback" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore can serialize an instance and read it back
+-->
+<target name="Serialize">
+  <!-- Serialize into a stream and read back a PCPoint instance'. -->
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Serialize" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore can serialize an instance with inheritance.
+-->
+<target name="SerializeInher">
+  <!-- Serialize into a stream and read back a PCFullTimeEmployee1 instance'. -->
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_SerializeInher" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore can serialize 
+-->
+<target name="SerializeComplex">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_SerializeComplex" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore can do nontransactional read/write
+-->
+<target name="NonTxAccess">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_NonTxAccess" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore can rollback and restore values.
+-->
+<target name="Insert2">
+  <!-- Create a new database with some PCPoint instances/ -->
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Insert2" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="false"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore can rollback and restore values.
+-->
+<target name="HollowUpdate">
+  <!-- Create a new database with some PCPoint instances/ -->
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_HollowUpdate" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="false"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that RI can correctly handle getObjectId and getTransactionalObjectId
+-->
+<target name="ObjectId">
+  <!-- Create a new database with some PCPoint instances/ -->
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_ObjectId" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="false"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore correctly handles String OIDs.
+-->
+<target name="StringOID">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_StringOID" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore correctly handles inheritance between classes.
+-->
+<target name="Inheritance">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Inheritance" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+
+<!-- Test that FOStore's serial UID mechanism allows for storing multiple
+     classes with the exact same class name but different persistent
+     structure.
+-->
+<target name="FSUID2">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_FSUID2" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+    <sysproperty key="jarfile" value="${jarfile}"/>
+  </java>
+</target>
+
+
+<!-- BugId 4510817
+-->
+<target name="4510817">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_4510817" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- BugId 4515265
+-->
+<target name="4515265">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_4515265" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+
+<!-- Test that FOStore can be used in managed environment with a container
+-->
+<target name="Container">
+  <java fork="yes" dir="${testdir}" classpath="${classpath};${jta}"
+        classname="org.apache.jdo.test.Test_Container">
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+  </java>
+</target>
+
+<!-- Test JDOQL queries
+-->
+<target name="Query">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Query">
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="name" value="FOStoreQueryDB"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore correctly handles rollback of instances with SCO fields.
+-->
+<target name="SCORollback">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_SCORollback" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="false"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore correctly handles SCO ArrayList instances in 
+     optimistic transaction.
+-->
+<target name="SCOArrayListOptimistic">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_SCOArrayListOptimistic" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="false"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore correctly handles SCO ArrayList instances.
+-->
+<target name="SCOArrayList">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_SCOArrayList" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="false"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore correctly handles SCO Date instances.
+-->
+<target name="SCODate">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_SCODate" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="false"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore correctly handles SCO HashMap instances.
+-->
+<target name="SCOHashMap">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_SCOHashMap" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="false"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore correctly handles SCO HashSet instances.
+-->
+<target name="SCOHashSet">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_SCOHashSet" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="false"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore correctly handles SCO Hashtable instances.
+-->
+<target name="SCOHashtable">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_SCOHashtable" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="false"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore correctly handles SCO LinkedList instances.
+-->
+<target name="SCOLinkedList">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_SCOLinkedList" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="false"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore correctly handles SCO SqlDate instances.
+-->
+<target name="SCOSqlDate">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_SCOSqlDate" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="false"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore correctly handles SCO TreeMap instances.
+-->
+<target name="SCOTreeMap">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_SCOTreeMap" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="false"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore correctly handles SCO TreeSet instances.
+-->
+<target name="SCOTreeSet">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}" 
+        classname="org.apache.jdo.test.Test_SCOTreeSet" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="false"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore correctly handles SCO Vector instances.
+-->
+<target name="SCOVector">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_SCOVector" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="false"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test WeakValueHashMap
+-->
+<target name="WeakValueHashMap">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_WeakValueHashMap"/>
+</target>
+
+<!-- Test WeakHashSet
+-->
+<target name="WeakHashSet">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}" 
+        classname="org.apache.jdo.test.Test_WeakHashSet"/>
+</target>
+
+<!-- Test that FOStore correctly handles simple App Identity operations
+-->
+<target name="AppId">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_AppId" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="false"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore correctly handles duplicate instances with App Identity.
+-->
+<target name="DupAppId">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_DupAppId" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="false"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore can detect null key values in a PC 
+     object with application identity.
+-->
+<target name="KeyFieldNull">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_KeyFieldNull" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore can handle a PC object which has references to other PC
+     objects with application identity.
+-->
+<target name="RectAppId">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}" 
+        classname="org.apache.jdo.test.Test_RectAppId" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore can handle a PC object which inherits from another PC
+     objects with application identity.
+-->
+<target name="EmpDeptAppId">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}" 
+        classname="org.apache.jdo.test.Test_EmpDeptAppId">
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that FOStore can handle a PC object which inherits from another PC
+     objects with application identity with 2 different PMF instances.
+-->
+<target name="EmpDeptAppIdExt" 
+    depends="EmpDeptAppId.insert, EmpDeptAppId.update, EmpDeptAppId.remove"/>
+
+<target name="EmpDeptAppId.insert">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_EmpDeptAppIdInsert" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<target name="EmpDeptAppId.update">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_EmpDeptAppIdUpdate" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="true"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<target name="EmpDeptAppId.remove">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_EmpDeptAppIdDelete" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="true"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that enhancer can correctly provide access to a field in a base
+     class via an instance of a derived class.
+-->
+<target name="PCDerived">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_PCDerived"/>
+</target>
+
+<!-- Test FOStore close PMF
+-->
+<target name="ClosePMF">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_ClosePMF" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="pmfLoadName" value="${pmfLoadName}"/>
+    <sysproperty key="pmfSaveName" value="${pmfSaveName}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!-- Test that we can save and load PMF's via JNDI.  Relies on other tests.
+-->
+
+<target name="JNDI">
+  <antcall target="Insert.silent.run"/>
+  <antcall target="doFetchInserted.run">
+    <param name="pmfSaveName" value="testJNDI"/>
+    <param name="shouldExist" value="true"/>
+    <param name="classpath" value="${classpath}:${jndi}"/>
+  </antcall>
+  <antcall target="doFetchInserted.run">
+    <param name="pmfLoadName" value="testJNDI"/>
+    <param name="shouldExist" value="true"/>
+    <param name="classpath" value="${classpath}:${jndi}"/>
+  </antcall>
+</target>
+
+<target name="JNDICF">
+  <antcall target="Insert.silent.run">
+    <param name="name" value="${cfdbname}"/>
+  </antcall>
+  <copy file="${basedir}/conf/CF.properties.sav" tofile="${testdir}/CF.properties" overwrite="true"/>
+  <echo file="${testdir}/CF.properties" append="true">org.apache.jdo.FOStoreConnectionFactory.option.URL=file:${cfdbname}</echo>
+  <antcall target="doFetchInserted.run">
+    <param name="cfPropsFile" value="CF.properties"/>
+    <param name="shouldExist" value="true"/>
+  </antcall>
+</target>
+
+<!-- Generator tests 
+-->
+
+<target name="Generator">
+  <ant dir="enhancer/sempdept" antfile="build.xml" target="all_gen" inheritAll="false">
+    <property name="jdo" value="${jdoapi}"/>
+    <property name="jdo-enhancer" value="${jdori}"/>
+    <property name="xerces" value="${xmlparser}"/>
+    <property name="verbose" value="${verbose}"/>
+  </ant>
+</target>
+
+<!-- Enhancer tests 
+-->
+
+<target name="Enhancer">
+  <ant dir="enhancer/sempdept" antfile="build.xml" target="compile" inheritAll="false">
+    <property name="jdo" value="${jdoapi}"/>
+    <property name="jdo-enhancer" value="${jdori}"/>
+    <property name="xerces" value="${xmlparser}"/>
+    <property name="verbose" value="${verbose}"/>
+  </ant>
+  <ant dir="enhancer/sempdept" antfile="build.xml" target="all_enh" inheritAll="false">
+    <property name="jdo" value="${jdoapi}"/>
+    <property name="jdo-enhancer" value="${jdori}"/>
+    <property name="xerces" value="${xmlparser}"/>
+    <property name="verbose" value="${verbose}"/>
+  </ant>
+</target>
+
+<!-- Tests that a Set/Map containing PC instances which have
+     a user-supplied hashCode() referencing persistent fields works.
+-->
+
+<target name="UserHashCode">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_UserHashCode" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!--
+-->
+<target name="OptimisticNullNotNull">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_OptimisticNullNotNull" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="insert" value="${insert}"/>
+    <sysproperty key="max" value="${max}"/>
+    <sysproperty key="verify" value="${verify}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="existing" value="${existing}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+<!--
+-->
+<target name="Freezer">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_Freezer"/>
+</target>
+
+<!--
+-->
+<target name="ClassRegistration">
+  <java fork="yes" dir="${testdir}" classpath="${jdoritests};${junit}"
+        classname="org.apache.jdo.test.Test_ClassRegistration" >
+    <sysproperty key="jdoapi" value="${jdoapi}"/>
+    <sysproperty key="pcclasses" value="${pcclasses}"/>
+  </java>
+</target>
+
+<!--
+-->
+<target name="EmpDeptSerialization">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.test.Test_EmpDeptSerialization" >
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+  </java>
+</target>
+
+                    <!-- UTILITIES/PROGRAMS -->
+                    <!-- UTILITIES/PROGRAMS -->
+                    <!-- UTILITIES/PROGRAMS -->
+
+<!-- Run FOStore as a server.  Above tests can then be run, specifying a port
+     and/or host, and can communicate with the running server.
+-->
+<target name="Server">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.impl.fostore.Main" >
+    <sysproperty key="port" value="${port}"/>
+    <sysproperty key="backlog" value="${backlog}"/>
+    <sysproperty key="timeout" value="${timeout}"/>
+    <sysproperty key="root" value="${root}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+  </java>
+</target>
+
+
+<!-- Get information from a FOStore database
+-->
+<!-- Kind of information to be retrieved. -->
+<property name="option" value="dbInfo"/>
+
+<!-- Comma separated list of names of classes for which information is to be
+     retrieved (not used with all kinds of information requests). -->
+<property name="class" value="org.apache.jdo.pc.PCPoint"/>
+
+<!-- If true, prints out only the database name, not entire path -->
+<property name="shortname" value="false"/>
+
+<target name="Dumper" depends="Dumper.run"/>
+
+<target name="Dumper.run">
+  <java fork="yes" dir="${testdir}" classpath="${classpath}"
+        classname="org.apache.jdo.impl.fostore.Dumper" >
+    <sysproperty key="port" value="${port}"/>
+    <sysproperty key="backlog" value="${backlog}"/>
+    <sysproperty key="timeout" value="${timeout}"/>
+    <sysproperty key="root" value="${root}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="dumpOption" value="${option}"/>
+    <sysproperty key="classNames" value="${class}"/>
+    <sysproperty key="dbinfo.shortname" value="${shortname}"/>
+  </java>
+</target>
+
+<!-- Dump an extent
+-->
+<!-- Class of instances whose extent we get -->
+<property name="class" value="org.apache.jdo.pc.PCPoint"/>
+
+<!-- If true, get subclass instances too -->
+<property name="subclasses" value="false"/>
+
+<target name="DumpExtent">
+  <java fork="yes" dir="${testdir}" classname="org.apache.jdo.test.util.DumpExtent" classpath="${classpath}">
+    <sysproperty key="dir" value="${dir}"/>
+    <sysproperty key="name" value="${name}"/>
+    <sysproperty key="status.verbose" value="${status.verbose}"/>
+    <sysproperty key="host" value="${host}"/>
+    <sysproperty key="port" value="${port}"/>
+    <sysproperty key="class" value="${class}"/>
+    <sysproperty key="subclasses" value="${subclasses}"/>
+  </java>
+</target>
+
+                    <!-- TEMP -->
+                    <!-- TEMP -->
+                    <!-- TEMP -->
+
+<target name="dump">
+   <echo message="testlist=${testlist}"/>
+   <echo message="jdoapi=${jdoapi}"/>
+   <echo message="jdobtree=${jdobtree}"/>
+   <echo message="builddir=${builddir}"/>
+   <echo message="junit=${junit}"/>
+   <echo message="pcclasses=${pcclasses}"/>
+   <echo message="jarfile=${jarfile}"/>
+</target>
+
+</project>

Added: incubator/jdo/trunk/ri11/xdocs/index.xml
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/xdocs/index.xml?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/xdocs/index.xml (added)
+++ incubator/jdo/trunk/ri11/xdocs/index.xml Fri Mar 18 17:02:29 2005
@@ -0,0 +1,27 @@
+<?xml version="1.0"?>
+
+<document>
+
+  <properties>
+    <title>JDO API</title>
+    <author email="mbo.tech@spree.de">Michael Bouschen</author>
+  </properties>
+
+  <body>
+
+    <section name="JDO API">
+      <p>The Java Data Objects (JDO) API is a standard interface-based 
+Java model abstraction of persistence, developed as 
+<a href="http://www.jcp.org/en/jsr/detail?id=12">Java Specification 
+Request 12</a> under the auspices of the <a href="http://www.jcp.org">
+Java Community Process</a>.
+      </p>
+      <p>
+This project implements the public interfaces, helper classes and exceptions 
+as specified in the JDO specification. They are indented to be shared by all 
+JDO implementations. 
+      </p>
+    </section>
+
+  </body>
+</document>

Added: incubator/jdo/trunk/ri11/xdocs/navigation.xml
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/xdocs/navigation.xml?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/xdocs/navigation.xml (added)
+++ incubator/jdo/trunk/ri11/xdocs/navigation.xml Fri Mar 18 17:02:29 2005
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<project name="JDO API">
+
+  <title>JDO API</title>
+
+  <body>
+    <menu name="JCP Links">
+      <item name="JDO 1.0 JSR-12" href="http://www.jcp.org/en/jsr/detail?id=12"/>
+      <item name="JDO 2.0 JSR-243" href="http://www.jcp.org/en/jsr/detail?id=243"/>
+    </menu>
+  </body>
+</project>



Mime
View raw message