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 [59/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:13 GMT
Added: incubator/jdo/trunk/ri11/test/conf/jndi.properties
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/conf/jndi.properties?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/conf/jndi.properties (added)
+++ incubator/jdo/trunk/ri11/test/conf/jndi.properties Fri Mar 18 17:02:29 2005
@@ -0,0 +1,17 @@
+#
+# 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.
+
+java.naming.factory.initial=com.sun.jndi.fscontext.RefFSContextFactory
+java.naming.provider.url=file:.

Added: incubator/jdo/trunk/ri11/test/conf/logging.properties
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/conf/logging.properties?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/conf/logging.properties (added)
+++ incubator/jdo/trunk/ri11/test/conf/logging.properties Fri Mar 18 17:02:29 2005
@@ -0,0 +1,68 @@
+#
+# 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.
+
+#
+# This is a sample properties file to configure standard JDK 1.4 logging for 
+# the JDO RI sources and test cases. Below you find an entry for each of the
+# JDO RI source and test logger instances. Please uncomment the line and adapt
+# the log level to your needs, in case to want to enable a particular logger.
+#
+# The following describes the mapping between the log level of JDK 1.4 logging
+# and apache commns logging:
+#   JDK 1.4        Apache 
+#   FINEST         trace 
+#   FINE, FINER    debug 
+#   INFO, CONFIG   info
+#   WARNING        warn
+#   SEVERE         error, fatal
+#
+
+######################
+# JDORI test cases
+######################
+
+#org.apache.jdo.test.level = FINE
+
+######################
+# JDORI sources
+######################
+
+# FOStore logger
+#org.apache.jdo.impl.fostore.level = FINE
+# JDOQL query logger
+#org.apache.jdo.impl.jdoql.level = FINE
+# JDOQL query compiler logger
+#org.apache.jdo.impl.jdoql.jdoqlc.level = FINE
+# JDOModel logger
+#org.apache.jdo.impl.model.jdo.level = FINE
+# XML parser logger
+#org.apache.jdo.impl.model.jdo.xml.level = FINE
+# PM and PMF logger
+#org.apache.jdo.impl.pm.level = FINE
+# SCO logger
+#org.apache.jdo.impl.sco.level = FINE
+# StateManager logger
+#org.apache.jdo.impl.state.level = FINE
+# Generic StoreManager logger
+#org.apache.jdo.store.level = FINE
+# Utility class logger
+#org.apache.jdo.util.level = FINE
+
+######################
+# JDK 1.4 logging properties
+######################
+
+handlers = java.util.logging.ConsoleHandler
+java.util.logging.ConsoleHandler.level = FINEST

Added: incubator/jdo/trunk/ri11/test/conf/simplelog.properties
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/conf/simplelog.properties?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/conf/simplelog.properties (added)
+++ incubator/jdo/trunk/ri11/test/conf/simplelog.properties Fri Mar 18 17:02:29 2005
@@ -0,0 +1,59 @@
+#
+# 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.
+
+#
+# This is a sample properties file to configure apache commons logging SimpleLog
+# implementation for the JDO RI sources and test cases. Below you find an entry
+# for each of the JDO RI source and test logger instances. Please uncomment the
+# line and adapt the log level to your needs, in case to want to enable
+# a particular logger.
+#
+
+######################
+# JDORI test cases
+######################
+
+#org.apache.commons.logging.simplelog.log.org.apache.jdo.test = debug
+
+######################
+# JDORI sources 
+######################
+
+# FOStore logger
+#org.apache.commons.logging.simplelog.log.org.apache.jdo.impl.fostore = debug
+# JDOQL query logger
+#org.apache.commons.logging.simplelog.log.org.apache.jdo.impl.jdoql = debug
+# JDOQL query compiler logger
+#org.apache.commons.logging.simplelog.log.org.apache.jdo.impl.jdoql.jdoqlc = debug
+# JDOModel logger
+#org.apache.commons.logging.simplelog.log.org.apache.jdo.impl.model.jdo = debug
+# XML parser logger
+#org.apache.commons.logging.simplelog.log.org.apache.jdo.impl.model.jdo.xml = debug
+# PM and PMF logger
+#org.apache.commons.logging.simplelog.log.org.apache.jdo.impl.pm = debug
+# SCO logger
+#org.apache.commons.logging.simplelog.log.org.apache.jdo.impl.sco = debug
+# StateManager logger
+#org.apache.commons.logging.simplelog.log.org.apache.jdo.impl.state = debug
+# Generic StoreManager logger
+#org.apache.commons.logging.simplelog.log.org.apache.jdo.store = debug
+# Utility class logger
+#org.apache.commons.logging.simplelog.log.org.apache.jdo.util = debug
+
+######################
+# default logging level
+######################
+
+org.apache.commons.logging.simplelog.defaultlog = error

Added: incubator/jdo/trunk/ri11/test/conf/tests.list
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/conf/tests.list?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/conf/tests.list (added)
+++ incubator/jdo/trunk/ri11/test/conf/tests.list Fri Mar 18 17:02:29 2005
@@ -0,0 +1,97 @@
+#
+# Note the following tests should not be added to the list, 
+# because they need to be run separately 
+# (see target test.all in build.xml):
+# 
+# - org.apache.jdo.test.Test_FetchInserted: 
+#     needs an existing datastore, created by a run in a separate JVM
+# - JNDI test and JNDICF test:
+#     needs an existing datastore, created by a run in a separate JVM
+# - org.apache.jdo.test.Test_GetObjectById2
+# - NonExistent
+# - EmpDeptAppIdExt: 
+#   starts the EmpDeptAppId tests insert, update, delete in separate JVMs
+#   implemented by Test_EmpDeptAppIdInsert, Test_EmpDeptAppIdUpadte, and 
+#   Test_EmpDeptAppIdDelete
+# - Generator
+# - Enhancer
+
+#fostore/Test_Dumper		Test_Rect
+
+org.apache.jdo.test.Test_JDOModel
+org.apache.jdo.impl.fostore.Test_Transcriber
+org.apache.jdo.impl.fostore.Test_FSUID
+org.apache.jdo.test.Test_ActivateClass
+org.apache.jdo.test.Test_Insert
+org.apache.jdo.test.Test_Many
+org.apache.jdo.test.Test_RollbackFlushedNew
+org.apache.jdo.test.Test_Fetch
+org.apache.jdo.test.Test_Fetch2
+org.apache.jdo.test.Test_Arrays
+org.apache.jdo.test.Test_RefArrays
+org.apache.jdo.test.Test_Interfaces
+org.apache.jdo.test.Test_Rect
+org.apache.jdo.test.Test_Primitives
+org.apache.jdo.test.Test_Stroke
+org.apache.jdo.test.Test_Cycle
+org.apache.jdo.test.Test_SCO
+org.apache.jdo.test.Test_Collections
+org.apache.jdo.test.Test_SCORollback
+org.apache.jdo.test.Test_SCOArrayList
+org.apache.jdo.test.Test_SCOArrayListOptimistic
+org.apache.jdo.test.Test_SCODate
+org.apache.jdo.test.Test_SCOHashMap
+org.apache.jdo.test.Test_SCOHashSet
+org.apache.jdo.test.Test_SCOHashtable
+org.apache.jdo.test.Test_SCOLinkedList
+org.apache.jdo.test.Test_SCOSqlDate
+org.apache.jdo.test.Test_SCOTreeMap
+org.apache.jdo.test.Test_SCOTreeSet
+org.apache.jdo.test.Test_SCOVector
+org.apache.jdo.test.Test_GetObjectById
+org.apache.jdo.test.Test_SerialPMs
+org.apache.jdo.test.Test_ParallelPMs
+org.apache.jdo.test.Test_Delete
+org.apache.jdo.test.Test_RectAppId
+org.apache.jdo.test.Test_EmpDeptAppId
+org.apache.jdo.test.Test_Extent
+org.apache.jdo.test.Test_EmpDeptSerialization
+org.apache.jdo.test.Test_HollowUpdate
+org.apache.jdo.test.Test_Reachability
+org.apache.jdo.test.Test_EmpDept
+org.apache.jdo.test.Test_Navigate
+org.apache.jdo.test.Test_LargeObj
+org.apache.jdo.test.Test_Update
+org.apache.jdo.test.Test_Rollback
+org.apache.jdo.test.Test_Serialize
+org.apache.jdo.test.Test_SerializeInher
+org.apache.jdo.test.Test_SerializeComplex
+org.apache.jdo.test.Test_NonTxAccess
+org.apache.jdo.test.Test_Insert2
+org.apache.jdo.test.Test_ObjectId
+org.apache.jdo.test.Test_Container
+org.apache.jdo.test.Test_Inheritance
+org.apache.jdo.test.Test_StringOID
+org.apache.jdo.test.Test_Optimistic
+org.apache.jdo.test.Test_FSUID2
+org.apache.jdo.test.Test_LifeCycle
+org.apache.jdo.test.Test_LifeCycle_RetF
+org.apache.jdo.test.Test_LifeCycle_Opt
+org.apache.jdo.test.Test_LifeCycle_RetFOpt
+org.apache.jdo.test.Test_NegAll
+org.apache.jdo.test.Test_PMFProperties
+org.apache.jdo.test.Test_Query
+org.apache.jdo.test.Test_4510817
+org.apache.jdo.test.Test_4515265
+org.apache.jdo.test.Test_WeakHashSet
+org.apache.jdo.test.Test_WeakValueHashMap
+org.apache.jdo.test.Test_AppId
+org.apache.jdo.test.Test_DupAppId
+org.apache.jdo.test.Test_PCDerived
+org.apache.jdo.test.Test_ClosePMF
+org.apache.jdo.test.Test_KeyFieldNull
+org.apache.jdo.test.Test_UserHashCode
+org.apache.jdo.test.Test_OptimisticNullNotNull
+org.apache.jdo.test.Test_Freezer
+org.apache.jdo.test.Test_ClassRegistration
+org.apache.jdo.test.Test_6214617

Added: incubator/jdo/trunk/ri11/test/enhancer/common.xml
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/enhancer/common.xml?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/enhancer/common.xml (added)
+++ incubator/jdo/trunk/ri11/test/enhancer/common.xml Fri Mar 18 17:02:29 2005
@@ -0,0 +1,255 @@
+<!--
+   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.
+-->
+
+  <!-- libs -->
+  <property name="jdo"  value="../../../src/jdo.jar"/>
+  <property name="jdo-enhancer"  value="../../../src/jdo-enhancer.jar"/>
+  <property name="logging"  value="../../../release/lib/ext/commons-logging.jar"/>
+  <property name="xerces"  value="../../../release/lib/ext/xerces.jar"/>
+
+  <!-- subdirectories -->
+  <property name="src"  value="src"/> 
+  <property name="cls"  value="cls"/> 
+  <property name="gen"  value="gen"/> 
+  <property name="enh"  value="enh"/>
+
+  <!-- subdirectories -->
+  <property name="debug"  value="on"/> 
+
+  <!-- classpath -->
+  <path id="tools.class.path">
+    <pathelement location="${jdo}"/>
+    <pathelement location="${jdo-enhancer}"/>
+    <pathelement location="${logging}"/>
+    <pathelement location="${xerces}"/>
+  </path>
+
+  <target name="clean">
+    <delete dir="${cls}"/>
+    <delete dir="${gen}"/>
+    <delete dir="${enh}"/>
+  </target>
+
+  <target name="mrproper" depends="clean">
+    <delete>
+      <fileset dir="." defaultexcludes="no">
+        <include name="**/*.*~"/>
+      </fileset>
+    </delete>
+  </target>
+
+  <target name="init_compile_common">
+    <mkdir dir="${cls}"/>
+  </target>
+
+  <target name="init_enhance_common">
+    <!-- <delete dir="${enh}"/> -->
+    <mkdir dir="${enh}"/>
+  </target>
+
+  <target name="init_generate_common">
+    <delete dir="${gen}"/>
+    <!-- <mkdir dir="${gen}"/> -->
+  </target>
+
+  <target name="compile_common" depends="init_compile_common">
+    <javac srcdir="${src}" destdir="${cls}" debug="${debug}"
+     classpathref="tools.class.path"/>
+  </target>
+
+  <target name="generate_common" depends="init_generate_common">
+    <java classname="org.apache.jdo.impl.enhancer.generator.Main"
+     fork="yes" failonerror="yes" classpathref="tools.class.path">
+      <arg line="-d ${gen} --properties ${jdoproperties}"/>
+    </java>
+
+    <javac srcdir="${gen}" destdir="${gen}" debug="${debug}"
+     classpathref="tools.class.path"/>
+  </target>
+
+  <target name="enhance_common" depends="compile_common,init_enhance_common,arg.verbose">
+    <java classname="org.apache.jdo.enhancer.EnhancerMain"
+     fork="yes" failonerror="yes" classpathref="tools.class.path">
+      <arg line="${arg.verbose}"/>
+      <arg line="-f -d ${enh}"/>
+<!--  disable calling the enhancer with jdopropeties for now
+      <arg line="- -properties ${jdoproperties}"/> 
+-->
+      <arg line="-j"/>
+      <arg path="${src}:${cls}:${jdo}"/>
+      <arg line="-s"/>
+      <arg path="${cls}"/>
+      <arg line="${classes0}"/>
+    </java>
+  </target>
+
+  <target name="enh0_common" depends="compile_common,init_enhance_common,arg.verbose">
+    <java classname="org.apache.jdo.enhancer.Main"
+     fork="yes" failonerror="yes" classpathref="tools.class.path">
+      <arg line="${arg.verbose}"/>
+      <arg line="-f -d ${enh}"/>
+<!--  disable calling the enhancer with jdopropeties for now
+      <arg line="- -properties ${jdoproperties}"/>
+-->
+      <arg line="-s ${cls}:${jdo}"/>
+      <arg line="${classes0}"/>
+    </java>
+  </target>
+
+  <target name="enh1_common" depends="compile_common,init_enhance_common,arg.verbose">
+    <java classname="org.apache.jdo.enhancer.Main"
+     fork="yes" failonerror="yes" classpathref="tools.class.path">
+      <arg line="${arg.verbose}"/>
+      <arg line="-f -s ${src} -d ${enh} ${classes0}"/>
+    </java>
+  </target>
+
+  <target name="javap_src_common" depends="compile_common">
+    <exec executable="javap" dir="." output="${cls}/${outjavap}"
+     failonerror="yes">
+      <arg line="-classpath"/>
+      <arg path="${cls}:${jdo}"/>
+      <arg line="-c -private"/>
+      <arg line="${classes1}"/>
+    </exec>
+  </target>
+
+  <target name="javap_gen_common">
+    <exec executable="javap" dir="." output="${gen}/${outjavap}"
+     failonerror="yes">
+      <arg line="-classpath"/>
+      <arg path="${gen}:${jdo}"/>
+      <arg line="-c -private"/>
+      <arg line="${classes1}"/>
+    </exec>
+  </target>
+
+  <target name="javap_enh_common">
+    <exec executable="javap" dir="." output="${enh}/${outjavap}"
+     failonerror="yes">
+      <arg line="-classpath"/>
+      <arg path="${enh}:${jdo}"/>
+      <arg line="-c -private"/>
+      <arg line="${classes1}"/>
+    </exec>
+  </target>
+
+  <target name="dis_gen_common" depends="arg.verbose">
+    <java classname="org.apache.jdo.impl.enhancer.util.Disassembler"
+     fork="yes" classpathref="tools.class.path" failonerror="yes"
+     output="${gen}/${outdis}">
+      <arg line="${arg.verbose}"/>
+      <arg line="-s"/>
+      <arg path="${gen}"/>
+      <arg line="${classes0}"/>
+    </java>
+  </target>
+
+  <target name="dis_enh_common" depends="arg.verbose">
+    <java classname="org.apache.jdo.impl.enhancer.util.Disassembler"
+     fork="yes" classpathref="tools.class.path" failonerror="yes"
+      output="${enh}/${outdis}">
+      <arg line="${arg.verbose}"/>
+      <arg line="-s"/>
+      <arg path="${enh}"/>
+      <arg line="${classes0}"/>
+    </java>
+  </target>
+
+  <target name="test_aug_gen_common" depends="arg.verbose">
+    <java classname="org.apache.jdo.impl.enhancer.util.AugmentationTest"
+     fork="yes" failonerror="yes" classpathref="tools.class.path">
+      <arg line="${arg.verbose}"/>
+      <arg line="-j"/>
+      <arg path="${src}:${gen}:${jdo}"/>
+      <arg line="-s"/>
+      <arg path="${gen}:${jdo}"/>
+      <arg line="${classes0}"/>
+    </java>
+  </target>
+
+  <target name="test_aug_enh_common" depends="arg.verbose">
+    <java classname="org.apache.jdo.impl.enhancer.util.AugmentationTest"
+     fork="yes" failonerror="yes" classpathref="tools.class.path">
+      <arg line="${arg.verbose}"/>
+      <arg line="-j"/>
+      <arg path="${src}:${cls}:${jdo}"/>
+      <arg line="-s"/>
+      <arg path="${enh}:${jdo}"/>
+      <arg line="${classes0}"/>
+    </java>
+  </target>
+
+  <target name="test_ann_gen_common" depends="arg.verbose">
+    <java classname="org.apache.jdo.impl.enhancer.util.AnnotationTest" fork="yes"
+     classpathref="tools.class.path" failonerror="yes">
+      <arg line="${arg.verbose}"/>
+      <arg line="-j"/>
+      <arg path="${src}:${gen}:${jdo}"/>
+      <arg line="-s"/>
+      <arg path="${gen}:${jdo}"/>
+      <arg line="${classes0}"/>
+    </java>
+  </target>
+
+  <target name="test_ann_enh_common" depends="arg.verbose">
+    <java classname="org.apache.jdo.impl.enhancer.util.AnnotationTest" fork="yes"
+     classpathref="tools.class.path" failonerror="yes">
+      <arg line="${arg.verbose}"/>
+      <arg line="-j"/>
+      <arg path="${src}:${cls}:${jdo}"/>
+      <arg line="-s"/>
+      <arg path="${enh}:${jdo}"/>
+      <arg line="${classes0}"/>
+    </java>
+  </target>
+
+  <target name="test_aug_diff_common" depends="generate_common,enhance_common,arg.verbose">
+    <java classname="org.apache.jdo.impl.enhancer.util.AugmentationDiffTest"
+     fork="yes" classpathref="tools.class.path" failonerror="yes">
+      <arg line="${arg.verbose}"/>
+      <arg line="${gen}/**/*.class"/>
+      <arg line="${enh}/**/*.class"/>
+    </java>
+  </target>
+
+  <target name="compile" depends="compile_common"/>
+  <target name="generate" depends="generate_common"/>
+  <target name="enhance" depends="enhance_common"/>
+  <target name="javap_gen" depends="javap_gen_common"/>
+  <target name="javap_enh" depends="javap_enh_common"/>
+  <target name="dis_gen" depends="dis_gen_common"/>
+  <target name="dis_enh" depends="dis_enh_common"/>
+  <target name="test_aug_gen" depends="test_aug_gen_common"/>
+  <target name="test_aug_enh" depends="test_aug_enh_common"/>
+  <target name="test_ann_gen" depends="test_ann_gen_common"/>
+  <target name="test_ann_enh" depends="test_ann_enh_common"/>
+
+  <target name="all_gen" depends="generate,javap_gen,dis_gen,test_aug_gen,test_ann_gen"/>
+  <target name="all_enh" depends="compile,enhance,javap_enh,dis_enh,test_aug_enh,test_ann_enh"/>
+  <target name="all" depends="all_gen,all_enh"/>
+
+  <target name="arg.verbose">
+    <condition property="arg.verbose" value="-v">
+        <or>
+          <istrue value="${verbose}"/>
+          <not> <isset property="verbose"/> </not>
+        </or>
+    </condition>
+    <condition property="arg.verbose" value="">
+        <isfalse value="${verbose}"/>
+    </condition>
+  </target>

Added: incubator/jdo/trunk/ri11/test/enhancer/sempdept/build.xml
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/enhancer/sempdept/build.xml?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/enhancer/sempdept/build.xml (added)
+++ incubator/jdo/trunk/ri11/test/enhancer/sempdept/build.xml Fri Mar 18 17:02:29 2005
@@ -0,0 +1,70 @@
+<?xml version="1.0"?>
+
+<!--
+    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.
+-->
+
+
+<!DOCTYPE project [ <!ENTITY IncludeCommonFile SYSTEM "../common.xml"> ]>
+
+<project name="SEmpDept" default="all" basedir=".">
+
+  <!-- include common.xml -->
+  &IncludeCommonFile;
+
+  <property name="classes0" value="empdept.Department empdept.Department$$Oid empdept.Employee empdept.Employee$$Oid empdept.FullTimeEmployee empdept.PartTimeEmployee empdept.PartTimeEmployee$$Oid"/>
+
+  <property name="classes1" value="empdept.Department empdept.Department.Oid empdept.Employee empdept.Employee.Oid empdept.PartTimeEmployee empdept.PartTimeEmployee.Oid"/>
+
+  <property name="jdoproperties" value="${src}/empdept.jdoproperties"/>
+  <property name="jdo" value="${src}/empdept/package.jdo"/>
+
+  <property name="outjavap" value="output.javap"/>
+  <property name="outdis" value="output.dis"/>
+
+  <target name="enhance_files" depends="compile_common,init_enhance_common,arg.verbose">
+    <java classname="org.apache.jdo.enhancer.EnhancerMain"
+     fork="yes" failonerror="yes" classpathref="tools.class.path">
+      <arg line="${arg.verbose}"/>
+      <arg line="-f -d ${enh}"/>
+      <arg line="-j"/>
+      <arg path="${src}:${cls}:${jdo}"/>
+<!-- disable calling the enhancer with jdopropeties for now
+      <arg line="- -properties ${jdoproperties}"/>
+-->
+      <arg line="${cls}/empdept/Department.class ${cls}/empdept/Department$$Oid.class ${cls}/empdept/Employee.class ${cls}/empdept/Employee$$Oid.class"/>
+    </java>
+  </target>
+
+  <target name="dis_enh_files" depends="arg.verbose">
+    <java classname="org.apache.jdo.impl.enhancer.util.Disassembler"
+     fork="yes" classpathref="tools.class.path" failonerror="yes"
+      output="${enh}/${outdis}">
+      <arg line="${arg.verbose}"/>
+      <arg line="${enh}/empdept/Department.class ${enh}/empdept/Department$$Oid.class ${enh}/empdept/Employee.class ${enh}/empdept/Employee$$Oid.class"/>
+    </java>
+  </target>
+
+  <target name="test_ann_enh_files" depends="arg.verbose">
+    <java classname="org.apache.jdo.enhancer.util.AnnotationTest"
+     fork="yes" failonerror="yes" classpathref="tools.class.path">
+      <arg line="${arg.verbose}"/>
+      <arg line="-j"/>
+      <arg path="${src}:${cls}:${jdo}"/>
+      <arg line="${enh}/empdept/Department.class ${enh}/empdept/Department$$Oid.class ${enh}/empdept/Employee.class ${enh}/empdept/Employee$$Oid.class"/>
+    </java>
+  </target>
+
+</project>

Added: incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept.jdoproperties
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept.jdoproperties?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept.jdoproperties (added)
+++ incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept.jdoproperties Fri Mar 18 17:02:29 2005
@@ -0,0 +1,35 @@
+# Classnames can have the following attributes: 
+#          jdo:{persistent|transactional} 
+#          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} 
+
+empdept.Department=jdo:persistent,oid:empdept.Department$Oid,access:public
+empdept.Department#deptid=type:int,jdo:persistent,access:private,annotation:key
+empdept.Department#name=type:String,jdo:persistent,access:private,annotation:dfg
+empdept.Department#employees=type:java.util.Collection,jdo:persistent,access:private,annotation:mediated
+
+empdept.Employee=jdo:persistent,oid:empdept.Employee$Oid,access:public
+empdept.Employee#empid=type:long,jdo:persistent,access:private,annotation:key
+empdept.Employee#name=type:String,jdo:persistent,access:private,annotation:dfg
+empdept.Employee#department=type:empdept.Department,jdo:persistent,access:private,annotation:mediated
+empdept.Employee#birthdate=type:java.util.Date,jdo:persistent,access:private,annotation:mediated
+
+empdept.FullTimeEmployee=jdo:persistent,super:empdept.Employee,access:public
+empdept.FullTimeEmployee#salary=type:double,jdo:persistent,access:private,annotation:dfg
+
+empdept.PartTimeEmployee=jdo:persistent,super:empdept.Employee,oid:empdept.PartTimeEmployee$Oid,access:public
+empdept.PartTimeEmployee#cid=type:int,jdo:persistent,access:private,annotation:key
+empdept.PartTimeEmployee#wage=type:double,jdo:persistent,access:private,annotation:dfg
+
+empdept.Department$Oid=jdo:transient,access:public
+empdept.Department$Oid#deptid=type:int,jdo:transient,access:public
+empdept.Employee$Oid=jdo:transient,access:public
+empdept.Employee$Oid#empid=type:long,jdo:transient,access:public
+empdept.PartTimeEmployee$Oid=jdo:transient,super:empdept.Employee$Oid,access:public
+empdept.PartTimeEmployee$Oid#cid=type:long,jdo:transient,access:public

Added: incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/Department.java
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/Department.java?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/Department.java (added)
+++ incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/Department.java Fri Mar 18 17:02:29 2005
@@ -0,0 +1,99 @@
+/*
+ * 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.
+ */
+
+package empdept;
+
+import java.util.Collection;
+
+
+/**
+ * A sample department class.
+ */
+public class Department {
+    private int deptid;
+    private String name;
+    private Collection employees;
+
+    public Department() {
+    }
+
+    public Department(String str) {
+        super();
+    }
+
+    public Object clone() throws java.lang.CloneNotSupportedException {
+        // clone() method for enhancer testing purpose
+        final empdept.Department pc = (empdept.Department)super.clone();
+        pc.deptid = this.deptid;
+        pc.employees = this.employees;
+        pc.name = this.name;
+        return pc;
+    }
+
+    public int getDeptid() {
+        return deptid;
+    }
+    
+    public void setDeptid(int deptid) {
+        this. deptid = deptid;
+    }
+    
+    public String getName() {
+        return name;
+    }
+    
+    public void setName(String name) {
+        this. name = name;
+    }
+    
+    public Collection getEmployees() {
+        return employees;
+    }
+    
+    public void setEmployees(Collection employees) {
+        this. employees = employees;
+    }
+    
+    public static class Oid
+        implements java.io.Serializable {
+        public int deptid;
+    
+        public Oid() {
+            super();
+        }
+    
+        public Oid(String str) {
+            // not implemented yet
+            throw new UnsupportedOperationException();
+        }
+    
+        public int hashCode() {
+            int hash = 0;
+            hash += (int)deptid;
+            return hash;
+        }
+    
+        public boolean equals(java.lang.Object pk) {
+            if (pk == null || !this.getClass().equals(pk.getClass())) {
+                return false;
+            }
+            Oid oid = (Oid)pk;
+            if (this.deptid != oid.deptid) return false;
+            return true;
+        }
+    }    
+}
+

Added: incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/Employee.java
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/Employee.java?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/Employee.java (added)
+++ incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/Employee.java Fri Mar 18 17:02:29 2005
@@ -0,0 +1,110 @@
+/*
+ * 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.
+ */
+
+package empdept;
+
+import java.util.Collection;
+import java.util.Date;
+
+/**
+ * A sample employee class.
+ */
+public class Employee {
+    private long empid;    
+    private String name;
+    private Date birthdate;
+    private Department department;    
+    
+    public Employee() {
+    }
+
+    public Employee(String str) {
+        super();
+    }
+
+    public Object clone() throws java.lang.CloneNotSupportedException {
+        // clone() method for enhancer testing purpose
+        final empdept.Employee pc = (empdept.Employee)super.clone();
+        pc.birthdate = this.birthdate;
+        pc.department = this.department;
+        pc.empid = this.empid;
+        pc.name = this.name;
+        return pc;
+    }
+
+    public long getEmpid() {
+        return empid;
+    }
+    
+    public void setEmpid(long empid) {
+        this.empid = empid;
+    }
+
+    public String setName() {
+        return name;
+    }
+    
+    public void setName(String name) {
+        this.name = name;
+    }
+    
+    public java.util.Date getBirthdate() {
+        return birthdate;
+    }
+    
+    public void setBirthdate(Date birthdate) {
+        this.birthdate = birthdate;
+    }
+    
+    public Department getDepartment() {
+        return department;
+    }
+    
+    public void setDepartment(Department department) {
+        this.department = department;
+    }
+    
+    public static class Oid
+        implements java.io.Serializable {
+        public long empid;
+    
+        public Oid() {
+            super();
+        }
+    
+        public Oid(String str) {
+            // not implemented yet
+            throw new UnsupportedOperationException();
+        }
+    
+        public int hashCode() {
+            int hash = 0;
+            hash += (int)empid;
+            return hash;
+        }
+    
+        public boolean equals(java.lang.Object pk) {
+            if (pk == null || !this.getClass().equals(pk.getClass())) {
+                return false;
+            }
+            Oid oid = (Oid)pk;
+            if (this.empid != oid.empid) return false;
+            return true;
+        }
+    
+    }    
+}
+

Added: incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/FullTimeEmployee.java
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/FullTimeEmployee.java?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/FullTimeEmployee.java (added)
+++ incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/FullTimeEmployee.java Fri Mar 18 17:02:29 2005
@@ -0,0 +1,47 @@
+/*
+ * 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.
+ */
+
+package empdept;
+
+
+/**
+ * A sample employee subclass.
+ */
+public class FullTimeEmployee extends Employee {
+    private double salary;
+    
+    public FullTimeEmployee() {
+    }
+    
+    public FullTimeEmployee(String str) {
+        super();
+    }
+
+    public Object clone() throws java.lang.CloneNotSupportedException {
+        // clone() method for enhancer testing purpose
+        final empdept.FullTimeEmployee pc = (empdept.FullTimeEmployee)super.clone();
+        pc.salary = this.salary;
+        return pc;
+    }
+
+    public double getSalary() {
+        return salary;
+    }
+    
+    public void setSalary(double salary) {
+        this.salary = salary;
+    }
+}

Added: incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/PartTimeEmployee.java
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/PartTimeEmployee.java?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/PartTimeEmployee.java (added)
+++ incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/PartTimeEmployee.java Fri Mar 18 17:02:29 2005
@@ -0,0 +1,90 @@
+/*
+ * 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.
+ */
+
+package empdept;
+
+
+/**
+ * A sample employee subclass.
+ */
+public class PartTimeEmployee extends Employee {
+    private int cid;
+    private double wage;
+    
+    public PartTimeEmployee() {
+    }
+    
+    public PartTimeEmployee(String str) {
+        super();
+    }
+
+    public Object clone() throws java.lang.CloneNotSupportedException {
+        // clone() method for enhancer testing purpose
+        final empdept.PartTimeEmployee pc = (empdept.PartTimeEmployee)super.clone();
+        pc.cid = this.cid;
+        pc.wage = this.wage;
+        return pc;
+    }
+
+    public int getCid()
+    {
+        return this.cid;
+    }
+
+    public void setCid(int cid)
+    {
+        this.cid = cid;
+    }
+
+    public double getWage() {
+        return wage;
+    }
+    
+    public void setWage(double wage) {
+        this.wage = wage;
+    }
+
+    public static class Oid
+        extends empdept.Employee.Oid
+        implements java.io.Serializable {
+        public int cid;
+    
+        public Oid() {
+            super();
+        }
+    
+        public Oid(String str) {
+            super(str);
+            // not implemented yet
+            throw new UnsupportedOperationException();
+        }
+    
+        public int hashCode() {
+            int hash = super.hashCode();
+            hash += (int)cid;
+            return hash;
+        }
+    
+        public boolean equals(java.lang.Object pk) {
+            if (!super.equals(pk)) {
+                return false;
+            }
+            Oid oid = (Oid)pk;
+            if (this.cid != oid.cid) return false;
+            return true;
+        }    
+    }    
+}

Added: incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/package.jdo
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/package.jdo?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/package.jdo (added)
+++ incubator/jdo/trunk/ri11/test/enhancer/sempdept/src/empdept/package.jdo Fri Mar 18 17:02:29 2005
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo PUBLIC "-//Sun Microsystems, Inc.//DTD Java Data Objects Metadata 1.0//EN" "http://java.sun.com/dtd/jdo_1_0.dtd">
+<jdo>
+  <package name="empdept">
+
+    <class name="Department"
+    	   objectid-class="empdept.Department$Oid"
+           identity-type="application">
+      <field name="deptid"
+	     primary-key="true"
+	     default-fetch-group="false"
+	     persistence-modifier="persistent"/>
+      <field name="name"
+	     default-fetch-group="true"
+	     persistence-modifier="persistent"/>
+      <field name="employees"
+	     persistence-modifier="persistent">
+        <collection element-type="Employee"/>
+      </field>
+    </class>
+
+    <class name="Employee"
+    	   objectid-class="empdept.Employee$Oid"
+           identity-type="application">
+      <field name="empid"
+	     primary-key="true"
+	     default-fetch-group="false"
+	     persistence-modifier="persistent"/>
+      <field name="name"
+	     default-fetch-group="true"
+	     persistence-modifier="persistent"/>
+      <field name="birthdate"
+	     default-fetch-group="false"
+	     persistence-modifier="persistent"/>
+      <field name="department"
+	     persistence-modifier="persistent"/>
+    </class>
+
+    <class name="FullTimeEmployee" 
+           identity-type="application" 
+           persistence-capable-superclass="Employee">
+      <field name="salary"
+	     default-fetch-group="true"
+	     persistence-modifier="persistent"/>
+    </class>
+
+    <class name="PartTimeEmployee" 
+           identity-type="application" 
+    	   objectid-class="empdept.PartTimeEmployee$Oid"
+           persistence-capable-superclass="Employee">
+      <field name="cid"
+	     primary-key="true"
+	     default-fetch-group="false"
+	     persistence-modifier="persistent"/>
+      <field name="wage"
+	     default-fetch-group="true"
+	     persistence-modifier="persistent"/>
+    </class>
+
+  </package>
+</jdo>

Added: incubator/jdo/trunk/ri11/test/fsuid2/build.xml
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/fsuid2/build.xml?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/fsuid2/build.xml (added)
+++ incubator/jdo/trunk/ri11/test/fsuid2/build.xml Fri Mar 18 17:02:29 2005
@@ -0,0 +1,84 @@
+<!--
+    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.
+-->
+
+<project name="fsuid2" default="build" basedir=".">
+
+<property name="jdoapi" value="../../src/jdo.jar"/>
+<property name="jdori" value="../../src/jdo-ri.jar"/>
+<property name="enhancer" value="org.apache.jdo.enhancer.Main"/>
+<property name="destdir" value=".."/>
+<property name="fsuid2.jarfile" value="${destdir}/fsuid2.jar"/>
+<property name="xerces" value="../../release/lib/ext/xerces.jar"/>
+<property name="antlr" value="${java.class.path}"/>
+<property name="logging" value="../../release/lib/ext/commons-logging.jar"/>
+<property name="enhanceDir" value="enhance.out"/>
+
+<target name="build" depends="fsuid2.uptodate, fsuid2.jar"/>
+
+<target name="fsuid2.uptodate">
+    <uptodate property="fsuid2.enhancement.notRequired" targetfile="${fsuid2.jarfile}">
+        <srcfiles dir="org/apache/jdo/pc" includes="*.jdo, *.jdoproperties, PC*.java"/>
+    </uptodate>
+</target>
+
+<target name="fsuid2.jar" unless="fsuid2.enhancement.notRequired">
+    <javac srcdir="org/apache/jdo/pc" debug="on" includes="PCPoint.java"/>
+
+    <mkdir dir="${enhanceDir}"/>
+    <java fork="yes" failonerror="yes" 
+          classname="${enhancer}" 
+          classpath="${jdoapi};${jdori};${xerces};${antlr};${logging}">
+        <arg line="-f -d ${enhanceDir} -s . org/apache/jdo/pc/PCPoint.class"/>
+    </java>
+
+    <move todir="org/apache/jdo/pc">
+        <fileset dir="${enhanceDir}/org/apache/jdo/pc">
+            <include name="*.class"/>
+        </fileset>
+    </move>
+
+    <java fork="yes" failonerror="yes" 
+          classname="org.apache.jdo.impl.enhancer.util.AugmentationTest"
+          classpath=".;${jdoapi};${jdori}">
+        <arg line="-s"/>
+        <arg path=".;${jdoapi};${jdori}"/>
+        <arg line="--properties org/apache/jdo/pc/fsuid2.jdoproperties org.apache.jdo.pc.PCPoint"/>
+    </java>
+
+    <java fork="yes" failonerror="yes"
+          classname="org.apache.jdo.impl.enhancer.util.AnnotationTest"
+          classpath="${jdori}">
+        <arg line="--properties org/apache/jdo/pc/fsuid2.jdoproperties org/apache/jdo/pc/PCPoint.class"/>
+    </java>
+
+    <delete file="${fsuid2.jarfile}"/>
+    <jar jarfile="${fsuid2.jarfile}"> 
+        <fileset dir="." includes="org/apache/jdo/pc/**/*.class, 
+                                   org/apache/jdo/pc/**/*.jdo"/>
+    </jar>
+</target>
+
+<target name="clean">
+    <delete>
+        <fileset dir="." includes="**/*.class"/>
+    </delete>
+    <delete file="${fsuid2.jarfile}"/>
+    <delete dir="${enhanceDir}"/>
+</target>
+
+<target name="clobber" depends="clean"/>
+
+</project>

Added: incubator/jdo/trunk/ri11/test/fsuid2/dist.xml
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/fsuid2/dist.xml?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/fsuid2/dist.xml (added)
+++ incubator/jdo/trunk/ri11/test/fsuid2/dist.xml Fri Mar 18 17:02:29 2005
@@ -0,0 +1,64 @@
+<!--
+    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.
+-->
+
+<project name="fsuid2" default="build" basedir=".">
+
+<property name="jdo.fsuid2" value="../../../jdo.jar"/>
+<property name="jdo-enhancer.fsuid2" value="../../../jdo-enhancer.jar"/>
+<property name="enhancer.fsuid2" value="org.apache.jdo.enhancer.Main"/>
+<property name="jarfile.fsuid2" value="../../fsuid2.jar"/>
+<property name="xerces.fsuid2"
+  value="../../../../lib/xerces.jar"/>
+
+<target name="build" depends="fsuid2.uptodate, fsuid2.jar">
+</target>
+
+<target name="fsuid2.uptodate">
+  <uptodate property="fsuid2.enhancement.notRequired" targetfile="${jarfile.fsuid2}">
+    <srcfiles dir="." includes="*.jdoproperties, PC*.java"/>
+  </uptodate>
+</target>
+
+<target name="fsuid2.jar" unless="fsuid2enhancement.notRequired">
+  <javac srcdir="." debug="on" includes="PCPoint.java"/>
+
+  <mkdir dir="enhance.out"/>
+  <java fork="yes" failonerror="yes"
+    classname="${enhancer.fsuid2}"
+	classpath="${jdo.fsuid2};${jdo-enhancer.fsuid2};${xerces.fsuid2}">
+    <arg line="-f -d enhance.out PCPoint.jdo PCPoint.class"/>
+  </java>
+
+  <move todir=".">
+    <fileset dir="enhance.out/test">
+      <include name="*.class"/>
+    </fileset>
+  </move>
+
+  <delete file="${jarfile.fsuid2}"/>
+  <jar jarfile="${jarfile.fsuid2}" basedir=".." includes="test/*.class, test/*.jdo"/>
+</target>
+
+<target name="clean">
+  <delete includeEmptyDirs="true">
+    <fileset dir="." includes="*.class, enhance.out"/>
+  </delete>
+  <delete file="${jarfile.fsuid2}"/>
+</target>
+
+<target name="clobber" depends="clean"/>
+
+</project>

Added: incubator/jdo/trunk/ri11/test/fsuid2/org/apache/jdo/pc/PCPoint.java
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/fsuid2/org/apache/jdo/pc/PCPoint.java?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/fsuid2/org/apache/jdo/pc/PCPoint.java (added)
+++ incubator/jdo/trunk/ri11/test/fsuid2/org/apache/jdo/pc/PCPoint.java Fri Mar 18 17:02:29 2005
@@ -0,0 +1,97 @@
+/*
+ * 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.
+ */
+
+package org.apache.jdo.pc;
+
+/**
+* A simple class with two fields
+*
+* @author Dave Bristor
+*/
+public class PCPoint {
+    public int x;
+    public Integer y;
+    float z;
+
+    public PCPoint() { }
+
+    public PCPoint(int x, int y, float z) {
+        this.x = x;
+        this.y = new Integer(y);
+        this.z = z;
+    }
+
+    public PCPoint(int x, Integer y, float z) {
+        this.x = x;
+        this.y = y;
+        this.z = z;
+    }
+
+    public String toString() {
+        String rc = null;
+        try {
+            rc = this.getClass().getName() + name();
+        } catch (NullPointerException ex) {
+            rc = "NPE getting PCPoint's values";
+        }
+        return rc;
+    }
+
+    public boolean equals(Object o) {
+        if ((o == null) || !(o instanceof PCPoint))
+            return false;
+        PCPoint other = (PCPoint)o;
+        if (x != other.x)
+            return false;
+        // Caution: comparing floats
+        if (z != other.z)
+            return false;
+        if (y == null)
+            return other.y == null;
+        else if (other.y == null)
+            return y == null;
+        else 
+            return y.intValue() == other.y.intValue();
+    }
+
+    void setX(int x) {
+        this.x = x;
+    }
+
+    public int getX() {
+        return x;
+    }
+
+    void setY(Integer y) {
+        this.y = y;
+    }
+
+    public Integer getY() {
+        return y;
+    }
+
+    void setZ(float z) {
+        this.z = z;
+    }
+
+    float getZ() {
+        return z;
+    }
+    
+    public String name() {
+        return " x: " + getX() + ", y: " + getY().intValue() + ", z: " + z;
+    }
+}

Added: incubator/jdo/trunk/ri11/test/fsuid2/org/apache/jdo/pc/PCPoint.jdo
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/fsuid2/org/apache/jdo/pc/PCPoint.jdo?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/fsuid2/org/apache/jdo/pc/PCPoint.jdo (added)
+++ incubator/jdo/trunk/ri11/test/fsuid2/org/apache/jdo/pc/PCPoint.jdo Fri Mar 18 17:02:29 2005
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jdo PUBLIC "-//Sun Microsystems, Inc.//DTD Java Data Objects Metadata 1.0//EN" "http://java.sun.com/dtd/jdo_1_0.dtd">
+<jdo>
+  <package name="org.apache.jdo.pc">
+
+    <!-- This will not be required once the JDOModel is fixed so that
+         the defaults defined in section 18.4 of the spec are working
+    -->
+    <class name="PCPoint"
+           identity-type="datastore">
+      <field name="x" persistence-modifier="persistent"/>
+      <field name="y" persistence-modifier="persistent"/>
+      <field name="z" persistence-modifier="persistent"/>
+    </class>
+
+  </package>
+</jdo>
+

Added: incubator/jdo/trunk/ri11/test/fsuid2/org/apache/jdo/pc/fsuid2.jdoproperties
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/fsuid2/org/apache/jdo/pc/fsuid2.jdoproperties?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/fsuid2/org/apache/jdo/pc/fsuid2.jdoproperties (added)
+++ incubator/jdo/trunk/ri11/test/fsuid2/org/apache/jdo/pc/fsuid2.jdoproperties Fri Mar 18 17:02:29 2005
@@ -0,0 +1,15 @@
+# Classnames can have the following attributes: 
+#          jdo:{persistent|transactional} 
+#          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.PCPoint=jdo:persistent
+org.apache.jdo.pc.PCPoint#x=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.PCPoint#y=jdo:persistent,annotation:mediated
+org.apache.jdo.pc.PCPoint#z=jdo:persistent,annotation:mediated

Added: incubator/jdo/trunk/ri11/test/java/org/apache/jdo/impl/fostore/Test_FSUID.java
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/java/org/apache/jdo/impl/fostore/Test_FSUID.java?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/java/org/apache/jdo/impl/fostore/Test_FSUID.java (added)
+++ incubator/jdo/trunk/ri11/test/java/org/apache/jdo/impl/fostore/Test_FSUID.java Fri Mar 18 17:02:29 2005
@@ -0,0 +1,103 @@
+/*
+ * 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.
+ */
+
+package org.apache.jdo.impl.fostore;
+
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+
+import javax.jdo.JDOUserException;
+
+import org.apache.jdo.test.util.AbstractTest;
+import org.apache.jdo.test.util.JDORITestRunner;
+
+/**
+* Test that FOStoreSchemaUID works as expected.
+*
+* @author Dave Bristor
+*/
+public class Test_FSUID extends AbstractTest {
+    /** */
+    private FOStorePMF pmf;
+    
+    /** */
+    private FOStoreModel model;
+        
+
+    /** */
+    public static void main(String args[]) {
+        JDORITestRunner.run(Test_FSUID.class);
+    }
+
+    /** Sets up the PMF for the test. */
+    protected void setUp() throws Exception 
+    {  
+        pmf = new FOStorePMF();
+        model = pmf.getModel();
+    }
+
+    /** */
+    protected void tearDown() 
+    {
+        if (pmf != null) {
+            AccessController.doPrivileged(
+                new PrivilegedAction () {
+                    public Object run () {
+                        try {
+                            pmf.close();
+                        } catch (JDOUserException ex) {
+                            System.out.println("pmf.close threw " + ex);
+                            System.out.println("forcing close");
+                            if( pmf instanceof FOStorePMF )
+                                ((FOStorePMF)pmf).close(true);
+                        }
+                        return null;
+                    }});
+        }
+        pmf = null;
+        model = null;
+    }
+
+    /**
+     * TestCase: 
+     */
+    public void test() throws Exception
+    {
+        check("org.apache.jdo.pc.PCPoint",
+              "8956920886101650067");
+        check("org.apache.jdo.pc.PCRect",
+              "-8480732594287021208");
+        check("org.apache.jdo.pc.PCArrays",
+              "-8444984152061270200");
+        check("org.apache.jdo.pc.empdept.PCPerson",
+              "-6869885283474787185");
+        check("org.apache.jdo.pc.empdept.PCEmployee",
+              "-9214907875158685");
+        check("org.apache.jdo.pc.empdept.PCPartTimeEmployee",
+              "-7548523301931157884");
+    }
+    
+    /** */
+    private void check(String className, String expected) 
+        throws ClassNotFoundException
+    {
+        Class cls = Class.forName(className);
+        FOStoreSchemaUID fsuid = FOStoreSchemaUID.lookup(cls, model);
+        assertNotNull("FSUID for class " + className + " is null", fsuid);
+        assertEquals("Wrong FSUID", expected, fsuid.toString());
+    }
+    
+}

Added: incubator/jdo/trunk/ri11/test/java/org/apache/jdo/impl/fostore/Test_Transcriber.java
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/java/org/apache/jdo/impl/fostore/Test_Transcriber.java?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/java/org/apache/jdo/impl/fostore/Test_Transcriber.java (added)
+++ incubator/jdo/trunk/ri11/test/java/org/apache/jdo/impl/fostore/Test_Transcriber.java Fri Mar 18 17:02:29 2005
@@ -0,0 +1,279 @@
+/*
+ * 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.
+ */
+
+// Note the package: This way, we can access things the way we want the rest
+// of JDO to do so, and don't have to "publicize" any classes nor methods for
+// the sake of testing.
+//
+package org.apache.jdo.impl.fostore;
+
+import java.io.IOException;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+
+import javax.jdo.JDOUserException;
+
+import org.apache.jdo.test.util.AbstractTest;
+import org.apache.jdo.test.util.JDORITestRunner;
+
+/**
+* This test is FOStore-specific; it tests only those transcribers.  It does
+* not test for the ability to transcribe null values for objects; for that
+* see Test_Primitives which tests transcribing *and* storing of nulls.  Also
+* see Test_Collections, which tests transcribing and storing of collections.
+*/
+public class Test_Transcriber extends AbstractTest {
+    //
+    // Transcribe these
+    // For now, don't transcribe object (we don't do objects yet), just
+    // transcribe their fields.
+    //
+    static boolean primitiveBoolean = true;
+    static char primitiveChar       = 'z';
+    static byte primitiveByte       = 0xf;
+    static short primitiveShort     = 12;
+    static int primitiveInt         = 42;
+    static long primitiveLong       = Long.MAX_VALUE;
+    static float primitiveFloat     = 123.45f;
+    static double primitiveDouble   = 3.14159;
+    static String primitiveObject = "hello, world";
+
+    private FOStorePMF pmf;
+
+    /** */
+    public static void main(String args[]) {
+        JDORITestRunner.run(Test_Transcriber.class);
+    }
+
+    /** Sets up the PMF for the test. */
+    protected void setUp() throws Exception 
+    {  
+        pmf = new FOStorePMF();  
+    }
+
+    /** */
+    protected void tearDown()
+    {
+        if (pmf != null) {
+            AccessController.doPrivileged(
+                new PrivilegedAction () {
+                    public Object run () {
+                        try {
+                            pmf.close();
+                        } catch (JDOUserException ex) {
+                            System.out.println("pmf.close threw " + ex);
+                            System.out.println("forcing close");
+                            if( pmf instanceof FOStorePMF )
+                                ((FOStorePMF)pmf).close(true);
+                        }
+                        return null;
+                    }});
+        }
+        pmf = null;
+    }
+
+    // The idea is that we're going to write a bunch of stuff to a data
+    // output stream, then read it back in; we should get the same data
+    // back.
+    public void test() throws Exception {
+        // Step 1: store
+        //
+        FOStoreOutput fos = new FOStoreOutput();
+        storePrimitives(fos);
+
+        // Step 2: fetch
+        //
+        byte data[] = fos.getBuf();
+        FOStoreInput fis = new FOStoreInput(data, 0, data.length);
+        fetchPrimitives(fis);
+    }
+
+    void storePrimitives(FOStoreOutput fos) throws Exception {
+        FOStoreTranscriberFactory tf = FOStoreTranscriberFactory.getInstance();
+        FOStoreTranscriber t = null;
+        
+        try {
+            t = (FOStoreTranscriber)tf.getTranscriber(boolean.class)[0];
+            t.storeBoolean(primitiveBoolean, fos);
+            assertEquals("Stored primitiveBoolean transcriber", 
+                         "org.apache.jdo.impl.fostore.BooleanTranscriber",
+                         t.getClass().getName());
+
+            t = (FOStoreTranscriber)tf.getTranscriber(char.class)[0];
+            t.storeChar(primitiveChar, fos);
+            assertEquals("Stored primitiveChar transcriber",
+                         "org.apache.jdo.impl.fostore.CharTranscriber",
+                         t.getClass().getName());
+
+            t = (FOStoreTranscriber)tf.getTranscriber(byte.class)[0];
+            t.storeByte(primitiveByte, fos);
+            assertEquals("Stored primitiveByte transcriber ",
+                         "org.apache.jdo.impl.fostore.ByteTranscriber",
+                         t.getClass().getName());
+
+            t = (FOStoreTranscriber)tf.getTranscriber(short.class)[0];
+            t.storeShort(primitiveShort, fos);
+            assertEquals("Stored primitiveShort transcriber ",
+                         "org.apache.jdo.impl.fostore.ShortTranscriber",
+                         t.getClass().getName());
+
+            t = (FOStoreTranscriber)tf.getTranscriber(int.class)[0];
+            t.storeInt(primitiveInt, fos);
+            assertEquals("Stored primitiveInt transcriber ",
+                         "org.apache.jdo.impl.fostore.IntTranscriber",
+                         t.getClass().getName());
+
+            t = (FOStoreTranscriber)tf.getTranscriber(long.class)[0];
+            t.storeLong(primitiveLong, fos);
+            assertEquals("Stored primitiveLong transcriber ",
+                         "org.apache.jdo.impl.fostore.LongTranscriber",
+                         t.getClass().getName());
+
+            t = (FOStoreTranscriber)tf.getTranscriber(float.class)[0];
+            t.storeFloat(primitiveFloat, fos);
+            assertEquals("Stored primitiveFloat transcriber ",
+                         "org.apache.jdo.impl.fostore.FloatTranscriber",
+                         t.getClass().getName());
+
+            t = (FOStoreTranscriber)tf.getTranscriber(double.class)[0];
+            t.storeDouble(primitiveDouble, fos);
+            assertEquals("Stored primitiveDouble transcriber ",
+                         "org.apache.jdo.impl.fostore.DoubleTranscriber",
+                         t.getClass().getName());
+
+            t = (FOStoreTranscriber)tf.getTranscriber(primitiveObject.getClass())[0];
+            t.storeObject(primitiveObject, fos);
+            assertEquals("Stored primitiveObject transcriber ",
+                         "org.apache.jdo.impl.fostore.ObjectTranscriber",
+                         t.getClass().getName());
+        } catch (IOException ex) {
+            throw new Exception("Couldn't store a primitive: " + ex);
+        }
+    }
+
+    void fetchPrimitives(FOStoreInput fis) throws Exception {
+        FOStoreTranscriberFactory tf = FOStoreTranscriberFactory.getInstance();
+        FOStoreTranscriber t;
+        boolean aBoolean;
+        char aChar;
+        byte aByte;
+        short aShort;
+        int anInt;
+        long aLong;
+        float aFloat;
+        double aDouble;
+        Object anObject;
+        
+        try {
+            t = (BooleanTranscriber)tf.getTranscriber(boolean.class)[0];
+            aBoolean = t.fetchBoolean(fis);
+        } catch (IOException ex) {
+            throw new Exception("Couldn't fetch primitiveBoolean: " + ex);
+        }
+        assertEquals("Wrong value retrieving primitiveBoolean", primitiveBoolean, aBoolean);
+        assertEquals("Fetched primitiveBoolean transcriber",
+                     "org.apache.jdo.impl.fostore.BooleanTranscriber",
+                     t.getClass().getName());
+
+        try {
+            t = (CharTranscriber)tf.getTranscriber(char.class)[0];
+            aChar = t.fetchChar(fis);
+        } catch (IOException ex) {
+            throw new Exception("Couldn't fetch primitiveChar: " + ex);
+        }
+        assertEquals("Wrong value retrieving primitiveChar", primitiveChar, aChar);
+        assertEquals("Fetched primitiveChar transcriber",
+                     "org.apache.jdo.impl.fostore.CharTranscriber",
+                     t.getClass().getName());
+        try {
+            t = (ByteTranscriber)tf.getTranscriber(byte.class)[0];
+            aByte = t.fetchByte(fis);
+        } catch (IOException ex) {
+            throw new Exception("Couldn't fetch primitiveByte: " + ex);
+        }
+        assertEquals("Wrong value retrieving primitiveByte", primitiveByte, aByte);
+        assertEquals("Fetched primitiveByte transcriber",
+                     "org.apache.jdo.impl.fostore.ByteTranscriber",
+                     t.getClass().getName());
+
+        try {
+            t = (ShortTranscriber)tf.getTranscriber(short.class)[0];
+            aShort = t.fetchShort(fis);
+        } catch (IOException ex) {
+            throw new Exception("Couldn't fetch primitiveShort: " + ex);
+        }
+        assertEquals("Wrong value retrieving primitiveShort", primitiveShort, aShort);
+        assertEquals("Fetched primitiveShort transcriber",
+                     "org.apache.jdo.impl.fostore.ShortTranscriber",
+                     t.getClass().getName());
+
+        try {
+            t = (IntTranscriber)tf.getTranscriber(int.class)[0];
+            anInt = t.fetchInt(fis);
+        } catch (IOException ex) {
+            throw new Exception("Couldn't fetch primitiveInt: " + ex);
+        }
+        assertEquals("Wrong value retrieving primitiveInt", primitiveInt, anInt);
+        assertEquals("Fetched primitiveInt transcriber", 
+                     "org.apache.jdo.impl.fostore.IntTranscriber",
+                     t.getClass().getName());
+
+        try {
+            t = (LongTranscriber)tf.getTranscriber(long.class)[0];
+            aLong = t.fetchLong(fis);
+        } catch (IOException ex) {
+            throw new Exception("Couldn't fetch primitiveLong: " + ex);
+        }
+        assertEquals("Wrong value retrieving primitiveLong", primitiveLong, aLong);
+        assertEquals("Fetched primitiveLong transcribers", 
+                     "org.apache.jdo.impl.fostore.LongTranscriber",
+                     t.getClass().getName());
+
+        try {
+            t = (FloatTranscriber)tf.getTranscriber(float.class)[0];
+            aFloat = t.fetchFloat(fis);
+        } catch (IOException ex) {
+            throw new Exception("Couldn't fetch primitiveFloat: " + ex);
+        }
+        assertEquals("Wrong value retrieving primitiveFloat", primitiveFloat, aFloat, 1e-2f);
+        assertEquals("Fetched primitiveFloat transcriber", 
+                     "org.apache.jdo.impl.fostore.FloatTranscriber",
+                     t.getClass().getName());
+
+        try {
+            t = (DoubleTranscriber)tf.getTranscriber(double.class)[0];
+            aDouble = t.fetchDouble(fis);
+        } catch (IOException ex) {
+            throw new Exception("Couldn't fetch primitiveDouble: " + ex);
+        }
+        assertEquals("Wrong value retrieving primitiveDouble", primitiveDouble, aDouble, 1e-4);
+        assertEquals("Fetched primitiveDouble transcriber",
+                     "org.apache.jdo.impl.fostore.DoubleTranscriber",
+                     t.getClass().getName());
+
+        try {
+            t = (ObjectTranscriber)tf.getTranscriber(Object.class)[0];
+            anObject = t.fetchObject(fis, null, -1);
+        } catch (IOException ex) {
+            throw new Exception("Couldn't fetch primitiveObject: " + ex);
+        }
+
+        assertEquals("Wrong value retrieving primitiveObject", primitiveObject, anObject);
+        assertEquals("Fetched primitiveObject transcriber",
+                     "org.apache.jdo.impl.fostore.ObjectTranscriber",
+                     t.getClass().getName());
+    }
+}

Added: incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/DepartmentFactory.java
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/DepartmentFactory.java?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/DepartmentFactory.java (added)
+++ incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/DepartmentFactory.java Fri Mar 18 17:02:29 2005
@@ -0,0 +1,46 @@
+/*
+ * 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.
+ */
+
+package org.apache.jdo.pc;
+
+import org.apache.jdo.test.util.Factory;
+
+/**
+* Provides a means to create objects that are inserted into a database, and
+* for verifying that they've been retrieved OK.
+*
+* @author Dave Bristor
+*/
+public class DepartmentFactory implements Factory {
+    /**
+    * Returns the class instance of the pc class of this factory.
+    */
+    public Class getPCClass()
+    {
+        return PCDepartment.class;
+    }
+
+    public Object create(int index) {
+        return null; // Not needed for current tests.
+    }
+
+    // Not needed by this implementation.
+    public void setVerify(int x) { }
+
+    public boolean verify(int i, Object pc) {
+        return true;
+    }
+}

Added: incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/EmployeeFactory.java
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/EmployeeFactory.java?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/EmployeeFactory.java (added)
+++ incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/EmployeeFactory.java Fri Mar 18 17:02:29 2005
@@ -0,0 +1,46 @@
+/*
+ * 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.
+ */
+
+package org.apache.jdo.pc;
+
+import org.apache.jdo.test.util.Factory;
+
+/**
+* Provides a means to create objects that are inserted into a database, and
+* for verifying that they've been retrieved OK.
+*
+* @author Dave Bristor
+*/
+public class EmployeeFactory implements Factory {
+    /**
+    * Returns the class instance of the pc class of this factory.
+    */
+    public Class getPCClass()
+    {
+        return PCEmployee.class;
+    }
+
+    public Object create(int index) {
+        return null; // Not needed for current tests.
+    }
+
+    // Not needed by this implementation.
+    public void setVerify(int x) { }
+
+    public boolean verify(int i, Object pc) {
+        return true;
+    }
+}

Added: incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/InsuranceFactory.java
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/InsuranceFactory.java?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/InsuranceFactory.java (added)
+++ incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/InsuranceFactory.java Fri Mar 18 17:02:29 2005
@@ -0,0 +1,46 @@
+/*
+ * 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.
+ */
+
+package org.apache.jdo.pc;
+
+import org.apache.jdo.test.util.Factory;
+
+/**
+* Provides a means to create objects that are inserted into a database, and
+* for verifying that they've been retrieved OK.
+*
+* @author Dave Bristor
+*/
+public class InsuranceFactory implements Factory {
+    /**
+    * Returns the class instance of the pc class of this factory.
+    */
+    public Class getPCClass()
+    {
+        return PCInsurance.class;
+    }
+    
+    public Object create(int index) {
+        return null; // Not needed for current tests.
+    }
+
+    // Not needed by this implementation.
+    public void setVerify(int x) { }
+
+    public boolean verify(int i, Object pc) {
+        return true;
+    }
+}

Added: incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/InterfacesFactory.java
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/InterfacesFactory.java?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/InterfacesFactory.java (added)
+++ incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/InterfacesFactory.java Fri Mar 18 17:02:29 2005
@@ -0,0 +1,50 @@
+/*
+ * 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.
+ */
+
+package org.apache.jdo.pc;
+
+import org.apache.jdo.test.util.Factory;
+
+
+/**
+* Provides a means to create objects that are inserted into a database, and
+* for verifying that they've been retrieved OK.
+*
+* @author Dave Bristor
+*/
+public class InterfacesFactory implements Factory {
+    /**
+    * Returns the class instance of the pc class of this factory.
+    */
+    public Class getPCClass()
+    {
+        return PCInterfaces.class;
+    }
+    
+    public Object create(int index) {
+        PCInterfaces rc = new PCInterfaces();
+        rc.init();
+        return rc;
+    }
+
+    // Not needed by this implementation.
+    public void setVerify(int x) { }
+
+    // Not needed by this implementation.
+    public boolean verify(int i, Object pc) {
+        return true;
+    }
+}

Added: incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/LargeObjFactory.java
URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/LargeObjFactory.java?view=auto&rev=158176
==============================================================================
--- incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/LargeObjFactory.java (added)
+++ incubator/jdo/trunk/ri11/test/java/org/apache/jdo/pc/LargeObjFactory.java Fri Mar 18 17:02:29 2005
@@ -0,0 +1,59 @@
+/*
+ * 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.
+ */
+
+package org.apache.jdo.pc;
+
+import org.apache.jdo.test.util.Factory;
+
+
+/**
+* Provides a means to create objects that are inserted into a database, and
+* for verifying that they've been retrieved OK.
+*
+* @author Dave Bristor
+*/
+public class LargeObjFactory implements Factory {
+    private int size;
+
+    public LargeObjFactory() { }
+    
+    public LargeObjFactory(int size) {
+        this.size = size;
+    }
+    
+    /**
+    * Returns the class instance of the pc class of this factory.
+    */
+    public Class getPCClass()
+    {
+        return PCLargeObj.class;
+    }
+
+    public Object create(int index) {
+        PCLargeObj rc = new PCLargeObj();
+        rc.init(size);
+        return rc;
+    }
+
+    public void setVerify(int verify) {
+        size = verify;
+    }
+    
+    public boolean verify(int i, Object pc) {
+        PCLargeObj o = (PCLargeObj)pc;
+        return o.verify(false);
+    }
+}



Mime
View raw message