[SCM] Castor: open source data binding framework written in Java branch, master, updated. debian/1.3.1-1-4-gd9169e7
Miguel Landaeta
miguel at miguel.cc
Sun Jan 22 04:15:21 UTC 2012
The following commit has been merged in the master branch:
commit d9169e7c0bff72738cd0f7dfbe85fe9e96d2f73f
Author: Miguel Landaeta <miguel at miguel.cc>
Date: Sat Jan 21 23:46:37 2012 -0430
Enable again build of JDO jar
diff --git a/debian/changelog b/debian/changelog
index d4b73a0..32266aa 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -3,7 +3,8 @@ castor (1.3.2-1) UNRELEASED; urgency=low
* New upstream release.
* Refresh patches.
* Bump Standards-Version to 3.9.2. No changes were required.
- * Add dependencies on libcommons-lang-java and libcommons-cli-java.
+ * Add dependencies on libcommons-lang-java, libcommons-cli-java and javacc.
+ * Fix Vcs-Git URL.
-- Miguel Landaeta <miguel at miguel.cc> Sat, 21 Jan 2012 18:09:58 -0430
diff --git a/debian/control b/debian/control
index f2895ec..956a430 100644
--- a/debian/control
+++ b/debian/control
@@ -7,10 +7,10 @@ Build-Depends: debhelper (>= 7.0.50), default-jdk, javahelper, ant,
libcommons-logging-java, liboro-java, libregexp-java, libeasymock-java, junit,
junit4, libgeronimo-jta-1.1-spec-java, libcglib-java, liblog4j1.2-java,
glassfish-javaee, velocity, maven-repo-helper, ant-optional,
- libcommons-lang-java, libcommons-cli-java,
+ libcommons-lang-java, libcommons-cli-java, javacc
Standards-Version: 3.9.2
Homepage: http://www.castor.org/
-Vcs-Git: git://git.debian.org/pkg-java/castor.git
+Vcs-Git: git://git.debian.org/git/pkg-java/castor.git
Vcs-Browser: http://git.debian.org/?p=pkg-java/castor.git
Package: libcastor-xml-java
diff --git a/debian/patches/add_cpa_generated_sources.diff b/debian/patches/add_cpa_generated_sources.diff
index dc81a6d..ade5932 100644
--- a/debian/patches/add_cpa_generated_sources.diff
+++ b/debian/patches/add_cpa_generated_sources.diff
@@ -6,15 +6,31 @@ Description: add autogenerated sources to cpa/jdo module
packaged and when it gets accepted in the archive, this package will re rebuilt
with that plugin and this patch will be removed.
Author: Miguel Landaeta <miguel at miguel.cc>
-Forwarded: not-needed
-Last-Update: 2010-06-27
+Forwarded: no
+Last-Update: 2012-01-21
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/Database.java
-@@ -0,0 +1,356 @@
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/.castor.cdr
+@@ -0,0 +1,13 @@
++#Sun Jan 22 02:12:12 UTC 2012
++org.castor.jdo.conf.ClassMapping=org.castor.jdo.conf.descriptors.ClassMappingDescriptor
++org.castor.jdo.conf.Jndi=org.castor.jdo.conf.descriptors.JndiDescriptor
++org.castor.jdo.conf.TransactionManager=org.castor.jdo.conf.descriptors.TransactionManagerDescriptor
++org.castor.jdo.conf.TransactionDemarcation=org.castor.jdo.conf.descriptors.TransactionDemarcationDescriptor
++org.castor.jdo.conf.JdoConf=org.castor.jdo.conf.descriptors.JdoConfDescriptor
++org.castor.jdo.conf.Param=org.castor.jdo.conf.descriptors.ParamDescriptor
++org.castor.jdo.conf.DataSource=org.castor.jdo.conf.descriptors.DataSourceDescriptor
++org.castor.jdo.conf.DatabaseChoice=org.castor.jdo.conf.descriptors.DatabaseChoiceDescriptor
++org.castor.jdo.conf.PackageMapping=org.castor.jdo.conf.descriptors.PackageMappingDescriptor
++org.castor.jdo.conf.Driver=org.castor.jdo.conf.descriptors.DriverDescriptor
++org.castor.jdo.conf.Database=org.castor.jdo.conf.descriptors.DatabaseDescriptor
++org.castor.jdo.conf.Mapping=org.castor.jdo.conf.descriptors.MappingDescriptor
+--- /dev/null
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/Mapping.java
+@@ -0,0 +1,138 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -22,12 +38,12 @@ Last-Update: 2010-06-27
+package org.castor.jdo.conf;
+
+/**
-+ * Class Database.
++ * Class Mapping.
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class Database implements java.io.Serializable {
++public class Mapping implements java.io.Serializable {
+
+
+ //--------------------------/
@@ -35,34 +51,170 @@ Last-Update: 2010-06-27
+ //--------------------------/
+
+ /**
-+ * Field _name.
++ * Field _href.
+ */
-+ private java.lang.String _name;
++ private java.lang.String _href;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public Mapping() {
++ super();
++ }
++
++
++ //-----------/
++ //- Methods -/
++ //-----------/
+
+ /**
-+ * Field _engine.
++ * Returns the value of field 'href'.
++ *
++ * @return the value of field 'Href'.
+ */
-+ private java.lang.String _engine = "generic";
++ public java.lang.String getHref(
++ ) {
++ return this._href;
++ }
+
+ /**
-+ * Field _databaseChoice.
++ * Method isValid.
++ *
++ * @return true if this object is valid according to the schema
+ */
-+ private org.castor.jdo.conf.DatabaseChoice _databaseChoice;
++ public boolean isValid(
++ ) {
++ try {
++ validate();
++ } catch (org.exolab.castor.xml.ValidationException vex) {
++ return false;
++ }
++ return true;
++ }
+
+ /**
-+ * Field _mappingList.
++ *
++ *
++ * @param out
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
+ */
-+ private java.util.List<org.castor.jdo.conf.Mapping> _mappingList;
++ public void marshal(
++ final java.io.Writer out)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, out);
++ }
++
++ /**
++ *
++ *
++ * @param handler
++ * @throws java.io.IOException if an IOException occurs during
++ * marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ */
++ public void marshal(
++ final org.xml.sax.ContentHandler handler)
++ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, handler);
++ }
++
++ /**
++ * Sets the value of field 'href'.
++ *
++ * @param href the value of field 'href'.
++ */
++ public void setHref(
++ final java.lang.String href) {
++ this._href = href;
++ }
++
++ /**
++ * Method unmarshal.
++ *
++ * @param reader
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @return the unmarshaled org.castor.jdo.conf.Mapping
++ */
++ public static org.castor.jdo.conf.Mapping unmarshal(
++ final java.io.Reader reader)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ return (org.castor.jdo.conf.Mapping) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.Mapping.class, reader);
++ }
++
++ /**
++ *
++ *
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ */
++ public void validate(
++ )
++ throws org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
++ validator.validate(this);
++ }
++
++}
+--- /dev/null
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/JdoConf.java
+@@ -0,0 +1,332 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.castor.jdo.conf;
++
++/**
++ * Class JdoConf.
++ *
++ * @version $Revision$ $Date$
++ */
++ at SuppressWarnings("serial")
++public class JdoConf implements java.io.Serializable {
++
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
++ /**
++ * Field _name.
++ */
++ private java.lang.String _name = "jdo-conf";
++
++ /**
++ * Field _databaseList.
++ */
++ private java.util.List<org.castor.jdo.conf.Database> _databaseList;
++
++ /**
++ * Field _transactionDemarcation.
++ */
++ private org.castor.jdo.conf.TransactionDemarcation _transactionDemarcation;
+
+
+ //----------------/
+ //- Constructors -/
+ //----------------/
+
-+ public Database() {
++ public JdoConf() {
+ super();
-+ setEngine("generic");
-+ this._mappingList = new java.util.ArrayList<org.castor.jdo.conf.Mapping>();
++ setName("jdo-conf");
++ this._databaseList = new java.util.ArrayList<org.castor.jdo.conf.Database>();
+ }
+
+
@@ -73,84 +225,64 @@ Last-Update: 2010-06-27
+ /**
+ *
+ *
-+ * @param vMapping
++ * @param vDatabase
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
-+ public void addMapping(
-+ final org.castor.jdo.conf.Mapping vMapping)
++ public void addDatabase(
++ final org.castor.jdo.conf.Database vDatabase)
+ throws java.lang.IndexOutOfBoundsException {
-+ this._mappingList.add(vMapping);
++ this._databaseList.add(vDatabase);
+ }
+
+ /**
+ *
+ *
+ * @param index
-+ * @param vMapping
++ * @param vDatabase
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
-+ public void addMapping(
++ public void addDatabase(
+ final int index,
-+ final org.castor.jdo.conf.Mapping vMapping)
++ final org.castor.jdo.conf.Database vDatabase)
+ throws java.lang.IndexOutOfBoundsException {
-+ this._mappingList.add(index, vMapping);
++ this._databaseList.add(index, vDatabase);
+ }
+
+ /**
-+ * Method enumerateMapping.
++ * Method enumerateDatabase.
+ *
+ * @return an Enumeration over all possible elements of this
+ * collection
+ */
-+ public java.util.Enumeration<? extends org.castor.jdo.conf.Mapping> enumerateMapping(
-+ ) {
-+ return java.util.Collections.enumeration(this._mappingList);
-+ }
-+
-+ /**
-+ * Returns the value of field 'databaseChoice'.
-+ *
-+ * @return the value of field 'DatabaseChoice'.
-+ */
-+ public org.castor.jdo.conf.DatabaseChoice getDatabaseChoice(
-+ ) {
-+ return this._databaseChoice;
-+ }
-+
-+ /**
-+ * Returns the value of field 'engine'.
-+ *
-+ * @return the value of field 'Engine'.
-+ */
-+ public java.lang.String getEngine(
++ public java.util.Enumeration<? extends org.castor.jdo.conf.Database> enumerateDatabase(
+ ) {
-+ return this._engine;
++ return java.util.Collections.enumeration(this._databaseList);
+ }
+
+ /**
-+ * Method getMapping.
++ * Method getDatabase.
+ *
+ * @param index
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
-+ * @return the value of the org.castor.jdo.conf.Mapping at the
++ * @return the value of the org.castor.jdo.conf.Database at the
+ * given index
+ */
-+ public org.castor.jdo.conf.Mapping getMapping(
++ public org.castor.jdo.conf.Database getDatabase(
+ final int index)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
-+ if (index < 0 || index >= this._mappingList.size()) {
-+ throw new IndexOutOfBoundsException("getMapping: Index value '" + index + "' not in range [0.." + (this._mappingList.size() - 1) + "]");
++ if (index < 0 || index >= this._databaseList.size()) {
++ throw new IndexOutOfBoundsException("getDatabase: Index value '" + index + "' not in range [0.." + (this._databaseList.size() - 1) + "]");
+ }
+
-+ return (org.castor.jdo.conf.Mapping) _mappingList.get(index);
++ return (org.castor.jdo.conf.Database) _databaseList.get(index);
+ }
+
+ /**
-+ * Method getMapping.Returns the contents of the collection in
++ * Method getDatabase.Returns the contents of the collection in
+ * an Array. <p>Note: Just in case the collection contents
+ * are changing in another thread, we pass a 0-length Array of
+ * the correct type into the API call. This way we <i>know</i>
@@ -158,20 +290,20 @@ Last-Update: 2010-06-27
+ *
+ * @return this collection as an Array
+ */
-+ public org.castor.jdo.conf.Mapping[] getMapping(
++ public org.castor.jdo.conf.Database[] getDatabase(
+ ) {
-+ org.castor.jdo.conf.Mapping[] array = new org.castor.jdo.conf.Mapping[0];
-+ return (org.castor.jdo.conf.Mapping[]) this._mappingList.toArray(array);
++ org.castor.jdo.conf.Database[] array = new org.castor.jdo.conf.Database[0];
++ return (org.castor.jdo.conf.Database[]) this._databaseList.toArray(array);
+ }
+
+ /**
-+ * Method getMappingCount.
++ * Method getDatabaseCount.
+ *
+ * @return the size of this collection
+ */
-+ public int getMappingCount(
++ public int getDatabaseCount(
+ ) {
-+ return this._mappingList.size();
++ return this._databaseList.size();
+ }
+
+ /**
@@ -185,6 +317,16 @@ Last-Update: 2010-06-27
+ }
+
+ /**
++ * Returns the value of field 'transactionDemarcation'.
++ *
++ * @return the value of field 'TransactionDemarcation'.
++ */
++ public org.castor.jdo.conf.TransactionDemarcation getTransactionDemarcation(
++ ) {
++ return this._transactionDemarcation;
++ }
++
++ /**
+ * Method isValid.
+ *
+ * @return true if this object is valid according to the schema
@@ -200,14 +342,14 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Method iterateMapping.
++ * Method iterateDatabase.
+ *
+ * @return an Iterator over all possible elements in this
+ * collection
+ */
-+ public java.util.Iterator<? extends org.castor.jdo.conf.Mapping> iterateMapping(
++ public java.util.Iterator<? extends org.castor.jdo.conf.Database> iterateDatabase(
+ ) {
-+ return this._mappingList.iterator();
++ return this._databaseList.iterator();
+ }
+
+ /**
@@ -244,87 +386,67 @@ Last-Update: 2010-06-27
+
+ /**
+ */
-+ public void removeAllMapping(
++ public void removeAllDatabase(
+ ) {
-+ this._mappingList.clear();
++ this._databaseList.clear();
+ }
+
+ /**
-+ * Method removeMapping.
++ * Method removeDatabase.
+ *
-+ * @param vMapping
++ * @param vDatabase
+ * @return true if the object was removed from the collection.
+ */
-+ public boolean removeMapping(
-+ final org.castor.jdo.conf.Mapping vMapping) {
-+ boolean removed = _mappingList.remove(vMapping);
++ public boolean removeDatabase(
++ final org.castor.jdo.conf.Database vDatabase) {
++ boolean removed = _databaseList.remove(vDatabase);
+ return removed;
+ }
+
+ /**
-+ * Method removeMappingAt.
++ * Method removeDatabaseAt.
+ *
+ * @param index
+ * @return the element removed from the collection
+ */
-+ public org.castor.jdo.conf.Mapping removeMappingAt(
++ public org.castor.jdo.conf.Database removeDatabaseAt(
+ final int index) {
-+ java.lang.Object obj = this._mappingList.remove(index);
-+ return (org.castor.jdo.conf.Mapping) obj;
-+ }
-+
-+ /**
-+ * Sets the value of field 'databaseChoice'.
-+ *
-+ * @param databaseChoice the value of field 'databaseChoice'.
-+ */
-+ public void setDatabaseChoice(
-+ final org.castor.jdo.conf.DatabaseChoice databaseChoice) {
-+ this._databaseChoice = databaseChoice;
-+ }
-+
-+ /**
-+ * Sets the value of field 'engine'.
-+ *
-+ * @param engine the value of field 'engine'.
-+ */
-+ public void setEngine(
-+ final java.lang.String engine) {
-+ this._engine = engine;
++ java.lang.Object obj = this._databaseList.remove(index);
++ return (org.castor.jdo.conf.Database) obj;
+ }
+
+ /**
+ *
+ *
+ * @param index
-+ * @param vMapping
++ * @param vDatabase
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
-+ public void setMapping(
++ public void setDatabase(
+ final int index,
-+ final org.castor.jdo.conf.Mapping vMapping)
++ final org.castor.jdo.conf.Database vDatabase)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
-+ if (index < 0 || index >= this._mappingList.size()) {
-+ throw new IndexOutOfBoundsException("setMapping: Index value '" + index + "' not in range [0.." + (this._mappingList.size() - 1) + "]");
++ if (index < 0 || index >= this._databaseList.size()) {
++ throw new IndexOutOfBoundsException("setDatabase: Index value '" + index + "' not in range [0.." + (this._databaseList.size() - 1) + "]");
+ }
+
-+ this._mappingList.set(index, vMapping);
++ this._databaseList.set(index, vDatabase);
+ }
+
+ /**
+ *
+ *
-+ * @param vMappingArray
++ * @param vDatabaseArray
+ */
-+ public void setMapping(
-+ final org.castor.jdo.conf.Mapping[] vMappingArray) {
++ public void setDatabase(
++ final org.castor.jdo.conf.Database[] vDatabaseArray) {
+ //-- copy array
-+ _mappingList.clear();
++ _databaseList.clear();
+
-+ for (int i = 0; i < vMappingArray.length; i++) {
-+ this._mappingList.add(vMappingArray[i]);
++ for (int i = 0; i < vDatabaseArray.length; i++) {
++ this._databaseList.add(vDatabaseArray[i]);
+ }
+ }
+
@@ -339,6 +461,17 @@ Last-Update: 2010-06-27
+ }
+
+ /**
++ * Sets the value of field 'transactionDemarcation'.
++ *
++ * @param transactionDemarcation the value of field
++ * 'transactionDemarcation'.
++ */
++ public void setTransactionDemarcation(
++ final org.castor.jdo.conf.TransactionDemarcation transactionDemarcation) {
++ this._transactionDemarcation = transactionDemarcation;
++ }
++
++ /**
+ * Method unmarshal.
+ *
+ * @param reader
@@ -346,12 +479,12 @@ Last-Update: 2010-06-27
+ * null or if any SAXException is thrown during marshaling
+ * @throws org.exolab.castor.xml.ValidationException if this
+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled org.castor.jdo.conf.Database
++ * @return the unmarshaled org.castor.jdo.conf.JdoConf
+ */
-+ public static org.castor.jdo.conf.Database unmarshal(
++ public static org.castor.jdo.conf.JdoConf unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.castor.jdo.conf.Database) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.Database.class, reader);
++ return (org.castor.jdo.conf.JdoConf) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.JdoConf.class, reader);
+ }
+
+ /**
@@ -369,11 +502,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/Jndi.java
-@@ -0,0 +1,138 @@
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/DatabaseChoice.java
+@@ -0,0 +1,188 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -381,12 +514,12 @@ Last-Update: 2010-06-27
+package org.castor.jdo.conf;
+
+/**
-+ * Class Jndi.
++ * Class DatabaseChoice.
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class Jndi implements java.io.Serializable {
++public class DatabaseChoice implements java.io.Serializable {
+
+
+ //--------------------------/
@@ -394,16 +527,26 @@ Last-Update: 2010-06-27
+ //--------------------------/
+
+ /**
-+ * Field _name.
++ * Field _driver.
+ */
-+ private java.lang.String _name;
++ private org.castor.jdo.conf.Driver _driver;
++
++ /**
++ * Field _dataSource.
++ */
++ private org.castor.jdo.conf.DataSource _dataSource;
++
++ /**
++ * Field _jndi.
++ */
++ private org.castor.jdo.conf.Jndi _jndi;
+
+
+ //----------------/
+ //- Constructors -/
+ //----------------/
+
-+ public Jndi() {
++ public DatabaseChoice() {
+ super();
+ }
+
@@ -413,13 +556,33 @@ Last-Update: 2010-06-27
+ //-----------/
+
+ /**
-+ * Returns the value of field 'name'.
++ * Returns the value of field 'dataSource'.
+ *
-+ * @return the value of field 'Name'.
++ * @return the value of field 'DataSource'.
+ */
-+ public java.lang.String getName(
++ public org.castor.jdo.conf.DataSource getDataSource(
+ ) {
-+ return this._name;
++ return this._dataSource;
++ }
++
++ /**
++ * Returns the value of field 'driver'.
++ *
++ * @return the value of field 'Driver'.
++ */
++ public org.castor.jdo.conf.Driver getDriver(
++ ) {
++ return this._driver;
++ }
++
++ /**
++ * Returns the value of field 'jndi'.
++ *
++ * @return the value of field 'Jndi'.
++ */
++ public org.castor.jdo.conf.Jndi getJndi(
++ ) {
++ return this._jndi;
+ }
+
+ /**
@@ -470,13 +633,33 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Sets the value of field 'name'.
++ * Sets the value of field 'dataSource'.
+ *
-+ * @param name the value of field 'name'.
++ * @param dataSource the value of field 'dataSource'.
+ */
-+ public void setName(
-+ final java.lang.String name) {
-+ this._name = name;
++ public void setDataSource(
++ final org.castor.jdo.conf.DataSource dataSource) {
++ this._dataSource = dataSource;
++ }
++
++ /**
++ * Sets the value of field 'driver'.
++ *
++ * @param driver the value of field 'driver'.
++ */
++ public void setDriver(
++ final org.castor.jdo.conf.Driver driver) {
++ this._driver = driver;
++ }
++
++ /**
++ * Sets the value of field 'jndi'.
++ *
++ * @param jndi the value of field 'jndi'.
++ */
++ public void setJndi(
++ final org.castor.jdo.conf.Jndi jndi) {
++ this._jndi = jndi;
+ }
+
+ /**
@@ -487,12 +670,12 @@ Last-Update: 2010-06-27
+ * null or if any SAXException is thrown during marshaling
+ * @throws org.exolab.castor.xml.ValidationException if this
+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled org.castor.jdo.conf.Jndi
++ * @return the unmarshaled org.castor.jdo.conf.DatabaseChoice
+ */
-+ public static org.castor.jdo.conf.Jndi unmarshal(
++ public static org.castor.jdo.conf.DatabaseChoice unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.castor.jdo.conf.Jndi) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.Jndi.class, reader);
++ return (org.castor.jdo.conf.DatabaseChoice) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.DatabaseChoice.class, reader);
+ }
+
+ /**
@@ -510,25 +693,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/.castor.cdr
-@@ -0,0 +1,11 @@
-+#Sat Jun 12 20:35:50 VET 2010
-+org.castor.jdo.conf.TransactionManager=org.castor.jdo.conf.descriptors.TransactionManagerDescriptor
-+org.castor.jdo.conf.Jndi=org.castor.jdo.conf.descriptors.JndiDescriptor
-+org.castor.jdo.conf.TransactionDemarcation=org.castor.jdo.conf.descriptors.TransactionDemarcationDescriptor
-+org.castor.jdo.conf.JdoConf=org.castor.jdo.conf.descriptors.JdoConfDescriptor
-+org.castor.jdo.conf.Param=org.castor.jdo.conf.descriptors.ParamDescriptor
-+org.castor.jdo.conf.DataSource=org.castor.jdo.conf.descriptors.DataSourceDescriptor
-+org.castor.jdo.conf.DatabaseChoice=org.castor.jdo.conf.descriptors.DatabaseChoiceDescriptor
-+org.castor.jdo.conf.Driver=org.castor.jdo.conf.descriptors.DriverDescriptor
-+org.castor.jdo.conf.Database=org.castor.jdo.conf.descriptors.DatabaseDescriptor
-+org.castor.jdo.conf.Mapping=org.castor.jdo.conf.descriptors.MappingDescriptor
---- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/Param.java
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/Param.java
@@ -0,0 +1,163 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -690,11 +859,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/Mapping.java
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/ClassMapping.java
@@ -0,0 +1,138 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -702,12 +871,12 @@ Last-Update: 2010-06-27
+package org.castor.jdo.conf;
+
+/**
-+ * Class Mapping.
++ * Class ClassMapping.
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class Mapping implements java.io.Serializable {
++public class ClassMapping implements java.io.Serializable {
+
+
+ //--------------------------/
@@ -715,16 +884,16 @@ Last-Update: 2010-06-27
+ //--------------------------/
+
+ /**
-+ * Field _href.
++ * Field _name.
+ */
-+ private java.lang.String _href;
++ private java.lang.String _name;
+
+
+ //----------------/
+ //- Constructors -/
+ //----------------/
+
-+ public Mapping() {
++ public ClassMapping() {
+ super();
+ }
+
@@ -734,13 +903,13 @@ Last-Update: 2010-06-27
+ //-----------/
+
+ /**
-+ * Returns the value of field 'href'.
++ * Returns the value of field 'name'.
+ *
-+ * @return the value of field 'Href'.
++ * @return the value of field 'Name'.
+ */
-+ public java.lang.String getHref(
++ public java.lang.String getName(
+ ) {
-+ return this._href;
++ return this._name;
+ }
+
+ /**
@@ -791,13 +960,13 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Sets the value of field 'href'.
++ * Sets the value of field 'name'.
+ *
-+ * @param href the value of field 'href'.
++ * @param name the value of field 'name'.
+ */
-+ public void setHref(
-+ final java.lang.String href) {
-+ this._href = href;
++ public void setName(
++ final java.lang.String name) {
++ this._name = name;
+ }
+
+ /**
@@ -808,12 +977,12 @@ Last-Update: 2010-06-27
+ * null or if any SAXException is thrown during marshaling
+ * @throws org.exolab.castor.xml.ValidationException if this
+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled org.castor.jdo.conf.Mapping
++ * @return the unmarshaled org.castor.jdo.conf.ClassMapping
+ */
-+ public static org.castor.jdo.conf.Mapping unmarshal(
++ public static org.castor.jdo.conf.ClassMapping unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.castor.jdo.conf.Mapping) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.Mapping.class, reader);
++ return (org.castor.jdo.conf.ClassMapping) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.ClassMapping.class, reader);
+ }
+
+ /**
@@ -831,11 +1000,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/JdoConf.java
-@@ -0,0 +1,332 @@
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/TransactionDemarcation.java
+@@ -0,0 +1,165 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -843,12 +1012,12 @@ Last-Update: 2010-06-27
+package org.castor.jdo.conf;
+
+/**
-+ * Class JdoConf.
++ * Class TransactionDemarcation.
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class JdoConf implements java.io.Serializable {
++public class TransactionDemarcation implements java.io.Serializable {
+
+
+ //--------------------------/
@@ -856,29 +1025,22 @@ Last-Update: 2010-06-27
+ //--------------------------/
+
+ /**
-+ * Field _name.
-+ */
-+ private java.lang.String _name = "jdo-conf";
-+
-+ /**
-+ * Field _databaseList.
++ * Field _mode.
+ */
-+ private java.util.List<org.castor.jdo.conf.Database> _databaseList;
++ private java.lang.String _mode;
+
+ /**
-+ * Field _transactionDemarcation.
++ * Field _transactionManager.
+ */
-+ private org.castor.jdo.conf.TransactionDemarcation _transactionDemarcation;
++ private org.castor.jdo.conf.TransactionManager _transactionManager;
+
+
+ //----------------/
+ //- Constructors -/
+ //----------------/
+
-+ public JdoConf() {
++ public TransactionDemarcation() {
+ super();
-+ setName("jdo-conf");
-+ this._databaseList = new java.util.ArrayList<org.castor.jdo.conf.Database>();
+ }
+
+
@@ -887,107 +1049,23 @@ Last-Update: 2010-06-27
+ //-----------/
+
+ /**
++ * Returns the value of field 'mode'.
+ *
-+ *
-+ * @param vDatabase
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @return the value of field 'Mode'.
+ */
-+ public void addDatabase(
-+ final org.castor.jdo.conf.Database vDatabase)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._databaseList.add(vDatabase);
++ public java.lang.String getMode(
++ ) {
++ return this._mode;
+ }
+
+ /**
++ * Returns the value of field 'transactionManager'.
+ *
-+ *
-+ * @param index
-+ * @param vDatabase
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @return the value of field 'TransactionManager'.
+ */
-+ public void addDatabase(
-+ final int index,
-+ final org.castor.jdo.conf.Database vDatabase)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._databaseList.add(index, vDatabase);
-+ }
-+
-+ /**
-+ * Method enumerateDatabase.
-+ *
-+ * @return an Enumeration over all possible elements of this
-+ * collection
-+ */
-+ public java.util.Enumeration<? extends org.castor.jdo.conf.Database> enumerateDatabase(
-+ ) {
-+ return java.util.Collections.enumeration(this._databaseList);
-+ }
-+
-+ /**
-+ * Method getDatabase.
-+ *
-+ * @param index
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
-+ * @return the value of the org.castor.jdo.conf.Database at the
-+ * given index
-+ */
-+ public org.castor.jdo.conf.Database getDatabase(
-+ final int index)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._databaseList.size()) {
-+ throw new IndexOutOfBoundsException("getDatabase: Index value '" + index + "' not in range [0.." + (this._databaseList.size() - 1) + "]");
-+ }
-+
-+ return (org.castor.jdo.conf.Database) _databaseList.get(index);
-+ }
-+
-+ /**
-+ * Method getDatabase.Returns the contents of the collection in
-+ * an Array. <p>Note: Just in case the collection contents
-+ * are changing in another thread, we pass a 0-length Array of
-+ * the correct type into the API call. This way we <i>know</i>
-+ * that the Array returned is of exactly the correct length.
-+ *
-+ * @return this collection as an Array
-+ */
-+ public org.castor.jdo.conf.Database[] getDatabase(
-+ ) {
-+ org.castor.jdo.conf.Database[] array = new org.castor.jdo.conf.Database[0];
-+ return (org.castor.jdo.conf.Database[]) this._databaseList.toArray(array);
-+ }
-+
-+ /**
-+ * Method getDatabaseCount.
-+ *
-+ * @return the size of this collection
-+ */
-+ public int getDatabaseCount(
-+ ) {
-+ return this._databaseList.size();
-+ }
-+
-+ /**
-+ * Returns the value of field 'name'.
-+ *
-+ * @return the value of field 'Name'.
-+ */
-+ public java.lang.String getName(
-+ ) {
-+ return this._name;
-+ }
-+
-+ /**
-+ * Returns the value of field 'transactionDemarcation'.
-+ *
-+ * @return the value of field 'TransactionDemarcation'.
-+ */
-+ public org.castor.jdo.conf.TransactionDemarcation getTransactionDemarcation(
++ public org.castor.jdo.conf.TransactionManager getTransactionManager(
+ ) {
-+ return this._transactionDemarcation;
++ return this._transactionManager;
+ }
+
+ /**
@@ -1006,17 +1084,6 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Method iterateDatabase.
-+ *
-+ * @return an Iterator over all possible elements in this
-+ * collection
-+ */
-+ public java.util.Iterator<? extends org.castor.jdo.conf.Database> iterateDatabase(
-+ ) {
-+ return this._databaseList.iterator();
-+ }
-+
-+ /**
+ *
+ *
+ * @param out
@@ -1049,90 +1116,24 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ */
-+ public void removeAllDatabase(
-+ ) {
-+ this._databaseList.clear();
-+ }
-+
-+ /**
-+ * Method removeDatabase.
-+ *
-+ * @param vDatabase
-+ * @return true if the object was removed from the collection.
-+ */
-+ public boolean removeDatabase(
-+ final org.castor.jdo.conf.Database vDatabase) {
-+ boolean removed = _databaseList.remove(vDatabase);
-+ return removed;
-+ }
-+
-+ /**
-+ * Method removeDatabaseAt.
-+ *
-+ * @param index
-+ * @return the element removed from the collection
-+ */
-+ public org.castor.jdo.conf.Database removeDatabaseAt(
-+ final int index) {
-+ java.lang.Object obj = this._databaseList.remove(index);
-+ return (org.castor.jdo.conf.Database) obj;
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param index
-+ * @param vDatabase
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
-+ */
-+ public void setDatabase(
-+ final int index,
-+ final org.castor.jdo.conf.Database vDatabase)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._databaseList.size()) {
-+ throw new IndexOutOfBoundsException("setDatabase: Index value '" + index + "' not in range [0.." + (this._databaseList.size() - 1) + "]");
-+ }
-+
-+ this._databaseList.set(index, vDatabase);
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param vDatabaseArray
-+ */
-+ public void setDatabase(
-+ final org.castor.jdo.conf.Database[] vDatabaseArray) {
-+ //-- copy array
-+ _databaseList.clear();
-+
-+ for (int i = 0; i < vDatabaseArray.length; i++) {
-+ this._databaseList.add(vDatabaseArray[i]);
-+ }
-+ }
-+
-+ /**
-+ * Sets the value of field 'name'.
++ * Sets the value of field 'mode'.
+ *
-+ * @param name the value of field 'name'.
++ * @param mode the value of field 'mode'.
+ */
-+ public void setName(
-+ final java.lang.String name) {
-+ this._name = name;
++ public void setMode(
++ final java.lang.String mode) {
++ this._mode = mode;
+ }
+
+ /**
-+ * Sets the value of field 'transactionDemarcation'.
++ * Sets the value of field 'transactionManager'.
+ *
-+ * @param transactionDemarcation the value of field
-+ * 'transactionDemarcation'.
++ * @param transactionManager the value of field
++ * 'transactionManager'.
+ */
-+ public void setTransactionDemarcation(
-+ final org.castor.jdo.conf.TransactionDemarcation transactionDemarcation) {
-+ this._transactionDemarcation = transactionDemarcation;
++ public void setTransactionManager(
++ final org.castor.jdo.conf.TransactionManager transactionManager) {
++ this._transactionManager = transactionManager;
+ }
+
+ /**
@@ -1143,12 +1144,13 @@ Last-Update: 2010-06-27
+ * null or if any SAXException is thrown during marshaling
+ * @throws org.exolab.castor.xml.ValidationException if this
+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled org.castor.jdo.conf.JdoConf
++ * @return the unmarshaled
++ * org.castor.jdo.conf.TransactionDemarcation
+ */
-+ public static org.castor.jdo.conf.JdoConf unmarshal(
++ public static org.castor.jdo.conf.TransactionDemarcation unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.castor.jdo.conf.JdoConf) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.JdoConf.class, reader);
++ return (org.castor.jdo.conf.TransactionDemarcation) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.TransactionDemarcation.class, reader);
+ }
+
+ /**
@@ -1166,11 +1168,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/TransactionManager.java
-@@ -0,0 +1,306 @@
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/PackageMapping.java
+@@ -0,0 +1,138 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -1178,12 +1180,12 @@ Last-Update: 2010-06-27
+package org.castor.jdo.conf;
+
+/**
-+ * Class TransactionManager.
++ * Class PackageMapping.
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class TransactionManager implements java.io.Serializable {
++public class PackageMapping implements java.io.Serializable {
+
+
+ //--------------------------/
@@ -1193,22 +1195,15 @@ Last-Update: 2010-06-27
+ /**
+ * Field _name.
+ */
-+ private java.lang.String _name = "local";
-+
-+ /**
-+ * Field _paramList.
-+ */
-+ private java.util.List<org.castor.jdo.conf.Param> _paramList;
++ private java.lang.String _name;
+
+
+ //----------------/
+ //- Constructors -/
+ //----------------/
+
-+ public TransactionManager() {
++ public PackageMapping() {
+ super();
-+ setName("local");
-+ this._paramList = new java.util.ArrayList<org.castor.jdo.conf.Param>();
+ }
+
+
@@ -1217,138 +1212,43 @@ Last-Update: 2010-06-27
+ //-----------/
+
+ /**
++ * Returns the value of field 'name'.
+ *
-+ *
-+ * @param vParam
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
-+ */
-+ public void addParam(
-+ final org.castor.jdo.conf.Param vParam)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._paramList.add(vParam);
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param index
-+ * @param vParam
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @return the value of field 'Name'.
+ */
-+ public void addParam(
-+ final int index,
-+ final org.castor.jdo.conf.Param vParam)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._paramList.add(index, vParam);
++ public java.lang.String getName(
++ ) {
++ return this._name;
+ }
+
+ /**
-+ * Method enumerateParam.
++ * Method isValid.
+ *
-+ * @return an Enumeration over all possible elements of this
-+ * collection
++ * @return true if this object is valid according to the schema
+ */
-+ public java.util.Enumeration<? extends org.castor.jdo.conf.Param> enumerateParam(
++ public boolean isValid(
+ ) {
-+ return java.util.Collections.enumeration(this._paramList);
++ try {
++ validate();
++ } catch (org.exolab.castor.xml.ValidationException vex) {
++ return false;
++ }
++ return true;
+ }
+
+ /**
-+ * Returns the value of field 'name'.
+ *
-+ * @return the value of field 'Name'.
++ *
++ * @param out
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
+ */
-+ public java.lang.String getName(
-+ ) {
-+ return this._name;
-+ }
-+
-+ /**
-+ * Method getParam.
-+ *
-+ * @param index
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
-+ * @return the value of the org.castor.jdo.conf.Param at the
-+ * given index
-+ */
-+ public org.castor.jdo.conf.Param getParam(
-+ final int index)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._paramList.size()) {
-+ throw new IndexOutOfBoundsException("getParam: Index value '" + index + "' not in range [0.." + (this._paramList.size() - 1) + "]");
-+ }
-+
-+ return (org.castor.jdo.conf.Param) _paramList.get(index);
-+ }
-+
-+ /**
-+ * Method getParam.Returns the contents of the collection in an
-+ * Array. <p>Note: Just in case the collection contents are
-+ * changing in another thread, we pass a 0-length Array of the
-+ * correct type into the API call. This way we <i>know</i>
-+ * that the Array returned is of exactly the correct length.
-+ *
-+ * @return this collection as an Array
-+ */
-+ public org.castor.jdo.conf.Param[] getParam(
-+ ) {
-+ org.castor.jdo.conf.Param[] array = new org.castor.jdo.conf.Param[0];
-+ return (org.castor.jdo.conf.Param[]) this._paramList.toArray(array);
-+ }
-+
-+ /**
-+ * Method getParamCount.
-+ *
-+ * @return the size of this collection
-+ */
-+ public int getParamCount(
-+ ) {
-+ return this._paramList.size();
-+ }
-+
-+ /**
-+ * Method isValid.
-+ *
-+ * @return true if this object is valid according to the schema
-+ */
-+ public boolean isValid(
-+ ) {
-+ try {
-+ validate();
-+ } catch (org.exolab.castor.xml.ValidationException vex) {
-+ return false;
-+ }
-+ return true;
-+ }
-+
-+ /**
-+ * Method iterateParam.
-+ *
-+ * @return an Iterator over all possible elements in this
-+ * collection
-+ */
-+ public java.util.Iterator<? extends org.castor.jdo.conf.Param> iterateParam(
-+ ) {
-+ return this._paramList.iterator();
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param out
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ */
-+ public void marshal(
-+ final java.io.Writer out)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, out);
++ public void marshal(
++ final java.io.Writer out)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, out);
+ }
+
+ /**
@@ -1369,37 +1269,6 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ */
-+ public void removeAllParam(
-+ ) {
-+ this._paramList.clear();
-+ }
-+
-+ /**
-+ * Method removeParam.
-+ *
-+ * @param vParam
-+ * @return true if the object was removed from the collection.
-+ */
-+ public boolean removeParam(
-+ final org.castor.jdo.conf.Param vParam) {
-+ boolean removed = _paramList.remove(vParam);
-+ return removed;
-+ }
-+
-+ /**
-+ * Method removeParamAt.
-+ *
-+ * @param index
-+ * @return the element removed from the collection
-+ */
-+ public org.castor.jdo.conf.Param removeParamAt(
-+ final int index) {
-+ java.lang.Object obj = this._paramList.remove(index);
-+ return (org.castor.jdo.conf.Param) obj;
-+ }
-+
-+ /**
+ * Sets the value of field 'name'.
+ *
+ * @param name the value of field 'name'.
@@ -1410,41 +1279,6 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ *
-+ *
-+ * @param index
-+ * @param vParam
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
-+ */
-+ public void setParam(
-+ final int index,
-+ final org.castor.jdo.conf.Param vParam)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._paramList.size()) {
-+ throw new IndexOutOfBoundsException("setParam: Index value '" + index + "' not in range [0.." + (this._paramList.size() - 1) + "]");
-+ }
-+
-+ this._paramList.set(index, vParam);
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param vParamArray
-+ */
-+ public void setParam(
-+ final org.castor.jdo.conf.Param[] vParamArray) {
-+ //-- copy array
-+ _paramList.clear();
-+
-+ for (int i = 0; i < vParamArray.length; i++) {
-+ this._paramList.add(vParamArray[i]);
-+ }
-+ }
-+
-+ /**
+ * Method unmarshal.
+ *
+ * @param reader
@@ -1452,12 +1286,12 @@ Last-Update: 2010-06-27
+ * null or if any SAXException is thrown during marshaling
+ * @throws org.exolab.castor.xml.ValidationException if this
+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled org.castor.jdo.conf.TransactionManage
++ * @return the unmarshaled org.castor.jdo.conf.PackageMapping
+ */
-+ public static org.castor.jdo.conf.TransactionManager unmarshal(
++ public static org.castor.jdo.conf.PackageMapping unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.castor.jdo.conf.TransactionManager) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.TransactionManager.class, reader);
++ return (org.castor.jdo.conf.PackageMapping) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.PackageMapping.class, reader);
+ }
+
+ /**
@@ -1475,11 +1309,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/DataSource.java
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/DataSource.java
@@ -0,0 +1,305 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -1783,11 +1617,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/TransactionDemarcation.java
-@@ -0,0 +1,165 @@
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/Jndi.java
+@@ -0,0 +1,138 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -1795,12 +1629,12 @@ Last-Update: 2010-06-27
+package org.castor.jdo.conf;
+
+/**
-+ * Class TransactionDemarcation.
++ * Class Jndi.
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class TransactionDemarcation implements java.io.Serializable {
++public class Jndi implements java.io.Serializable {
+
+
+ //--------------------------/
@@ -1808,21 +1642,16 @@ Last-Update: 2010-06-27
+ //--------------------------/
+
+ /**
-+ * Field _mode.
-+ */
-+ private java.lang.String _mode;
-+
-+ /**
-+ * Field _transactionManager.
++ * Field _name.
+ */
-+ private org.castor.jdo.conf.TransactionManager _transactionManager;
++ private java.lang.String _name;
+
+
+ //----------------/
+ //- Constructors -/
+ //----------------/
+
-+ public TransactionDemarcation() {
++ public Jndi() {
+ super();
+ }
+
@@ -1832,23 +1661,13 @@ Last-Update: 2010-06-27
+ //-----------/
+
+ /**
-+ * Returns the value of field 'mode'.
-+ *
-+ * @return the value of field 'Mode'.
-+ */
-+ public java.lang.String getMode(
-+ ) {
-+ return this._mode;
-+ }
-+
-+ /**
-+ * Returns the value of field 'transactionManager'.
++ * Returns the value of field 'name'.
+ *
-+ * @return the value of field 'TransactionManager'.
++ * @return the value of field 'Name'.
+ */
-+ public org.castor.jdo.conf.TransactionManager getTransactionManager(
++ public java.lang.String getName(
+ ) {
-+ return this._transactionManager;
++ return this._name;
+ }
+
+ /**
@@ -1899,24 +1718,13 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Sets the value of field 'mode'.
-+ *
-+ * @param mode the value of field 'mode'.
-+ */
-+ public void setMode(
-+ final java.lang.String mode) {
-+ this._mode = mode;
-+ }
-+
-+ /**
-+ * Sets the value of field 'transactionManager'.
++ * Sets the value of field 'name'.
+ *
-+ * @param transactionManager the value of field
-+ * 'transactionManager'.
++ * @param name the value of field 'name'.
+ */
-+ public void setTransactionManager(
-+ final org.castor.jdo.conf.TransactionManager transactionManager) {
-+ this._transactionManager = transactionManager;
++ public void setName(
++ final java.lang.String name) {
++ this._name = name;
+ }
+
+ /**
@@ -1927,13 +1735,12 @@ Last-Update: 2010-06-27
+ * null or if any SAXException is thrown during marshaling
+ * @throws org.exolab.castor.xml.ValidationException if this
+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled
-+ * org.castor.jdo.conf.TransactionDemarcation
++ * @return the unmarshaled org.castor.jdo.conf.Jndi
+ */
-+ public static org.castor.jdo.conf.TransactionDemarcation unmarshal(
++ public static org.castor.jdo.conf.Jndi unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.castor.jdo.conf.TransactionDemarcation) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.TransactionDemarcation.class, reader);
++ return (org.castor.jdo.conf.Jndi) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.Jndi.class, reader);
+ }
+
+ /**
@@ -1951,11 +1758,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/Driver.java
-@@ -0,0 +1,330 @@
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/TransactionManager.java
+@@ -0,0 +1,306 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -1963,12 +1770,12 @@ Last-Update: 2010-06-27
+package org.castor.jdo.conf;
+
+/**
-+ * Class Driver.
++ * Class TransactionManager.
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class Driver implements java.io.Serializable {
++public class TransactionManager implements java.io.Serializable {
+
+
+ //--------------------------/
@@ -1976,14 +1783,9 @@ Last-Update: 2010-06-27
+ //--------------------------/
+
+ /**
-+ * Field _url.
-+ */
-+ private java.lang.String _url;
-+
-+ /**
-+ * Field _className.
++ * Field _name.
+ */
-+ private java.lang.String _className;
++ private java.lang.String _name = "local";
+
+ /**
+ * Field _paramList.
@@ -1995,8 +1797,9 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public Driver() {
++ public TransactionManager() {
+ super();
++ setName("local");
+ this._paramList = new java.util.ArrayList<org.castor.jdo.conf.Param>();
+ }
+
@@ -2045,13 +1848,13 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Returns the value of field 'className'.
++ * Returns the value of field 'name'.
+ *
-+ * @return the value of field 'ClassName'.
++ * @return the value of field 'Name'.
+ */
-+ public java.lang.String getClassName(
++ public java.lang.String getName(
+ ) {
-+ return this._className;
++ return this._name;
+ }
+
+ /**
@@ -2100,16 +1903,6 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Returns the value of field 'url'.
-+ *
-+ * @return the value of field 'Url'.
-+ */
-+ public java.lang.String getUrl(
-+ ) {
-+ return this._url;
-+ }
-+
-+ /**
+ * Method isValid.
+ *
+ * @return true if this object is valid according to the schema
@@ -2199,13 +1992,13 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Sets the value of field 'className'.
++ * Sets the value of field 'name'.
+ *
-+ * @param className the value of field 'className'.
++ * @param name the value of field 'name'.
+ */
-+ public void setClassName(
-+ final java.lang.String className) {
-+ this._className = className;
++ public void setName(
++ final java.lang.String name) {
++ this._name = name;
+ }
+
+ /**
@@ -2244,16 +2037,6 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Sets the value of field 'url'.
-+ *
-+ * @param url the value of field 'url'.
-+ */
-+ public void setUrl(
-+ final java.lang.String url) {
-+ this._url = url;
-+ }
-+
-+ /**
+ * Method unmarshal.
+ *
+ * @param reader
@@ -2261,12 +2044,12 @@ Last-Update: 2010-06-27
+ * null or if any SAXException is thrown during marshaling
+ * @throws org.exolab.castor.xml.ValidationException if this
+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled org.castor.jdo.conf.Driver
++ * @return the unmarshaled org.castor.jdo.conf.TransactionManage
+ */
-+ public static org.castor.jdo.conf.Driver unmarshal(
++ public static org.castor.jdo.conf.TransactionManager unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.castor.jdo.conf.Driver) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.Driver.class, reader);
++ return (org.castor.jdo.conf.TransactionManager) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.TransactionManager.class, reader);
+ }
+
+ /**
@@ -2284,11 +2067,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/DatabaseChoice.java
-@@ -0,0 +1,188 @@
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/Database.java
+@@ -0,0 +1,692 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -2296,12 +2079,12 @@ Last-Update: 2010-06-27
+package org.castor.jdo.conf;
+
+/**
-+ * Class DatabaseChoice.
++ * Class Database.
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class DatabaseChoice implements java.io.Serializable {
++public class Database implements java.io.Serializable {
+
+
+ //--------------------------/
@@ -2309,27 +2092,1340 @@ Last-Update: 2010-06-27
+ //--------------------------/
+
+ /**
-+ * Field _driver.
++ * Field _name.
+ */
-+ private org.castor.jdo.conf.Driver _driver;
++ private java.lang.String _name;
+
+ /**
-+ * Field _dataSource.
++ * Field _engine.
+ */
-+ private org.castor.jdo.conf.DataSource _dataSource;
++ private java.lang.String _engine = "generic";
+
+ /**
-+ * Field _jndi.
++ * Field _databaseChoice.
+ */
-+ private org.castor.jdo.conf.Jndi _jndi;
++ private org.castor.jdo.conf.DatabaseChoice _databaseChoice;
++
++ /**
++ * Field _mappingList.
++ */
++ private java.util.List<org.castor.jdo.conf.Mapping> _mappingList;
++
++ /**
++ * Field _packageMappingList.
++ */
++ private java.util.List<org.castor.jdo.conf.PackageMapping> _packageMappingList;
++
++ /**
++ * Field _classMappingList.
++ */
++ private java.util.List<org.castor.jdo.conf.ClassMapping> _classMappingList;
+
+
+ //----------------/
+ //- Constructors -/
+ //----------------/
+
-+ public DatabaseChoice() {
-+ super();
++ public Database() {
++ super();
++ setEngine("generic");
++ this._mappingList = new java.util.ArrayList<org.castor.jdo.conf.Mapping>();
++ this._packageMappingList = new java.util.ArrayList<org.castor.jdo.conf.PackageMapping>();
++ this._classMappingList = new java.util.ArrayList<org.castor.jdo.conf.ClassMapping>();
++ }
++
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
++ /**
++ *
++ *
++ * @param vClassMapping
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void addClassMapping(
++ final org.castor.jdo.conf.ClassMapping vClassMapping)
++ throws java.lang.IndexOutOfBoundsException {
++ this._classMappingList.add(vClassMapping);
++ }
++
++ /**
++ *
++ *
++ * @param index
++ * @param vClassMapping
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void addClassMapping(
++ final int index,
++ final org.castor.jdo.conf.ClassMapping vClassMapping)
++ throws java.lang.IndexOutOfBoundsException {
++ this._classMappingList.add(index, vClassMapping);
++ }
++
++ /**
++ *
++ *
++ * @param vMapping
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void addMapping(
++ final org.castor.jdo.conf.Mapping vMapping)
++ throws java.lang.IndexOutOfBoundsException {
++ this._mappingList.add(vMapping);
++ }
++
++ /**
++ *
++ *
++ * @param index
++ * @param vMapping
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void addMapping(
++ final int index,
++ final org.castor.jdo.conf.Mapping vMapping)
++ throws java.lang.IndexOutOfBoundsException {
++ this._mappingList.add(index, vMapping);
++ }
++
++ /**
++ *
++ *
++ * @param vPackageMapping
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void addPackageMapping(
++ final org.castor.jdo.conf.PackageMapping vPackageMapping)
++ throws java.lang.IndexOutOfBoundsException {
++ this._packageMappingList.add(vPackageMapping);
++ }
++
++ /**
++ *
++ *
++ * @param index
++ * @param vPackageMapping
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void addPackageMapping(
++ final int index,
++ final org.castor.jdo.conf.PackageMapping vPackageMapping)
++ throws java.lang.IndexOutOfBoundsException {
++ this._packageMappingList.add(index, vPackageMapping);
++ }
++
++ /**
++ * Method enumerateClassMapping.
++ *
++ * @return an Enumeration over all possible elements of this
++ * collection
++ */
++ public java.util.Enumeration<? extends org.castor.jdo.conf.ClassMapping> enumerateClassMapping(
++ ) {
++ return java.util.Collections.enumeration(this._classMappingList);
++ }
++
++ /**
++ * Method enumerateMapping.
++ *
++ * @return an Enumeration over all possible elements of this
++ * collection
++ */
++ public java.util.Enumeration<? extends org.castor.jdo.conf.Mapping> enumerateMapping(
++ ) {
++ return java.util.Collections.enumeration(this._mappingList);
++ }
++
++ /**
++ * Method enumeratePackageMapping.
++ *
++ * @return an Enumeration over all possible elements of this
++ * collection
++ */
++ public java.util.Enumeration<? extends org.castor.jdo.conf.PackageMapping> enumeratePackageMapping(
++ ) {
++ return java.util.Collections.enumeration(this._packageMappingList);
++ }
++
++ /**
++ * Method getClassMapping.
++ *
++ * @param index
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ * @return the value of the org.castor.jdo.conf.ClassMapping at
++ * the given index
++ */
++ public org.castor.jdo.conf.ClassMapping getClassMapping(
++ final int index)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._classMappingList.size()) {
++ throw new IndexOutOfBoundsException("getClassMapping: Index value '" + index + "' not in range [0.." + (this._classMappingList.size() - 1) + "]");
++ }
++
++ return (org.castor.jdo.conf.ClassMapping) _classMappingList.get(index);
++ }
++
++ /**
++ * Method getClassMapping.Returns the contents of the
++ * collection in an Array. <p>Note: Just in case the
++ * collection contents are changing in another thread, we pass
++ * a 0-length Array of the correct type into the API call.
++ * This way we <i>know</i> that the Array returned is of
++ * exactly the correct length.
++ *
++ * @return this collection as an Array
++ */
++ public org.castor.jdo.conf.ClassMapping[] getClassMapping(
++ ) {
++ org.castor.jdo.conf.ClassMapping[] array = new org.castor.jdo.conf.ClassMapping[0];
++ return (org.castor.jdo.conf.ClassMapping[]) this._classMappingList.toArray(array);
++ }
++
++ /**
++ * Method getClassMappingCount.
++ *
++ * @return the size of this collection
++ */
++ public int getClassMappingCount(
++ ) {
++ return this._classMappingList.size();
++ }
++
++ /**
++ * Returns the value of field 'databaseChoice'.
++ *
++ * @return the value of field 'DatabaseChoice'.
++ */
++ public org.castor.jdo.conf.DatabaseChoice getDatabaseChoice(
++ ) {
++ return this._databaseChoice;
++ }
++
++ /**
++ * Returns the value of field 'engine'.
++ *
++ * @return the value of field 'Engine'.
++ */
++ public java.lang.String getEngine(
++ ) {
++ return this._engine;
++ }
++
++ /**
++ * Method getMapping.
++ *
++ * @param index
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ * @return the value of the org.castor.jdo.conf.Mapping at the
++ * given index
++ */
++ public org.castor.jdo.conf.Mapping getMapping(
++ final int index)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._mappingList.size()) {
++ throw new IndexOutOfBoundsException("getMapping: Index value '" + index + "' not in range [0.." + (this._mappingList.size() - 1) + "]");
++ }
++
++ return (org.castor.jdo.conf.Mapping) _mappingList.get(index);
++ }
++
++ /**
++ * Method getMapping.Returns the contents of the collection in
++ * an Array. <p>Note: Just in case the collection contents
++ * are changing in another thread, we pass a 0-length Array of
++ * the correct type into the API call. This way we <i>know</i>
++ * that the Array returned is of exactly the correct length.
++ *
++ * @return this collection as an Array
++ */
++ public org.castor.jdo.conf.Mapping[] getMapping(
++ ) {
++ org.castor.jdo.conf.Mapping[] array = new org.castor.jdo.conf.Mapping[0];
++ return (org.castor.jdo.conf.Mapping[]) this._mappingList.toArray(array);
++ }
++
++ /**
++ * Method getMappingCount.
++ *
++ * @return the size of this collection
++ */
++ public int getMappingCount(
++ ) {
++ return this._mappingList.size();
++ }
++
++ /**
++ * Returns the value of field 'name'.
++ *
++ * @return the value of field 'Name'.
++ */
++ public java.lang.String getName(
++ ) {
++ return this._name;
++ }
++
++ /**
++ * Method getPackageMapping.
++ *
++ * @param index
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ * @return the value of the org.castor.jdo.conf.PackageMapping
++ * at the given index
++ */
++ public org.castor.jdo.conf.PackageMapping getPackageMapping(
++ final int index)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._packageMappingList.size()) {
++ throw new IndexOutOfBoundsException("getPackageMapping: Index value '" + index + "' not in range [0.." + (this._packageMappingList.size() - 1) + "]");
++ }
++
++ return (org.castor.jdo.conf.PackageMapping) _packageMappingList.get(index);
++ }
++
++ /**
++ * Method getPackageMapping.Returns the contents of the
++ * collection in an Array. <p>Note: Just in case the
++ * collection contents are changing in another thread, we pass
++ * a 0-length Array of the correct type into the API call.
++ * This way we <i>know</i> that the Array returned is of
++ * exactly the correct length.
++ *
++ * @return this collection as an Array
++ */
++ public org.castor.jdo.conf.PackageMapping[] getPackageMapping(
++ ) {
++ org.castor.jdo.conf.PackageMapping[] array = new org.castor.jdo.conf.PackageMapping[0];
++ return (org.castor.jdo.conf.PackageMapping[]) this._packageMappingList.toArray(array);
++ }
++
++ /**
++ * Method getPackageMappingCount.
++ *
++ * @return the size of this collection
++ */
++ public int getPackageMappingCount(
++ ) {
++ return this._packageMappingList.size();
++ }
++
++ /**
++ * Method isValid.
++ *
++ * @return true if this object is valid according to the schema
++ */
++ public boolean isValid(
++ ) {
++ try {
++ validate();
++ } catch (org.exolab.castor.xml.ValidationException vex) {
++ return false;
++ }
++ return true;
++ }
++
++ /**
++ * Method iterateClassMapping.
++ *
++ * @return an Iterator over all possible elements in this
++ * collection
++ */
++ public java.util.Iterator<? extends org.castor.jdo.conf.ClassMapping> iterateClassMapping(
++ ) {
++ return this._classMappingList.iterator();
++ }
++
++ /**
++ * Method iterateMapping.
++ *
++ * @return an Iterator over all possible elements in this
++ * collection
++ */
++ public java.util.Iterator<? extends org.castor.jdo.conf.Mapping> iterateMapping(
++ ) {
++ return this._mappingList.iterator();
++ }
++
++ /**
++ * Method iteratePackageMapping.
++ *
++ * @return an Iterator over all possible elements in this
++ * collection
++ */
++ public java.util.Iterator<? extends org.castor.jdo.conf.PackageMapping> iteratePackageMapping(
++ ) {
++ return this._packageMappingList.iterator();
++ }
++
++ /**
++ *
++ *
++ * @param out
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ */
++ public void marshal(
++ final java.io.Writer out)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, out);
++ }
++
++ /**
++ *
++ *
++ * @param handler
++ * @throws java.io.IOException if an IOException occurs during
++ * marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ */
++ public void marshal(
++ final org.xml.sax.ContentHandler handler)
++ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, handler);
++ }
++
++ /**
++ */
++ public void removeAllClassMapping(
++ ) {
++ this._classMappingList.clear();
++ }
++
++ /**
++ */
++ public void removeAllMapping(
++ ) {
++ this._mappingList.clear();
++ }
++
++ /**
++ */
++ public void removeAllPackageMapping(
++ ) {
++ this._packageMappingList.clear();
++ }
++
++ /**
++ * Method removeClassMapping.
++ *
++ * @param vClassMapping
++ * @return true if the object was removed from the collection.
++ */
++ public boolean removeClassMapping(
++ final org.castor.jdo.conf.ClassMapping vClassMapping) {
++ boolean removed = _classMappingList.remove(vClassMapping);
++ return removed;
++ }
++
++ /**
++ * Method removeClassMappingAt.
++ *
++ * @param index
++ * @return the element removed from the collection
++ */
++ public org.castor.jdo.conf.ClassMapping removeClassMappingAt(
++ final int index) {
++ java.lang.Object obj = this._classMappingList.remove(index);
++ return (org.castor.jdo.conf.ClassMapping) obj;
++ }
++
++ /**
++ * Method removeMapping.
++ *
++ * @param vMapping
++ * @return true if the object was removed from the collection.
++ */
++ public boolean removeMapping(
++ final org.castor.jdo.conf.Mapping vMapping) {
++ boolean removed = _mappingList.remove(vMapping);
++ return removed;
++ }
++
++ /**
++ * Method removeMappingAt.
++ *
++ * @param index
++ * @return the element removed from the collection
++ */
++ public org.castor.jdo.conf.Mapping removeMappingAt(
++ final int index) {
++ java.lang.Object obj = this._mappingList.remove(index);
++ return (org.castor.jdo.conf.Mapping) obj;
++ }
++
++ /**
++ * Method removePackageMapping.
++ *
++ * @param vPackageMapping
++ * @return true if the object was removed from the collection.
++ */
++ public boolean removePackageMapping(
++ final org.castor.jdo.conf.PackageMapping vPackageMapping) {
++ boolean removed = _packageMappingList.remove(vPackageMapping);
++ return removed;
++ }
++
++ /**
++ * Method removePackageMappingAt.
++ *
++ * @param index
++ * @return the element removed from the collection
++ */
++ public org.castor.jdo.conf.PackageMapping removePackageMappingAt(
++ final int index) {
++ java.lang.Object obj = this._packageMappingList.remove(index);
++ return (org.castor.jdo.conf.PackageMapping) obj;
++ }
++
++ /**
++ *
++ *
++ * @param index
++ * @param vClassMapping
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void setClassMapping(
++ final int index,
++ final org.castor.jdo.conf.ClassMapping vClassMapping)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._classMappingList.size()) {
++ throw new IndexOutOfBoundsException("setClassMapping: Index value '" + index + "' not in range [0.." + (this._classMappingList.size() - 1) + "]");
++ }
++
++ this._classMappingList.set(index, vClassMapping);
++ }
++
++ /**
++ *
++ *
++ * @param vClassMappingArray
++ */
++ public void setClassMapping(
++ final org.castor.jdo.conf.ClassMapping[] vClassMappingArray) {
++ //-- copy array
++ _classMappingList.clear();
++
++ for (int i = 0; i < vClassMappingArray.length; i++) {
++ this._classMappingList.add(vClassMappingArray[i]);
++ }
++ }
++
++ /**
++ * Sets the value of field 'databaseChoice'.
++ *
++ * @param databaseChoice the value of field 'databaseChoice'.
++ */
++ public void setDatabaseChoice(
++ final org.castor.jdo.conf.DatabaseChoice databaseChoice) {
++ this._databaseChoice = databaseChoice;
++ }
++
++ /**
++ * Sets the value of field 'engine'.
++ *
++ * @param engine the value of field 'engine'.
++ */
++ public void setEngine(
++ final java.lang.String engine) {
++ this._engine = engine;
++ }
++
++ /**
++ *
++ *
++ * @param index
++ * @param vMapping
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void setMapping(
++ final int index,
++ final org.castor.jdo.conf.Mapping vMapping)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._mappingList.size()) {
++ throw new IndexOutOfBoundsException("setMapping: Index value '" + index + "' not in range [0.." + (this._mappingList.size() - 1) + "]");
++ }
++
++ this._mappingList.set(index, vMapping);
++ }
++
++ /**
++ *
++ *
++ * @param vMappingArray
++ */
++ public void setMapping(
++ final org.castor.jdo.conf.Mapping[] vMappingArray) {
++ //-- copy array
++ _mappingList.clear();
++
++ for (int i = 0; i < vMappingArray.length; i++) {
++ this._mappingList.add(vMappingArray[i]);
++ }
++ }
++
++ /**
++ * Sets the value of field 'name'.
++ *
++ * @param name the value of field 'name'.
++ */
++ public void setName(
++ final java.lang.String name) {
++ this._name = name;
++ }
++
++ /**
++ *
++ *
++ * @param index
++ * @param vPackageMapping
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void setPackageMapping(
++ final int index,
++ final org.castor.jdo.conf.PackageMapping vPackageMapping)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._packageMappingList.size()) {
++ throw new IndexOutOfBoundsException("setPackageMapping: Index value '" + index + "' not in range [0.." + (this._packageMappingList.size() - 1) + "]");
++ }
++
++ this._packageMappingList.set(index, vPackageMapping);
++ }
++
++ /**
++ *
++ *
++ * @param vPackageMappingArray
++ */
++ public void setPackageMapping(
++ final org.castor.jdo.conf.PackageMapping[] vPackageMappingArray) {
++ //-- copy array
++ _packageMappingList.clear();
++
++ for (int i = 0; i < vPackageMappingArray.length; i++) {
++ this._packageMappingList.add(vPackageMappingArray[i]);
++ }
++ }
++
++ /**
++ * Method unmarshal.
++ *
++ * @param reader
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @return the unmarshaled org.castor.jdo.conf.Database
++ */
++ public static org.castor.jdo.conf.Database unmarshal(
++ final java.io.Reader reader)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ return (org.castor.jdo.conf.Database) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.Database.class, reader);
++ }
++
++ /**
++ *
++ *
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ */
++ public void validate(
++ )
++ throws org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
++ validator.validate(this);
++ }
++
++}
+--- /dev/null
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/Driver.java
+@@ -0,0 +1,330 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.castor.jdo.conf;
++
++/**
++ * Class Driver.
++ *
++ * @version $Revision$ $Date$
++ */
++ at SuppressWarnings("serial")
++public class Driver implements java.io.Serializable {
++
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
++ /**
++ * Field _url.
++ */
++ private java.lang.String _url;
++
++ /**
++ * Field _className.
++ */
++ private java.lang.String _className;
++
++ /**
++ * Field _paramList.
++ */
++ private java.util.List<org.castor.jdo.conf.Param> _paramList;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public Driver() {
++ super();
++ this._paramList = new java.util.ArrayList<org.castor.jdo.conf.Param>();
++ }
++
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
++ /**
++ *
++ *
++ * @param vParam
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void addParam(
++ final org.castor.jdo.conf.Param vParam)
++ throws java.lang.IndexOutOfBoundsException {
++ this._paramList.add(vParam);
++ }
++
++ /**
++ *
++ *
++ * @param index
++ * @param vParam
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void addParam(
++ final int index,
++ final org.castor.jdo.conf.Param vParam)
++ throws java.lang.IndexOutOfBoundsException {
++ this._paramList.add(index, vParam);
++ }
++
++ /**
++ * Method enumerateParam.
++ *
++ * @return an Enumeration over all possible elements of this
++ * collection
++ */
++ public java.util.Enumeration<? extends org.castor.jdo.conf.Param> enumerateParam(
++ ) {
++ return java.util.Collections.enumeration(this._paramList);
++ }
++
++ /**
++ * Returns the value of field 'className'.
++ *
++ * @return the value of field 'ClassName'.
++ */
++ public java.lang.String getClassName(
++ ) {
++ return this._className;
++ }
++
++ /**
++ * Method getParam.
++ *
++ * @param index
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ * @return the value of the org.castor.jdo.conf.Param at the
++ * given index
++ */
++ public org.castor.jdo.conf.Param getParam(
++ final int index)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._paramList.size()) {
++ throw new IndexOutOfBoundsException("getParam: Index value '" + index + "' not in range [0.." + (this._paramList.size() - 1) + "]");
++ }
++
++ return (org.castor.jdo.conf.Param) _paramList.get(index);
++ }
++
++ /**
++ * Method getParam.Returns the contents of the collection in an
++ * Array. <p>Note: Just in case the collection contents are
++ * changing in another thread, we pass a 0-length Array of the
++ * correct type into the API call. This way we <i>know</i>
++ * that the Array returned is of exactly the correct length.
++ *
++ * @return this collection as an Array
++ */
++ public org.castor.jdo.conf.Param[] getParam(
++ ) {
++ org.castor.jdo.conf.Param[] array = new org.castor.jdo.conf.Param[0];
++ return (org.castor.jdo.conf.Param[]) this._paramList.toArray(array);
++ }
++
++ /**
++ * Method getParamCount.
++ *
++ * @return the size of this collection
++ */
++ public int getParamCount(
++ ) {
++ return this._paramList.size();
++ }
++
++ /**
++ * Returns the value of field 'url'.
++ *
++ * @return the value of field 'Url'.
++ */
++ public java.lang.String getUrl(
++ ) {
++ return this._url;
++ }
++
++ /**
++ * Method isValid.
++ *
++ * @return true if this object is valid according to the schema
++ */
++ public boolean isValid(
++ ) {
++ try {
++ validate();
++ } catch (org.exolab.castor.xml.ValidationException vex) {
++ return false;
++ }
++ return true;
++ }
++
++ /**
++ * Method iterateParam.
++ *
++ * @return an Iterator over all possible elements in this
++ * collection
++ */
++ public java.util.Iterator<? extends org.castor.jdo.conf.Param> iterateParam(
++ ) {
++ return this._paramList.iterator();
++ }
++
++ /**
++ *
++ *
++ * @param out
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ */
++ public void marshal(
++ final java.io.Writer out)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, out);
++ }
++
++ /**
++ *
++ *
++ * @param handler
++ * @throws java.io.IOException if an IOException occurs during
++ * marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ */
++ public void marshal(
++ final org.xml.sax.ContentHandler handler)
++ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, handler);
++ }
++
++ /**
++ */
++ public void removeAllParam(
++ ) {
++ this._paramList.clear();
++ }
++
++ /**
++ * Method removeParam.
++ *
++ * @param vParam
++ * @return true if the object was removed from the collection.
++ */
++ public boolean removeParam(
++ final org.castor.jdo.conf.Param vParam) {
++ boolean removed = _paramList.remove(vParam);
++ return removed;
++ }
++
++ /**
++ * Method removeParamAt.
++ *
++ * @param index
++ * @return the element removed from the collection
++ */
++ public org.castor.jdo.conf.Param removeParamAt(
++ final int index) {
++ java.lang.Object obj = this._paramList.remove(index);
++ return (org.castor.jdo.conf.Param) obj;
++ }
++
++ /**
++ * Sets the value of field 'className'.
++ *
++ * @param className the value of field 'className'.
++ */
++ public void setClassName(
++ final java.lang.String className) {
++ this._className = className;
++ }
++
++ /**
++ *
++ *
++ * @param index
++ * @param vParam
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void setParam(
++ final int index,
++ final org.castor.jdo.conf.Param vParam)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._paramList.size()) {
++ throw new IndexOutOfBoundsException("setParam: Index value '" + index + "' not in range [0.." + (this._paramList.size() - 1) + "]");
++ }
++
++ this._paramList.set(index, vParam);
++ }
++
++ /**
++ *
++ *
++ * @param vParamArray
++ */
++ public void setParam(
++ final org.castor.jdo.conf.Param[] vParamArray) {
++ //-- copy array
++ _paramList.clear();
++
++ for (int i = 0; i < vParamArray.length; i++) {
++ this._paramList.add(vParamArray[i]);
++ }
++ }
++
++ /**
++ * Sets the value of field 'url'.
++ *
++ * @param url the value of field 'url'.
++ */
++ public void setUrl(
++ final java.lang.String url) {
++ this._url = url;
++ }
++
++ /**
++ * Method unmarshal.
++ *
++ * @param reader
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @return the unmarshaled org.castor.jdo.conf.Driver
++ */
++ public static org.castor.jdo.conf.Driver unmarshal(
++ final java.io.Reader reader)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ return (org.castor.jdo.conf.Driver) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.Driver.class, reader);
++ }
++
++ /**
++ *
++ *
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ */
++ public void validate(
++ )
++ throws org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
++ validator.validate(this);
++ }
++
++}
+--- /dev/null
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/MappingDescriptor.java
+@@ -0,0 +1,213 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.castor.jdo.conf.descriptors;
++
++ //---------------------------------/
++ //- Imported classes and packages -/
++//---------------------------------/
++
++import org.castor.jdo.conf.Mapping;
++
++/**
++ * Class MappingDescriptor.
++ *
++ * @version $Revision$ $Date$
++ */
++public class MappingDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
++ /**
++ * Field _elementDefinition.
++ */
++ private boolean _elementDefinition;
++
++ /**
++ * Field _nsPrefix.
++ */
++ private java.lang.String _nsPrefix;
++
++ /**
++ * Field _nsURI.
++ */
++ private java.lang.String _nsURI;
++
++ /**
++ * Field _xmlName.
++ */
++ private java.lang.String _xmlName;
++
++ /**
++ * Field _identity.
++ */
++ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public MappingDescriptor() {
++ super();
++ _nsURI = "http://castor.org/JDO";
++ _xmlName = "mapping";
++ _elementDefinition = true;
++ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
++ org.exolab.castor.mapping.FieldHandler handler = null;
++ org.exolab.castor.xml.FieldValidator fieldValidator = null;
++ //-- initialize attribute descriptors
++
++ //-- _href
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_href", "href", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ Mapping target = (Mapping) object;
++ return target.getHref();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ Mapping target = (Mapping) object;
++ target.setHref( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setRequired(true);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++
++ //-- validation code for: _href
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- initialize element descriptors
++
++ }
++
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
++ /**
++ * Method getAccessMode.
++ *
++ * @return the access mode specified for this class.
++ */
++ @Override()
++ public org.exolab.castor.mapping.AccessMode getAccessMode(
++ ) {
++ return null;
++ }
++
++ /**
++ * Method getIdentity.
++ *
++ * @return the identity field, null if this class has no
++ * identity.
++ */
++ @Override()
++ public org.exolab.castor.mapping.FieldDescriptor getIdentity(
++ ) {
++ return _identity;
++ }
++
++ /**
++ * Method getJavaClass.
++ *
++ * @return the Java class represented by this descriptor.
++ */
++ @Override()
++ public java.lang.Class getJavaClass(
++ ) {
++ return org.castor.jdo.conf.Mapping.class;
++ }
++
++ /**
++ * Method getNameSpacePrefix.
++ *
++ * @return the namespace prefix to use when marshaling as XML.
++ */
++ @Override()
++ public java.lang.String getNameSpacePrefix(
++ ) {
++ return _nsPrefix;
++ }
++
++ /**
++ * Method getNameSpaceURI.
++ *
++ * @return the namespace URI used when marshaling and
++ * unmarshaling as XML.
++ */
++ @Override()
++ public java.lang.String getNameSpaceURI(
++ ) {
++ return _nsURI;
++ }
++
++ /**
++ * Method getValidator.
++ *
++ * @return a specific validator for the class described by this
++ * ClassDescriptor.
++ */
++ @Override()
++ public org.exolab.castor.xml.TypeValidator getValidator(
++ ) {
++ return this;
++ }
++
++ /**
++ * Method getXMLName.
++ *
++ * @return the XML Name for the Class being described.
++ */
++ @Override()
++ public java.lang.String getXMLName(
++ ) {
++ return _xmlName;
++ }
++
++ /**
++ * Method isElementDefinition.
++ *
++ * @return true if XML schema definition of this Class is that
++ * of a global
++ * element or element with anonymous type definition.
++ */
++ public boolean isElementDefinition(
++ ) {
++ return _elementDefinition;
++ }
++
++}
+--- /dev/null
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/PackageMappingDescriptor.java
+@@ -0,0 +1,213 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.castor.jdo.conf.descriptors;
++
++ //---------------------------------/
++ //- Imported classes and packages -/
++//---------------------------------/
++
++import org.castor.jdo.conf.PackageMapping;
++
++/**
++ * Class PackageMappingDescriptor.
++ *
++ * @version $Revision$ $Date$
++ */
++public class PackageMappingDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
++ /**
++ * Field _elementDefinition.
++ */
++ private boolean _elementDefinition;
++
++ /**
++ * Field _nsPrefix.
++ */
++ private java.lang.String _nsPrefix;
++
++ /**
++ * Field _nsURI.
++ */
++ private java.lang.String _nsURI;
++
++ /**
++ * Field _xmlName.
++ */
++ private java.lang.String _xmlName;
++
++ /**
++ * Field _identity.
++ */
++ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public PackageMappingDescriptor() {
++ super();
++ _nsURI = "http://castor.org/JDO";
++ _xmlName = "package";
++ _elementDefinition = true;
++ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
++ org.exolab.castor.mapping.FieldHandler handler = null;
++ org.exolab.castor.xml.FieldValidator fieldValidator = null;
++ //-- initialize attribute descriptors
++
++ //-- _name
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ PackageMapping target = (PackageMapping) object;
++ return target.getName();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ PackageMapping target = (PackageMapping) object;
++ target.setName( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setRequired(true);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++
++ //-- validation code for: _name
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- initialize element descriptors
++
+ }
+
+
@@ -2338,148 +3434,104 @@ Last-Update: 2010-06-27
+ //-----------/
+
+ /**
-+ * Returns the value of field 'dataSource'.
++ * Method getAccessMode.
+ *
-+ * @return the value of field 'DataSource'.
++ * @return the access mode specified for this class.
+ */
-+ public org.castor.jdo.conf.DataSource getDataSource(
++ @Override()
++ public org.exolab.castor.mapping.AccessMode getAccessMode(
+ ) {
-+ return this._dataSource;
++ return null;
+ }
+
+ /**
-+ * Returns the value of field 'driver'.
++ * Method getIdentity.
+ *
-+ * @return the value of field 'Driver'.
++ * @return the identity field, null if this class has no
++ * identity.
+ */
-+ public org.castor.jdo.conf.Driver getDriver(
++ @Override()
++ public org.exolab.castor.mapping.FieldDescriptor getIdentity(
+ ) {
-+ return this._driver;
++ return _identity;
+ }
+
+ /**
-+ * Returns the value of field 'jndi'.
++ * Method getJavaClass.
+ *
-+ * @return the value of field 'Jndi'.
++ * @return the Java class represented by this descriptor.
+ */
-+ public org.castor.jdo.conf.Jndi getJndi(
++ @Override()
++ public java.lang.Class getJavaClass(
+ ) {
-+ return this._jndi;
++ return org.castor.jdo.conf.PackageMapping.class;
+ }
+
+ /**
-+ * Method isValid.
++ * Method getNameSpacePrefix.
+ *
-+ * @return true if this object is valid according to the schema
++ * @return the namespace prefix to use when marshaling as XML.
+ */
-+ public boolean isValid(
++ @Override()
++ public java.lang.String getNameSpacePrefix(
+ ) {
-+ try {
-+ validate();
-+ } catch (org.exolab.castor.xml.ValidationException vex) {
-+ return false;
-+ }
-+ return true;
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param out
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ */
-+ public void marshal(
-+ final java.io.Writer out)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, out);
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param handler
-+ * @throws java.io.IOException if an IOException occurs during
-+ * marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ */
-+ public void marshal(
-+ final org.xml.sax.ContentHandler handler)
-+ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, handler);
-+ }
-+
-+ /**
-+ * Sets the value of field 'dataSource'.
-+ *
-+ * @param dataSource the value of field 'dataSource'.
-+ */
-+ public void setDataSource(
-+ final org.castor.jdo.conf.DataSource dataSource) {
-+ this._dataSource = dataSource;
++ return _nsPrefix;
+ }
+
+ /**
-+ * Sets the value of field 'driver'.
++ * Method getNameSpaceURI.
+ *
-+ * @param driver the value of field 'driver'.
++ * @return the namespace URI used when marshaling and
++ * unmarshaling as XML.
+ */
-+ public void setDriver(
-+ final org.castor.jdo.conf.Driver driver) {
-+ this._driver = driver;
++ @Override()
++ public java.lang.String getNameSpaceURI(
++ ) {
++ return _nsURI;
+ }
+
+ /**
-+ * Sets the value of field 'jndi'.
++ * Method getValidator.
+ *
-+ * @param jndi the value of field 'jndi'.
++ * @return a specific validator for the class described by this
++ * ClassDescriptor.
+ */
-+ public void setJndi(
-+ final org.castor.jdo.conf.Jndi jndi) {
-+ this._jndi = jndi;
++ @Override()
++ public org.exolab.castor.xml.TypeValidator getValidator(
++ ) {
++ return this;
+ }
+
+ /**
-+ * Method unmarshal.
++ * Method getXMLName.
+ *
-+ * @param reader
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled org.castor.jdo.conf.DatabaseChoice
++ * @return the XML Name for the Class being described.
+ */
-+ public static org.castor.jdo.conf.DatabaseChoice unmarshal(
-+ final java.io.Reader reader)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.castor.jdo.conf.DatabaseChoice) org.exolab.castor.xml.Unmarshaller.unmarshal(org.castor.jdo.conf.DatabaseChoice.class, reader);
++ @Override()
++ public java.lang.String getXMLName(
++ ) {
++ return _xmlName;
+ }
+
+ /**
++ * Method isElementDefinition.
+ *
-+ *
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
++ * @return true if XML schema definition of this Class is that
++ * of a global
++ * element or element with anonymous type definition.
+ */
-+ public void validate(
-+ )
-+ throws org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
-+ validator.validate(this);
++ public boolean isElementDefinition(
++ ) {
++ return _elementDefinition;
+ }
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/JndiDescriptor.java
-@@ -0,0 +1,213 @@
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/TransactionDemarcationDescriptor.java
+@@ -0,0 +1,255 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -2490,14 +3542,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.castor.jdo.conf.Jndi;
++import org.castor.jdo.conf.TransactionDemarcation;
+
+/**
-+ * Class JndiDescriptor.
++ * Class TransactionDemarcationDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class JndiDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class TransactionDemarcationDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -2534,34 +3586,37 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public JndiDescriptor() {
++ public TransactionDemarcationDescriptor() {
+ super();
+ _nsURI = "http://castor.org/JDO";
-+ _xmlName = "jndi";
++ _xmlName = "transaction-demarcation";
+ _elementDefinition = true;
++
++ //-- set grouping compositor
++ setCompositorAsSequence();
+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
+ org.exolab.castor.mapping.FieldHandler handler = null;
+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
+ //-- initialize attribute descriptors
+
-+ //-- _name
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _mode
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_mode", "mode", org.exolab.castor.xml.NodeType.Attribute);
+ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ Jndi target = (Jndi) object;
-+ return target.getName();
++ TransactionDemarcation target = (TransactionDemarcation) object;
++ return target.getMode();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ Jndi target = (Jndi) object;
-+ target.setName( (java.lang.String) value);
++ TransactionDemarcation target = (TransactionDemarcation) object;
++ target.setMode( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -2578,7 +3633,7 @@ Last-Update: 2010-06-27
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _name
++ //-- validation code for: _mode
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ fieldValidator.setMinOccurs(1);
+ { //-- local scope
@@ -2590,6 +3645,45 @@ Last-Update: 2010-06-27
+ desc.setValidator(fieldValidator);
+ //-- initialize element descriptors
+
++ //-- _transactionManager
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.TransactionManager.class, "_transactionManager", "transaction-manager", org.exolab.castor.xml.NodeType.Element);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ TransactionDemarcation target = (TransactionDemarcation) object;
++ return target.getTransactionManager();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ TransactionDemarcation target = (TransactionDemarcation) object;
++ target.setTransactionManager( (org.castor.jdo.conf.TransactionManager) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("org.castor.jdo.conf.TransactionManager");
++ desc.setHandler(handler);
++ desc.setNameSpaceURI("http://castor.org/JDO");
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
++
++ //-- validation code for: _transactionManager
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
+ }
+
+
@@ -2628,7 +3722,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.castor.jdo.conf.Jndi.class;
++ return org.castor.jdo.conf.TransactionDemarcation.class;
+ }
+
+ /**
@@ -2691,11 +3785,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/TransactionDemarcationDescriptor.java
-@@ -0,0 +1,255 @@
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/DatabaseChoiceDescriptor.java
+@@ -0,0 +1,294 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -2706,14 +3800,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.castor.jdo.conf.TransactionDemarcation;
++import org.castor.jdo.conf.DatabaseChoice;
+
+/**
-+ * Class TransactionDemarcationDescriptor.
++ * Class DatabaseChoiceDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class TransactionDemarcationDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class DatabaseChoiceDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -2750,37 +3844,78 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public TransactionDemarcationDescriptor() {
++ public DatabaseChoiceDescriptor() {
+ super();
+ _nsURI = "http://castor.org/JDO";
-+ _xmlName = "transaction-demarcation";
-+ _elementDefinition = true;
++ _elementDefinition = false;
+
+ //-- set grouping compositor
-+ setCompositorAsSequence();
++ setCompositorAsChoice();
+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
+ org.exolab.castor.mapping.FieldHandler handler = null;
+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
+ //-- initialize attribute descriptors
+
-+ //-- _mode
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_mode", "mode", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
++ //-- initialize element descriptors
++
++ //-- _driver
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.Driver.class, "_driver", "driver", org.exolab.castor.xml.NodeType.Element);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ DatabaseChoice target = (DatabaseChoice) object;
++ return target.getDriver();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ DatabaseChoice target = (DatabaseChoice) object;
++ target.setDriver( (org.castor.jdo.conf.Driver) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("org.castor.jdo.conf.Driver");
++ desc.setHandler(handler);
++ desc.setNameSpaceURI("http://castor.org/JDO");
++ desc.setRequired(true);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
++
++ //-- validation code for: _driver
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
++ //-- _dataSource
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.DataSource.class, "_dataSource", "data-source", org.exolab.castor.xml.NodeType.Element);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ TransactionDemarcation target = (TransactionDemarcation) object;
-+ return target.getMode();
++ DatabaseChoice target = (DatabaseChoice) object;
++ return target.getDataSource();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ TransactionDemarcation target = (TransactionDemarcation) object;
-+ target.setMode( (java.lang.String) value);
++ DatabaseChoice target = (DatabaseChoice) object;
++ target.setDataSource( (org.castor.jdo.conf.DataSource) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -2791,41 +3926,37 @@ Last-Update: 2010-06-27
+ return null;
+ }
+ };
-+ desc.setSchemaType("string");
++ desc.setSchemaType("org.castor.jdo.conf.DataSource");
+ desc.setHandler(handler);
++ desc.setNameSpaceURI("http://castor.org/JDO");
+ desc.setRequired(true);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
++ addSequenceElement(desc);
+
-+ //-- validation code for: _mode
++ //-- validation code for: _dataSource
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ fieldValidator.setMinOccurs(1);
+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- initialize element descriptors
-+
-+ //-- _transactionManager
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.TransactionManager.class, "_transactionManager", "transaction-manager", org.exolab.castor.xml.NodeType.Element);
++ //-- _jndi
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.Jndi.class, "_jndi", "jndi", org.exolab.castor.xml.NodeType.Element);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ TransactionDemarcation target = (TransactionDemarcation) object;
-+ return target.getTransactionManager();
++ DatabaseChoice target = (DatabaseChoice) object;
++ return target.getJndi();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ TransactionDemarcation target = (TransactionDemarcation) object;
-+ target.setTransactionManager( (org.castor.jdo.conf.TransactionManager) value);
++ DatabaseChoice target = (DatabaseChoice) object;
++ target.setJndi( (org.castor.jdo.conf.Jndi) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -2833,18 +3964,20 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new org.castor.jdo.conf.TransactionManager();
++ return null;
+ }
+ };
-+ desc.setSchemaType("org.castor.jdo.conf.TransactionManager");
++ desc.setSchemaType("org.castor.jdo.conf.Jndi");
+ desc.setHandler(handler);
+ desc.setNameSpaceURI("http://castor.org/JDO");
++ desc.setRequired(true);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+ addSequenceElement(desc);
+
-+ //-- validation code for: _transactionManager
++ //-- validation code for: _jndi
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
+ { //-- local scope
+ }
+ desc.setValidator(fieldValidator);
@@ -2886,7 +4019,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.castor.jdo.conf.TransactionDemarcation.class;
++ return org.castor.jdo.conf.DatabaseChoice.class;
+ }
+
+ /**
@@ -2949,11 +4082,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/JdoConfDescriptor.java
-@@ -0,0 +1,303 @@
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/DataSourceDescriptor.java
+@@ -0,0 +1,265 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -2964,14 +4097,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.castor.jdo.conf.JdoConf;
++import org.castor.jdo.conf.DataSource;
+
+/**
-+ * Class JdoConfDescriptor.
++ * Class DataSourceDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class JdoConfDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class DataSourceDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -3008,10 +4141,10 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public JdoConfDescriptor() {
++ public DataSourceDescriptor() {
+ super();
+ _nsURI = "http://castor.org/JDO";
-+ _xmlName = "jdo-conf";
++ _xmlName = "data-source";
+ _elementDefinition = true;
+
+ //-- set grouping compositor
@@ -3021,24 +4154,24 @@ Last-Update: 2010-06-27
+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
+ //-- initialize attribute descriptors
+
-+ //-- _name
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _className
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_className", "class-name", org.exolab.castor.xml.NodeType.Attribute);
+ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ JdoConf target = (JdoConf) object;
-+ return target.getName();
++ DataSource target = (DataSource) object;
++ return target.getClassName();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ JdoConf target = (JdoConf) object;
-+ target.setName( (java.lang.String) value);
++ DataSource target = (DataSource) object;
++ target.setClassName( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -3051,11 +4184,13 @@ Last-Update: 2010-06-27
+ };
+ desc.setSchemaType("string");
+ desc.setHandler(handler);
++ desc.setRequired(true);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _name
++ //-- validation code for: _className
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
+ { //-- local scope
+ org.exolab.castor.xml.validators.StringValidator typeValidator;
+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
@@ -3065,31 +4200,31 @@ Last-Update: 2010-06-27
+ desc.setValidator(fieldValidator);
+ //-- initialize element descriptors
+
-+ //-- _databaseList
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.Database.class, "_databaseList", "database", org.exolab.castor.xml.NodeType.Element);
++ //-- _paramList
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.Param.class, "_paramList", "param", org.exolab.castor.xml.NodeType.Element);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ JdoConf target = (JdoConf) object;
-+ return target.getDatabase();
++ DataSource target = (DataSource) object;
++ return target.getParam();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ JdoConf target = (JdoConf) object;
-+ target.addDatabase( (org.castor.jdo.conf.Database) value);
++ DataSource target = (DataSource) object;
++ target.addParam( (org.castor.jdo.conf.Param) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
+ }
+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
+ try {
-+ JdoConf target = (JdoConf) object;
-+ target.removeAllDatabase();
++ DataSource target = (DataSource) object;
++ target.removeAllParam();
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -3097,60 +4232,20 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new org.castor.jdo.conf.Database();
++ return null;
+ }
+ };
+ desc.setSchemaType("list");
-+ desc.setComponentType("org.castor.jdo.conf.Database");
++ desc.setComponentType("org.castor.jdo.conf.Param");
+ desc.setHandler(handler);
+ desc.setNameSpaceURI("http://castor.org/JDO");
-+ desc.setRequired(true);
+ desc.setMultivalued(true);
+ addFieldDescriptor(desc);
+ addSequenceElement(desc);
+
-+ //-- validation code for: _databaseList
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(1);
-+ { //-- local scope
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _transactionDemarcation
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.TransactionDemarcation.class, "_transactionDemarcation", "transaction-demarcation", org.exolab.castor.xml.NodeType.Element);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ JdoConf target = (JdoConf) object;
-+ return target.getTransactionDemarcation();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ JdoConf target = (JdoConf) object;
-+ target.setTransactionDemarcation( (org.castor.jdo.conf.TransactionDemarcation) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new org.castor.jdo.conf.TransactionDemarcation();
-+ }
-+ };
-+ desc.setSchemaType("org.castor.jdo.conf.TransactionDemarcation");
-+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.org/JDO");
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
-+
-+ //-- validation code for: _transactionDemarcation
++ //-- validation code for: _paramList
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(0);
+ { //-- local scope
+ }
+ desc.setValidator(fieldValidator);
@@ -3192,7 +4287,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.castor.jdo.conf.JdoConf.class;
++ return org.castor.jdo.conf.DataSource.class;
+ }
+
+ /**
@@ -3255,11 +4350,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/DriverDescriptor.java
-@@ -0,0 +1,309 @@
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/ParamDescriptor.java
+@@ -0,0 +1,257 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -3270,14 +4365,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.castor.jdo.conf.Driver;
++import org.castor.jdo.conf.Param;
+
+/**
-+ * Class DriverDescriptor.
++ * Class ParamDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class DriverDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class ParamDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -3314,37 +4409,34 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public DriverDescriptor() {
++ public ParamDescriptor() {
+ super();
+ _nsURI = "http://castor.org/JDO";
-+ _xmlName = "driver";
++ _xmlName = "param";
+ _elementDefinition = true;
-+
-+ //-- set grouping compositor
-+ setCompositorAsSequence();
+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
+ org.exolab.castor.mapping.FieldHandler handler = null;
+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
+ //-- initialize attribute descriptors
+
-+ //-- _url
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_url", "url", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _name
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
+ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ Driver target = (Driver) object;
-+ return target.getUrl();
++ Param target = (Param) object;
++ return target.getName();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ Driver target = (Driver) object;
-+ target.setUrl( (java.lang.String) value);
++ Param target = (Param) object;
++ target.setName( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -3361,7 +4453,7 @@ Last-Update: 2010-06-27
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _url
++ //-- validation code for: _name
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ fieldValidator.setMinOccurs(1);
+ { //-- local scope
@@ -3371,24 +4463,24 @@ Last-Update: 2010-06-27
+ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _className
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_className", "class-name", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _value
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_value", "value", org.exolab.castor.xml.NodeType.Attribute);
+ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ Driver target = (Driver) object;
-+ return target.getClassName();
++ Param target = (Param) object;
++ return target.getValue();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ Driver target = (Driver) object;
-+ target.setClassName( (java.lang.String) value);
++ Param target = (Param) object;
++ target.setValue( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -3405,7 +4497,7 @@ Last-Update: 2010-06-27
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _className
++ //-- validation code for: _value
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ fieldValidator.setMinOccurs(1);
+ { //-- local scope
@@ -3417,55 +4509,6 @@ Last-Update: 2010-06-27
+ desc.setValidator(fieldValidator);
+ //-- initialize element descriptors
+
-+ //-- _paramList
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.Param.class, "_paramList", "param", org.exolab.castor.xml.NodeType.Element);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ Driver target = (Driver) object;
-+ return target.getParam();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ Driver target = (Driver) object;
-+ target.addParam( (org.castor.jdo.conf.Param) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
-+ try {
-+ Driver target = (Driver) object;
-+ target.removeAllParam();
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new org.castor.jdo.conf.Param();
-+ }
-+ };
-+ desc.setSchemaType("list");
-+ desc.setComponentType("org.castor.jdo.conf.Param");
-+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.org/JDO");
-+ desc.setMultivalued(true);
-+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
-+
-+ //-- validation code for: _paramList
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(0);
-+ { //-- local scope
-+ }
-+ desc.setValidator(fieldValidator);
+ }
+
+
@@ -3504,7 +4547,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.castor.jdo.conf.Driver.class;
++ return org.castor.jdo.conf.Param.class;
+ }
+
+ /**
@@ -3567,11 +4610,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/DataSourceDescriptor.java
-@@ -0,0 +1,265 @@
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/ClassMappingDescriptor.java
+@@ -0,0 +1,213 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -3582,14 +4625,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.castor.jdo.conf.DataSource;
++import org.castor.jdo.conf.ClassMapping;
+
+/**
-+ * Class DataSourceDescriptor.
++ * Class ClassMappingDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class DataSourceDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class ClassMappingDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -3626,37 +4669,34 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public DataSourceDescriptor() {
++ public ClassMappingDescriptor() {
+ super();
+ _nsURI = "http://castor.org/JDO";
-+ _xmlName = "data-source";
++ _xmlName = "class";
+ _elementDefinition = true;
-+
-+ //-- set grouping compositor
-+ setCompositorAsSequence();
+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
+ org.exolab.castor.mapping.FieldHandler handler = null;
+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
+ //-- initialize attribute descriptors
+
-+ //-- _className
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_className", "class-name", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _name
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
+ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ DataSource target = (DataSource) object;
-+ return target.getClassName();
++ ClassMapping target = (ClassMapping) object;
++ return target.getName();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ DataSource target = (DataSource) object;
-+ target.setClassName( (java.lang.String) value);
++ ClassMapping target = (ClassMapping) object;
++ target.setName( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -3673,7 +4713,7 @@ Last-Update: 2010-06-27
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _className
++ //-- validation code for: _name
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ fieldValidator.setMinOccurs(1);
+ { //-- local scope
@@ -3685,55 +4725,6 @@ Last-Update: 2010-06-27
+ desc.setValidator(fieldValidator);
+ //-- initialize element descriptors
+
-+ //-- _paramList
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.Param.class, "_paramList", "param", org.exolab.castor.xml.NodeType.Element);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ DataSource target = (DataSource) object;
-+ return target.getParam();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ DataSource target = (DataSource) object;
-+ target.addParam( (org.castor.jdo.conf.Param) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
-+ try {
-+ DataSource target = (DataSource) object;
-+ target.removeAllParam();
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new org.castor.jdo.conf.Param();
-+ }
-+ };
-+ desc.setSchemaType("list");
-+ desc.setComponentType("org.castor.jdo.conf.Param");
-+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.org/JDO");
-+ desc.setMultivalued(true);
-+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
-+
-+ //-- validation code for: _paramList
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(0);
-+ { //-- local scope
-+ }
-+ desc.setValidator(fieldValidator);
+ }
+
+
@@ -3772,7 +4763,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.castor.jdo.conf.DataSource.class;
++ return org.castor.jdo.conf.ClassMapping.class;
+ }
+
+ /**
@@ -3835,11 +4826,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/DatabaseDescriptor.java
-@@ -0,0 +1,350 @@
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/DatabaseDescriptor.java
+@@ -0,0 +1,447 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -4069,21 +5060,118 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new org.castor.jdo.conf.Mapping();
++ return null;
+ }
+ };
+ desc.setSchemaType("list");
+ desc.setComponentType("org.castor.jdo.conf.Mapping");
+ desc.setHandler(handler);
+ desc.setNameSpaceURI("http://castor.org/JDO");
-+ desc.setRequired(true);
+ desc.setMultivalued(true);
+ addFieldDescriptor(desc);
+ addSequenceElement(desc);
+
+ //-- validation code for: _mappingList
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(1);
++ fieldValidator.setMinOccurs(0);
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
++ //-- _packageMappingList
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.PackageMapping.class, "_packageMappingList", "package", org.exolab.castor.xml.NodeType.Element);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ Database target = (Database) object;
++ return target.getPackageMapping();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ Database target = (Database) object;
++ target.addPackageMapping( (org.castor.jdo.conf.PackageMapping) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
++ try {
++ Database target = (Database) object;
++ target.removeAllPackageMapping();
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("list");
++ desc.setComponentType("org.castor.jdo.conf.PackageMapping");
++ desc.setHandler(handler);
++ desc.setNameSpaceURI("http://castor.org/JDO");
++ desc.setMultivalued(true);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
++
++ //-- validation code for: _packageMappingList
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(0);
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
++ //-- _classMappingList
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.ClassMapping.class, "_classMappingList", "class", org.exolab.castor.xml.NodeType.Element);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ Database target = (Database) object;
++ return target.getClassMapping();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ Database target = (Database) object;
++ target.addClassMapping( (org.castor.jdo.conf.ClassMapping) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
++ try {
++ Database target = (Database) object;
++ target.removeAllClassMapping();
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("list");
++ desc.setComponentType("org.castor.jdo.conf.ClassMapping");
++ desc.setHandler(handler);
++ desc.setNameSpaceURI("http://castor.org/JDO");
++ desc.setMultivalued(true);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
++
++ //-- validation code for: _classMappingList
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(0);
+ { //-- local scope
+ }
+ desc.setValidator(fieldValidator);
@@ -4188,11 +5276,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/TransactionManagerDescriptor.java
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/TransactionManagerDescriptor.java
@@ -0,0 +1,263 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -4336,7 +5424,7 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new org.castor.jdo.conf.Param();
++ return null;
+ }
+ };
+ desc.setSchemaType("list");
@@ -4454,11 +5542,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/ParamDescriptor.java
-@@ -0,0 +1,257 @@
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/DriverDescriptor.java
+@@ -0,0 +1,309 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -4469,14 +5557,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.castor.jdo.conf.Param;
++import org.castor.jdo.conf.Driver;
+
+/**
-+ * Class ParamDescriptor.
++ * Class DriverDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class ParamDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class DriverDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -4513,34 +5601,37 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public ParamDescriptor() {
++ public DriverDescriptor() {
+ super();
+ _nsURI = "http://castor.org/JDO";
-+ _xmlName = "param";
++ _xmlName = "driver";
+ _elementDefinition = true;
++
++ //-- set grouping compositor
++ setCompositorAsSequence();
+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
+ org.exolab.castor.mapping.FieldHandler handler = null;
+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
+ //-- initialize attribute descriptors
+
-+ //-- _name
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _url
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_url", "url", org.exolab.castor.xml.NodeType.Attribute);
+ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ Param target = (Param) object;
-+ return target.getName();
++ Driver target = (Driver) object;
++ return target.getUrl();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ Param target = (Param) object;
-+ target.setName( (java.lang.String) value);
++ Driver target = (Driver) object;
++ target.setUrl( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -4557,7 +5648,7 @@ Last-Update: 2010-06-27
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _name
++ //-- validation code for: _url
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ fieldValidator.setMinOccurs(1);
+ { //-- local scope
@@ -4567,24 +5658,24 @@ Last-Update: 2010-06-27
+ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _value
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_value", "value", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _className
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_className", "class-name", org.exolab.castor.xml.NodeType.Attribute);
+ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ Param target = (Param) object;
-+ return target.getValue();
++ Driver target = (Driver) object;
++ return target.getClassName();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ Param target = (Param) object;
-+ target.setValue( (java.lang.String) value);
++ Driver target = (Driver) object;
++ target.setClassName( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -4601,18 +5692,67 @@ Last-Update: 2010-06-27
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _value
++ //-- validation code for: _className
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- initialize element descriptors
++
++ //-- _paramList
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.Param.class, "_paramList", "param", org.exolab.castor.xml.NodeType.Element);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ Driver target = (Driver) object;
++ return target.getParam();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ Driver target = (Driver) object;
++ target.addParam( (org.castor.jdo.conf.Param) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
++ try {
++ Driver target = (Driver) object;
++ target.removeAllParam();
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("list");
++ desc.setComponentType("org.castor.jdo.conf.Param");
++ desc.setHandler(handler);
++ desc.setNameSpaceURI("http://castor.org/JDO");
++ desc.setMultivalued(true);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
++
++ //-- validation code for: _paramList
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(1);
++ fieldValidator.setMinOccurs(0);
+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- initialize element descriptors
-+
+ }
+
+
@@ -4651,7 +5791,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.castor.jdo.conf.Param.class;
++ return org.castor.jdo.conf.Driver.class;
+ }
+
+ /**
@@ -4714,11 +5854,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/DatabaseChoiceDescriptor.java
-@@ -0,0 +1,294 @@
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/JndiDescriptor.java
+@@ -0,0 +1,213 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -4729,14 +5869,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.castor.jdo.conf.DatabaseChoice;
++import org.castor.jdo.conf.Jndi;
+
+/**
-+ * Class DatabaseChoiceDescriptor.
++ * Class JndiDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class DatabaseChoiceDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class JndiDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -4773,78 +5913,34 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public DatabaseChoiceDescriptor() {
++ public JndiDescriptor() {
+ super();
+ _nsURI = "http://castor.org/JDO";
-+ _elementDefinition = false;
-+
-+ //-- set grouping compositor
-+ setCompositorAsChoice();
++ _xmlName = "jndi";
++ _elementDefinition = true;
+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
+ org.exolab.castor.mapping.FieldHandler handler = null;
+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
+ //-- initialize attribute descriptors
+
-+ //-- initialize element descriptors
-+
-+ //-- _driver
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.Driver.class, "_driver", "driver", org.exolab.castor.xml.NodeType.Element);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ DatabaseChoice target = (DatabaseChoice) object;
-+ return target.getDriver();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ DatabaseChoice target = (DatabaseChoice) object;
-+ target.setDriver( (org.castor.jdo.conf.Driver) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new org.castor.jdo.conf.Driver();
-+ }
-+ };
-+ desc.setSchemaType("org.castor.jdo.conf.Driver");
-+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.org/JDO");
-+ desc.setRequired(true);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
-+
-+ //-- validation code for: _driver
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(1);
-+ { //-- local scope
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _dataSource
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.DataSource.class, "_dataSource", "data-source", org.exolab.castor.xml.NodeType.Element);
++ //-- _name
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ DatabaseChoice target = (DatabaseChoice) object;
-+ return target.getDataSource();
++ Jndi target = (Jndi) object;
++ return target.getName();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ DatabaseChoice target = (DatabaseChoice) object;
-+ target.setDataSource( (org.castor.jdo.conf.DataSource) value);
++ Jndi target = (Jndi) object;
++ target.setName( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -4852,64 +5948,27 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new org.castor.jdo.conf.DataSource();
++ return null;
+ }
+ };
-+ desc.setSchemaType("org.castor.jdo.conf.DataSource");
++ desc.setSchemaType("string");
+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.org/JDO");
+ desc.setRequired(true);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
+
-+ //-- validation code for: _dataSource
++ //-- validation code for: _name
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ fieldValidator.setMinOccurs(1);
+ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _jndi
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.Jndi.class, "_jndi", "jndi", org.exolab.castor.xml.NodeType.Element);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ DatabaseChoice target = (DatabaseChoice) object;
-+ return target.getJndi();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ DatabaseChoice target = (DatabaseChoice) object;
-+ target.setJndi( (org.castor.jdo.conf.Jndi) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new org.castor.jdo.conf.Jndi();
-+ }
-+ };
-+ desc.setSchemaType("org.castor.jdo.conf.Jndi");
-+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.org/JDO");
-+ desc.setRequired(true);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
++ //-- initialize element descriptors
+
-+ //-- validation code for: _jndi
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(1);
-+ { //-- local scope
-+ }
-+ desc.setValidator(fieldValidator);
+ }
+
+
@@ -4948,7 +6007,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.castor.jdo.conf.DatabaseChoice.class;
++ return org.castor.jdo.conf.Jndi.class;
+ }
+
+ /**
@@ -5011,11 +6070,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/MappingDescriptor.java
-@@ -0,0 +1,213 @@
++++ castor-1.3.2/cpa/target/generated-sources/castor/org/castor/jdo/conf/descriptors/JdoConfDescriptor.java
+@@ -0,0 +1,303 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -5026,14 +6085,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.castor.jdo.conf.Mapping;
++import org.castor.jdo.conf.JdoConf;
+
+/**
-+ * Class MappingDescriptor.
++ * Class JdoConfDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class MappingDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class JdoConfDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -5070,34 +6129,37 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public MappingDescriptor() {
++ public JdoConfDescriptor() {
+ super();
+ _nsURI = "http://castor.org/JDO";
-+ _xmlName = "mapping";
++ _xmlName = "jdo-conf";
+ _elementDefinition = true;
++
++ //-- set grouping compositor
++ setCompositorAsSequence();
+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
+ org.exolab.castor.mapping.FieldHandler handler = null;
+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
+ //-- initialize attribute descriptors
+
-+ //-- _href
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_href", "href", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _name
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
+ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ Mapping target = (Mapping) object;
-+ return target.getHref();
++ JdoConf target = (JdoConf) object;
++ return target.getName();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ Mapping target = (Mapping) object;
-+ target.setHref( (java.lang.String) value);
++ JdoConf target = (JdoConf) object;
++ target.setName( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -5110,13 +6172,11 @@ Last-Update: 2010-06-27
+ };
+ desc.setSchemaType("string");
+ desc.setHandler(handler);
-+ desc.setRequired(true);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _href
++ //-- validation code for: _name
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(1);
+ { //-- local scope
+ org.exolab.castor.xml.validators.StringValidator typeValidator;
+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
@@ -5126,6 +6186,95 @@ Last-Update: 2010-06-27
+ desc.setValidator(fieldValidator);
+ //-- initialize element descriptors
+
++ //-- _databaseList
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.Database.class, "_databaseList", "database", org.exolab.castor.xml.NodeType.Element);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ JdoConf target = (JdoConf) object;
++ return target.getDatabase();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ JdoConf target = (JdoConf) object;
++ target.addDatabase( (org.castor.jdo.conf.Database) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
++ try {
++ JdoConf target = (JdoConf) object;
++ target.removeAllDatabase();
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("list");
++ desc.setComponentType("org.castor.jdo.conf.Database");
++ desc.setHandler(handler);
++ desc.setNameSpaceURI("http://castor.org/JDO");
++ desc.setRequired(true);
++ desc.setMultivalued(true);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
++
++ //-- validation code for: _databaseList
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
++ //-- _transactionDemarcation
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.castor.jdo.conf.TransactionDemarcation.class, "_transactionDemarcation", "transaction-demarcation", org.exolab.castor.xml.NodeType.Element);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ JdoConf target = (JdoConf) object;
++ return target.getTransactionDemarcation();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ JdoConf target = (JdoConf) object;
++ target.setTransactionDemarcation( (org.castor.jdo.conf.TransactionDemarcation) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("org.castor.jdo.conf.TransactionDemarcation");
++ desc.setHandler(handler);
++ desc.setNameSpaceURI("http://castor.org/JDO");
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
++
++ //-- validation code for: _transactionDemarcation
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
+ }
+
+
@@ -5164,7 +6313,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.castor.jdo.conf.Mapping.class;
++ return org.castor.jdo.conf.JdoConf.class;
+ }
+
+ /**
diff --git a/debian/patches/add_xml_generated_sources.diff b/debian/patches/add_xml_generated_sources.diff
index dc12f68..847d234 100644
--- a/debian/patches/add_xml_generated_sources.diff
+++ b/debian/patches/add_xml_generated_sources.diff
@@ -6,15 +6,15 @@ Description: add autogenerated sources to xml module
packaged and when it gets accepted in the archive, this package will re rebuilt
with that plugin and this patch will be removed.
Author: Miguel Landaeta <miguel at miguel.cc>
-Forwarded: not-needed
-Last-Update: 2010-06-27
+Forwarded: no
+Last-Update: 2012-01-21
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/Ldap.java
-@@ -0,0 +1,138 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/FieldHandlerDef.java
+@@ -0,0 +1,331 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -22,12 +22,12 @@ Last-Update: 2010-06-27
+package org.exolab.castor.mapping.xml;
+
+/**
-+ * Class Ldap.
++ * Class FieldHandlerDef.
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class Ldap implements java.io.Serializable {
++public class FieldHandlerDef implements java.io.Serializable {
+
+
+ //--------------------------/
@@ -39,13 +39,24 @@ Last-Update: 2010-06-27
+ */
+ private java.lang.String _name;
+
++ /**
++ * Field _clazz.
++ */
++ private java.lang.String _clazz;
++
++ /**
++ * Field _paramList.
++ */
++ private java.util.List<org.exolab.castor.mapping.xml.Param> _paramList;
++
+
+ //----------------/
+ //- Constructors -/
+ //----------------/
+
-+ public Ldap() {
++ public FieldHandlerDef() {
+ super();
++ this._paramList = new java.util.ArrayList<org.exolab.castor.mapping.xml.Param>();
+ }
+
+
@@ -54,6 +65,55 @@ Last-Update: 2010-06-27
+ //-----------/
+
+ /**
++ *
++ *
++ * @param vParam
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void addParam(
++ final org.exolab.castor.mapping.xml.Param vParam)
++ throws java.lang.IndexOutOfBoundsException {
++ this._paramList.add(vParam);
++ }
++
++ /**
++ *
++ *
++ * @param index
++ * @param vParam
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void addParam(
++ final int index,
++ final org.exolab.castor.mapping.xml.Param vParam)
++ throws java.lang.IndexOutOfBoundsException {
++ this._paramList.add(index, vParam);
++ }
++
++ /**
++ * Method enumerateParam.
++ *
++ * @return an Enumeration over all possible elements of this
++ * collection
++ */
++ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.Param> enumerateParam(
++ ) {
++ return java.util.Collections.enumeration(this._paramList);
++ }
++
++ /**
++ * Returns the value of field 'clazz'.
++ *
++ * @return the value of field 'Clazz'.
++ */
++ public java.lang.String getClazz(
++ ) {
++ return this._clazz;
++ }
++
++ /**
+ * Returns the value of field 'name'.
+ *
+ * @return the value of field 'Name'.
@@ -64,6 +124,51 @@ Last-Update: 2010-06-27
+ }
+
+ /**
++ * Method getParam.
++ *
++ * @param index
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ * @return the value of the org.exolab.castor.mapping.xml.Param
++ * at the given index
++ */
++ public org.exolab.castor.mapping.xml.Param getParam(
++ final int index)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._paramList.size()) {
++ throw new IndexOutOfBoundsException("getParam: Index value '" + index + "' not in range [0.." + (this._paramList.size() - 1) + "]");
++ }
++
++ return (org.exolab.castor.mapping.xml.Param) _paramList.get(index);
++ }
++
++ /**
++ * Method getParam.Returns the contents of the collection in an
++ * Array. <p>Note: Just in case the collection contents are
++ * changing in another thread, we pass a 0-length Array of the
++ * correct type into the API call. This way we <i>know</i>
++ * that the Array returned is of exactly the correct length.
++ *
++ * @return this collection as an Array
++ */
++ public org.exolab.castor.mapping.xml.Param[] getParam(
++ ) {
++ org.exolab.castor.mapping.xml.Param[] array = new org.exolab.castor.mapping.xml.Param[0];
++ return (org.exolab.castor.mapping.xml.Param[]) this._paramList.toArray(array);
++ }
++
++ /**
++ * Method getParamCount.
++ *
++ * @return the size of this collection
++ */
++ public int getParamCount(
++ ) {
++ return this._paramList.size();
++ }
++
++ /**
+ * Method isValid.
+ *
+ * @return true if this object is valid according to the schema
@@ -79,6 +184,17 @@ Last-Update: 2010-06-27
+ }
+
+ /**
++ * Method iterateParam.
++ *
++ * @return an Iterator over all possible elements in this
++ * collection
++ */
++ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.Param> iterateParam(
++ ) {
++ return this._paramList.iterator();
++ }
++
++ /**
+ *
+ *
+ * @param out
@@ -111,6 +227,47 @@ Last-Update: 2010-06-27
+ }
+
+ /**
++ */
++ public void removeAllParam(
++ ) {
++ this._paramList.clear();
++ }
++
++ /**
++ * Method removeParam.
++ *
++ * @param vParam
++ * @return true if the object was removed from the collection.
++ */
++ public boolean removeParam(
++ final org.exolab.castor.mapping.xml.Param vParam) {
++ boolean removed = _paramList.remove(vParam);
++ return removed;
++ }
++
++ /**
++ * Method removeParamAt.
++ *
++ * @param index
++ * @return the element removed from the collection
++ */
++ public org.exolab.castor.mapping.xml.Param removeParamAt(
++ final int index) {
++ java.lang.Object obj = this._paramList.remove(index);
++ return (org.exolab.castor.mapping.xml.Param) obj;
++ }
++
++ /**
++ * Sets the value of field 'clazz'.
++ *
++ * @param clazz the value of field 'clazz'.
++ */
++ public void setClazz(
++ final java.lang.String clazz) {
++ this._clazz = clazz;
++ }
++
++ /**
+ * Sets the value of field 'name'.
+ *
+ * @param name the value of field 'name'.
@@ -121,6 +278,41 @@ Last-Update: 2010-06-27
+ }
+
+ /**
++ *
++ *
++ * @param index
++ * @param vParam
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void setParam(
++ final int index,
++ final org.exolab.castor.mapping.xml.Param vParam)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._paramList.size()) {
++ throw new IndexOutOfBoundsException("setParam: Index value '" + index + "' not in range [0.." + (this._paramList.size() - 1) + "]");
++ }
++
++ this._paramList.set(index, vParam);
++ }
++
++ /**
++ *
++ *
++ * @param vParamArray
++ */
++ public void setParam(
++ final org.exolab.castor.mapping.xml.Param[] vParamArray) {
++ //-- copy array
++ _paramList.clear();
++
++ for (int i = 0; i < vParamArray.length; i++) {
++ this._paramList.add(vParamArray[i]);
++ }
++ }
++
++ /**
+ * Method unmarshal.
+ *
+ * @param reader
@@ -128,12 +320,13 @@ Last-Update: 2010-06-27
+ * null or if any SAXException is thrown during marshaling
+ * @throws org.exolab.castor.xml.ValidationException if this
+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled org.exolab.castor.mapping.xml.Ldap
++ * @return the unmarshaled
++ * org.exolab.castor.mapping.xml.FieldHandlerDef
+ */
-+ public static org.exolab.castor.mapping.xml.Ldap unmarshal(
++ public static org.exolab.castor.mapping.xml.FieldHandlerDef unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.exolab.castor.mapping.xml.Ldap) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.Ldap.class, reader);
++ return (org.exolab.castor.mapping.xml.FieldHandlerDef) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.FieldHandlerDef.class, reader);
+ }
+
+ /**
@@ -151,11 +344,34 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/FieldMapping.java
-@@ -0,0 +1,927 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/.castor.cdr
+@@ -0,0 +1,20 @@
++#Sun Jan 22 02:11:58 UTC 2012
++org.exolab.castor.mapping.xml.BindXml=org.exolab.castor.mapping.xml.descriptors.BindXmlDescriptor
++org.exolab.castor.mapping.xml.FieldHandlerDef=org.exolab.castor.mapping.xml.descriptors.FieldHandlerDefDescriptor
++org.exolab.castor.mapping.xml.Container=org.exolab.castor.mapping.xml.descriptors.ContainerDescriptor
++org.exolab.castor.mapping.xml.Include=org.exolab.castor.mapping.xml.descriptors.IncludeDescriptor
++org.exolab.castor.mapping.xml.Param=org.exolab.castor.mapping.xml.descriptors.ParamDescriptor
++org.exolab.castor.mapping.xml.Ldap=org.exolab.castor.mapping.xml.descriptors.LdapDescriptor
++org.exolab.castor.mapping.xml.ClassChoice=org.exolab.castor.mapping.xml.descriptors.ClassChoiceDescriptor
++org.exolab.castor.mapping.xml.NamedQuery=org.exolab.castor.mapping.xml.descriptors.NamedQueryDescriptor
++org.exolab.castor.mapping.xml.ClassMapping=org.exolab.castor.mapping.xml.descriptors.ClassMappingDescriptor
++org.exolab.castor.mapping.xml.CacheTypeMapping=org.exolab.castor.mapping.xml.descriptors.CacheTypeMappingDescriptor
++org.exolab.castor.mapping.xml.FieldMapping=org.exolab.castor.mapping.xml.descriptors.FieldMappingDescriptor
++org.exolab.castor.mapping.xml.MappingRoot=org.exolab.castor.mapping.xml.descriptors.MappingRootDescriptor
++org.exolab.castor.mapping.xml.Sql=org.exolab.castor.mapping.xml.descriptors.SqlDescriptor
++org.exolab.castor.mapping.xml.KeyGeneratorDef=org.exolab.castor.mapping.xml.descriptors.KeyGeneratorDefDescriptor
++org.exolab.castor.mapping.xml.MapTo=org.exolab.castor.mapping.xml.descriptors.MapToDescriptor
++org.exolab.castor.mapping.xml.Property=org.exolab.castor.mapping.xml.descriptors.PropertyDescriptor
++org.exolab.castor.mapping.xml.PropertyType=org.exolab.castor.mapping.xml.descriptors.PropertyTypeDescriptor
++org.exolab.castor.mapping.xml.QueryHint=org.exolab.castor.mapping.xml.descriptors.QueryHintDescriptor
++org.exolab.castor.mapping.xml.NamedNativeQuery=org.exolab.castor.mapping.xml.descriptors.NamedNativeQueryDescriptor
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/MapTo.java
+@@ -0,0 +1,335 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -163,14 +379,15 @@ Last-Update: 2010-06-27
+package org.exolab.castor.mapping.xml;
+
+/**
-+ * The 'field' element is used to describe the property of a Java
-+ * object.
++ * The 'map-to' element is used for specifying the name of the item
++ *
++ * that should be associated with the given Java object.
+ *
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class FieldMapping implements java.io.Serializable {
++public class MapTo implements java.io.Serializable {
+
+
+ //--------------------------/
@@ -178,166 +395,53 @@ Last-Update: 2010-06-27
+ //--------------------------/
+
+ /**
-+ * A required attribute used to identify the name of the
-+ * property.
++ * An optional attribute used to specify the name of the table
++ * to which the given Java object is associated.
+ *
+ */
-+ private java.lang.String _name;
++ private java.lang.String _table;
+
+ /**
-+ * An optional attribute used to identify the type of the
-+ * property.
-+ *
++ * Field _xml.
+ */
-+ private java.lang.String _type;
++ private java.lang.String _xml;
+
+ /**
-+ * Field _required.
++ * Field _nsUri.
+ */
-+ private boolean _required = false;
++ private java.lang.String _nsUri;
+
+ /**
-+ * keeps track of state for field: _required
++ * Field _nsPrefix.
+ */
-+ private boolean _has_required;
++ private java.lang.String _nsPrefix;
+
+ /**
-+ * Field _transient.
-+ */
-+ private boolean _transient = false;
-+
-+ /**
-+ * keeps track of state for field: _transient
-+ */
-+ private boolean _has_transient;
-+
-+ /**
-+ * Field _nillable.
-+ */
-+ private boolean _nillable = false;
-+
-+ /**
-+ * keeps track of state for field: _nillable
-+ */
-+ private boolean _has_nillable;
-+
-+ /**
-+ * Field _direct.
-+ */
-+ private boolean _direct = false;
-+
-+ /**
-+ * keeps track of state for field: _direct
-+ */
-+ private boolean _has_direct;
-+
-+ /**
-+ * Field _lazy.
-+ */
-+ private boolean _lazy = false;
-+
-+ /**
-+ * keeps track of state for field: _lazy
-+ */
-+ private boolean _has_lazy;
-+
-+ /**
-+ * Indicates whether the field should be treated as a
-+ * container,
-+ * i.e. only it's fields should be persisted, but not the
-+ * containing
-+ * class itself. In this case, the container attribute should
-+ * be set to true (supported in Castor XML only).
-+ *
-+ */
-+ private boolean _container;
-+
-+ /**
-+ * keeps track of state for field: _container
-+ */
-+ private boolean _has_container;
-+
-+ /**
-+ * Field _getMethod.
-+ */
-+ private java.lang.String _getMethod;
-+
-+ /**
-+ * Field _hasMethod.
-+ */
-+ private java.lang.String _hasMethod;
-+
-+ /**
-+ * Field _setMethod.
-+ */
-+ private java.lang.String _setMethod;
-+
-+ /**
-+ * Field _createMethod.
-+ */
-+ private java.lang.String _createMethod;
-+
-+ /**
-+ * Field _handler.
-+ */
-+ private java.lang.String _handler;
-+
-+ /**
-+ * An optional attribute used to specify the type of the
-+ * collection.
-+ *
-+ */
-+ private org.exolab.castor.mapping.xml.types.FieldMappingCollectionType _collection;
-+
-+ /**
-+ * Field _comparator.
-+ */
-+ private java.lang.String _comparator;
-+
-+ /**
-+ * Field _identity.
-+ */
-+ private boolean _identity = false;
-+
-+ /**
-+ * keeps track of state for field: _identity
-+ */
-+ private boolean _has_identity;
-+
-+ /**
-+ * Field _description.
++ * Field _elementDefinition.
+ */
-+ private java.lang.String _description;
++ private boolean _elementDefinition = false;
+
+ /**
-+ * The 'sql' element is used to store information about the
-+ * database
-+ * column to which a Java object is mapped to.
-+ *
++ * keeps track of state for field: _elementDefinition
+ */
-+ private org.exolab.castor.mapping.xml.Sql _sql;
++ private boolean _has_elementDefinition;
+
+ /**
-+ * The 'bind-xml' element is used for specifying XML specific
-+ * databinding
-+ * properties and behavior for a specific field. 'bind-xml'
-+ * may only appear
-+ * as a child of a 'field' element.
-+ *
++ * Field _ldapDn.
+ */
-+ private org.exolab.castor.mapping.xml.BindXml _bindXml;
++ private java.lang.String _ldapDn;
+
+ /**
-+ * Field _ldap.
++ * Field _ldapOc.
+ */
-+ private org.exolab.castor.mapping.xml.Ldap _ldap;
++ private java.lang.String _ldapOc;
+
+
+ //----------------/
+ //- Constructors -/
+ //----------------/
+
-+ public FieldMapping() {
++ public MapTo() {
+ super();
+ }
+
@@ -348,925 +452,998 @@ Last-Update: 2010-06-27
+
+ /**
+ */
-+ public void deleteContainer(
-+ ) {
-+ this._has_container= false;
-+ }
-+
-+ /**
-+ */
-+ public void deleteDirect(
++ public void deleteElementDefinition(
+ ) {
-+ this._has_direct= false;
++ this._has_elementDefinition= false;
+ }
+
+ /**
++ * Returns the value of field 'elementDefinition'.
++ *
++ * @return the value of field 'ElementDefinition'.
+ */
-+ public void deleteIdentity(
++ public boolean getElementDefinition(
+ ) {
-+ this._has_identity= false;
++ return this._elementDefinition;
+ }
+
+ /**
++ * Returns the value of field 'ldapDn'.
++ *
++ * @return the value of field 'LdapDn'.
+ */
-+ public void deleteLazy(
++ public java.lang.String getLdapDn(
+ ) {
-+ this._has_lazy= false;
++ return this._ldapDn;
+ }
+
+ /**
++ * Returns the value of field 'ldapOc'.
++ *
++ * @return the value of field 'LdapOc'.
+ */
-+ public void deleteNillable(
++ public java.lang.String getLdapOc(
+ ) {
-+ this._has_nillable= false;
++ return this._ldapOc;
+ }
+
+ /**
++ * Returns the value of field 'nsPrefix'.
++ *
++ * @return the value of field 'NsPrefix'.
+ */
-+ public void deleteRequired(
++ public java.lang.String getNsPrefix(
+ ) {
-+ this._has_required= false;
++ return this._nsPrefix;
+ }
+
+ /**
++ * Returns the value of field 'nsUri'.
++ *
++ * @return the value of field 'NsUri'.
+ */
-+ public void deleteTransient(
++ public java.lang.String getNsUri(
+ ) {
-+ this._has_transient= false;
++ return this._nsUri;
+ }
+
+ /**
-+ * Returns the value of field 'bindXml'. The field 'bindXml'
-+ * has the following description: The 'bind-xml' element is
-+ * used for specifying XML specific databinding
-+ * properties and behavior for a specific field. 'bind-xml'
-+ * may only appear
-+ * as a child of a 'field' element.
++ * Returns the value of field 'table'. The field 'table' has
++ * the following description: An optional attribute used to
++ * specify the name of the table
++ * to which the given Java object is associated.
+ *
+ *
-+ * @return the value of field 'BindXml'.
++ * @return the value of field 'Table'.
+ */
-+ public org.exolab.castor.mapping.xml.BindXml getBindXml(
++ public java.lang.String getTable(
+ ) {
-+ return this._bindXml;
++ return this._table;
+ }
+
+ /**
-+ * Returns the value of field 'collection'. The field
-+ * 'collection' has the following description: An optional
-+ * attribute used to specify the type of the collection.
-+ *
++ * Returns the value of field 'xml'.
+ *
-+ * @return the value of field 'Collection'.
++ * @return the value of field 'Xml'.
+ */
-+ public org.exolab.castor.mapping.xml.types.FieldMappingCollectionType getCollection(
++ public java.lang.String getXml(
+ ) {
-+ return this._collection;
++ return this._xml;
+ }
+
+ /**
-+ * Returns the value of field 'comparator'.
++ * Method hasElementDefinition.
+ *
-+ * @return the value of field 'Comparator'.
++ * @return true if at least one ElementDefinition has been added
+ */
-+ public java.lang.String getComparator(
++ public boolean hasElementDefinition(
+ ) {
-+ return this._comparator;
++ return this._has_elementDefinition;
+ }
+
+ /**
-+ * Returns the value of field 'container'. The field
-+ * 'container' has the following description: Indicates whether
-+ * the field should be treated as a container,
-+ * i.e. only it's fields should be persisted, but not the
-+ * containing
-+ * class itself. In this case, the container attribute should
-+ * be set to true (supported in Castor XML only).
-+ *
++ * Returns the value of field 'elementDefinition'.
+ *
-+ * @return the value of field 'Container'.
++ * @return the value of field 'ElementDefinition'.
+ */
-+ public boolean getContainer(
++ public boolean isElementDefinition(
+ ) {
-+ return this._container;
++ return this._elementDefinition;
+ }
+
+ /**
-+ * Returns the value of field 'createMethod'.
++ * Method isValid.
+ *
-+ * @return the value of field 'CreateMethod'.
++ * @return true if this object is valid according to the schema
+ */
-+ public java.lang.String getCreateMethod(
++ public boolean isValid(
+ ) {
-+ return this._createMethod;
++ try {
++ validate();
++ } catch (org.exolab.castor.xml.ValidationException vex) {
++ return false;
++ }
++ return true;
+ }
+
+ /**
-+ * Returns the value of field 'description'.
+ *
-+ * @return the value of field 'Description'.
++ *
++ * @param out
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
+ */
-+ public java.lang.String getDescription(
-+ ) {
-+ return this._description;
++ public void marshal(
++ final java.io.Writer out)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, out);
+ }
+
+ /**
-+ * Returns the value of field 'direct'.
+ *
-+ * @return the value of field 'Direct'.
-+ */
-+ public boolean getDirect(
-+ ) {
-+ return this._direct;
-+ }
-+
-+ /**
-+ * Returns the value of field 'getMethod'.
+ *
-+ * @return the value of field 'GetMethod'.
++ * @param handler
++ * @throws java.io.IOException if an IOException occurs during
++ * marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
+ */
-+ public java.lang.String getGetMethod(
-+ ) {
-+ return this._getMethod;
++ public void marshal(
++ final org.xml.sax.ContentHandler handler)
++ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, handler);
+ }
+
+ /**
-+ * Returns the value of field 'handler'.
++ * Sets the value of field 'elementDefinition'.
+ *
-+ * @return the value of field 'Handler'.
++ * @param elementDefinition the value of field
++ * 'elementDefinition'.
+ */
-+ public java.lang.String getHandler(
-+ ) {
-+ return this._handler;
++ public void setElementDefinition(
++ final boolean elementDefinition) {
++ this._elementDefinition = elementDefinition;
++ this._has_elementDefinition = true;
+ }
+
+ /**
-+ * Returns the value of field 'hasMethod'.
++ * Sets the value of field 'ldapDn'.
+ *
-+ * @return the value of field 'HasMethod'.
++ * @param ldapDn the value of field 'ldapDn'.
+ */
-+ public java.lang.String getHasMethod(
-+ ) {
-+ return this._hasMethod;
++ public void setLdapDn(
++ final java.lang.String ldapDn) {
++ this._ldapDn = ldapDn;
+ }
+
+ /**
-+ * Returns the value of field 'identity'.
++ * Sets the value of field 'ldapOc'.
+ *
-+ * @return the value of field 'Identity'.
++ * @param ldapOc the value of field 'ldapOc'.
+ */
-+ public boolean getIdentity(
-+ ) {
-+ return this._identity;
++ public void setLdapOc(
++ final java.lang.String ldapOc) {
++ this._ldapOc = ldapOc;
+ }
+
+ /**
-+ * Returns the value of field 'lazy'.
++ * Sets the value of field 'nsPrefix'.
+ *
-+ * @return the value of field 'Lazy'.
++ * @param nsPrefix the value of field 'nsPrefix'.
+ */
-+ public boolean getLazy(
-+ ) {
-+ return this._lazy;
++ public void setNsPrefix(
++ final java.lang.String nsPrefix) {
++ this._nsPrefix = nsPrefix;
+ }
+
+ /**
-+ * Returns the value of field 'ldap'.
++ * Sets the value of field 'nsUri'.
+ *
-+ * @return the value of field 'Ldap'.
++ * @param nsUri the value of field 'nsUri'.
+ */
-+ public org.exolab.castor.mapping.xml.Ldap getLdap(
-+ ) {
-+ return this._ldap;
++ public void setNsUri(
++ final java.lang.String nsUri) {
++ this._nsUri = nsUri;
+ }
+
+ /**
-+ * Returns the value of field 'name'. The field 'name' has the
-+ * following description: A required attribute used to identify
-+ * the name of the property.
++ * Sets the value of field 'table'. The field 'table' has the
++ * following description: An optional attribute used to specify
++ * the name of the table
++ * to which the given Java object is associated.
+ *
+ *
-+ * @return the value of field 'Name'.
++ * @param table the value of field 'table'.
+ */
-+ public java.lang.String getName(
-+ ) {
-+ return this._name;
++ public void setTable(
++ final java.lang.String table) {
++ this._table = table;
+ }
+
+ /**
-+ * Returns the value of field 'nillable'.
++ * Sets the value of field 'xml'.
+ *
-+ * @return the value of field 'Nillable'.
++ * @param xml the value of field 'xml'.
+ */
-+ public boolean getNillable(
-+ ) {
-+ return this._nillable;
++ public void setXml(
++ final java.lang.String xml) {
++ this._xml = xml;
+ }
+
+ /**
-+ * Returns the value of field 'required'.
++ * Method unmarshal.
+ *
-+ * @return the value of field 'Required'.
++ * @param reader
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @return the unmarshaled org.exolab.castor.mapping.xml.MapTo
+ */
-+ public boolean getRequired(
-+ ) {
-+ return this._required;
++ public static org.exolab.castor.mapping.xml.MapTo unmarshal(
++ final java.io.Reader reader)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ return (org.exolab.castor.mapping.xml.MapTo) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.MapTo.class, reader);
+ }
+
+ /**
-+ * Returns the value of field 'setMethod'.
+ *
-+ * @return the value of field 'SetMethod'.
++ *
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
+ */
-+ public java.lang.String getSetMethod(
-+ ) {
-+ return this._setMethod;
++ public void validate(
++ )
++ throws org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
++ validator.validate(this);
+ }
+
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/BindXml.java
+@@ -0,0 +1,670 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.exolab.castor.mapping.xml;
++
++/**
++ * The 'bind-xml' element is used for specifying XML specific
++ * databinding
++ * properties and behavior for a specific field. 'bind-xml' may
++ * only appear
++ * as a child of a 'field' element.
++ *
++ *
++ * @version $Revision$ $Date$
++ */
++ at SuppressWarnings("serial")
++public class BindXml implements java.io.Serializable {
++
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
+ /**
-+ * Returns the value of field 'sql'. The field 'sql' has the
-+ * following description: The 'sql' element is used to store
-+ * information about the database
-+ * column to which a Java object is mapped to.
++ * An optional attribute used for specifying the XML name for
++ * the
++ * field associated with the 'bind-xml' element.
+ *
-+ *
-+ * @return the value of field 'Sql'.
+ */
-+ public org.exolab.castor.mapping.xml.Sql getSql(
-+ ) {
-+ return this._sql;
-+ }
++ private java.lang.String _name;
+
+ /**
-+ * Returns the value of field 'transient'.
-+ *
-+ * @return the value of field 'Transient'.
++ * Field _type.
+ */
-+ public boolean getTransient(
-+ ) {
-+ return this._transient;
-+ }
++ private java.lang.String _type;
+
+ /**
-+ * Returns the value of field 'type'. The field 'type' has the
-+ * following description: An optional attribute used to
-+ * identify the type of the property.
++ * Allows specifying how Castor should automatically determines
++ * the XML name of this field when no name has been specified.
++ * In most cases the XML name is determined by using the field
++ * name,
++ * but in some cases the user may want to use the Class name
++ * of
++ * the field type. This attribute allows choosing between the
++ * two approaches. If this attribute is not specified, the
++ * field
++ * name is used as the XML name.
+ *
-+ *
-+ * @return the value of field 'Type'.
+ */
-+ public java.lang.String getType(
-+ ) {
-+ return this._type;
-+ }
++ private org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType _autoNaming;
+
+ /**
-+ * Method hasContainer.
-+ *
-+ * @return true if at least one Container has been added
++ * Allows specifying a nested location path for this field,
++ * the value should just be a simplified XPath like value
++ * where names are separated by "/".
++ *
+ */
-+ public boolean hasContainer(
-+ ) {
-+ return this._has_container;
-+ }
++ private java.lang.String _location;
+
+ /**
-+ * Method hasDirect.
-+ *
-+ * @return true if at least one Direct has been added
++ * Field _matches.
+ */
-+ public boolean hasDirect(
-+ ) {
-+ return this._has_direct;
-+ }
++ private java.lang.String _matches;
+
+ /**
-+ * Method hasIdentity.
-+ *
-+ * @return true if at least one Identity has been added
++ * Field _reference.
+ */
-+ public boolean hasIdentity(
-+ ) {
-+ return this._has_identity;
-+ }
++ private boolean _reference;
+
+ /**
-+ * Method hasLazy.
-+ *
-+ * @return true if at least one Lazy has been added
++ * keeps track of state for field: _reference
+ */
-+ public boolean hasLazy(
-+ ) {
-+ return this._has_lazy;
-+ }
++ private boolean _has_reference;
+
+ /**
-+ * Method hasNillable.
-+ *
-+ * @return true if at least one Nillable has been added
++ * Field _node.
+ */
-+ public boolean hasNillable(
-+ ) {
-+ return this._has_nillable;
-+ }
++ private org.exolab.castor.mapping.xml.types.BindXmlNodeType _node;
+
+ /**
-+ * Method hasRequired.
-+ *
-+ * @return true if at least one Required has been added
++ * Field _QNamePrefix.
+ */
-+ public boolean hasRequired(
-+ ) {
-+ return this._has_required;
-+ }
++ private java.lang.String _QNamePrefix;
+
+ /**
-+ * Method hasTransient.
-+ *
-+ * @return true if at least one Transient has been added
++ * Field _transient.
+ */
-+ public boolean hasTransient(
-+ ) {
-+ return this._has_transient;
-+ }
++ private boolean _transient;
+
+ /**
-+ * Returns the value of field 'container'. The field
-+ * 'container' has the following description: Indicates whether
-+ * the field should be treated as a container,
-+ * i.e. only it's fields should be persisted, but not the
-+ * containing
-+ * class itself. In this case, the container attribute should
-+ * be set to true (supported in Castor XML only).
++ * keeps track of state for field: _transient
++ */
++ private boolean _has_transient;
++
++ /**
++ * The 'class' element is used to store information about
++ * mapping of a class.
+ *
-+ *
-+ * @return the value of field 'Container'.
+ */
-+ public boolean isContainer(
-+ ) {
-+ return this._container;
++ private org.exolab.castor.mapping.xml.ClassMapping _classMapping;
++
++ /**
++ * Field _propertyList.
++ */
++ private java.util.List<org.exolab.castor.mapping.xml.Property> _propertyList;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public BindXml() {
++ super();
++ this._propertyList = new java.util.ArrayList<org.exolab.castor.mapping.xml.Property>();
+ }
+
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
+ /**
-+ * Returns the value of field 'direct'.
+ *
-+ * @return the value of field 'Direct'.
++ *
++ * @param vProperty
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public boolean isDirect(
-+ ) {
-+ return this._direct;
++ public void addProperty(
++ final org.exolab.castor.mapping.xml.Property vProperty)
++ throws java.lang.IndexOutOfBoundsException {
++ this._propertyList.add(vProperty);
+ }
+
+ /**
-+ * Returns the value of field 'identity'.
+ *
-+ * @return the value of field 'Identity'.
++ *
++ * @param index
++ * @param vProperty
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public boolean isIdentity(
-+ ) {
-+ return this._identity;
++ public void addProperty(
++ final int index,
++ final org.exolab.castor.mapping.xml.Property vProperty)
++ throws java.lang.IndexOutOfBoundsException {
++ this._propertyList.add(index, vProperty);
+ }
+
+ /**
-+ * Returns the value of field 'lazy'.
-+ *
-+ * @return the value of field 'Lazy'.
+ */
-+ public boolean isLazy(
++ public void deleteReference(
+ ) {
-+ return this._lazy;
++ this._has_reference= false;
+ }
+
+ /**
-+ * Returns the value of field 'nillable'.
-+ *
-+ * @return the value of field 'Nillable'.
+ */
-+ public boolean isNillable(
++ public void deleteTransient(
+ ) {
-+ return this._nillable;
++ this._has_transient= false;
+ }
+
+ /**
-+ * Returns the value of field 'required'.
++ * Method enumerateProperty.
+ *
-+ * @return the value of field 'Required'.
++ * @return an Enumeration over all possible elements of this
++ * collection
+ */
-+ public boolean isRequired(
++ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.Property> enumerateProperty(
+ ) {
-+ return this._required;
++ return java.util.Collections.enumeration(this._propertyList);
+ }
+
+ /**
-+ * Returns the value of field 'transient'.
++ * Returns the value of field 'autoNaming'. The field
++ * 'autoNaming' has the following description: Allows
++ * specifying how Castor should automatically determines
++ * the XML name of this field when no name has been specified.
++ * In most cases the XML name is determined by using the field
++ * name,
++ * but in some cases the user may want to use the Class name
++ * of
++ * the field type. This attribute allows choosing between the
++ * two approaches. If this attribute is not specified, the
++ * field
++ * name is used as the XML name.
++ *
+ *
-+ * @return the value of field 'Transient'.
++ * @return the value of field 'AutoNaming'.
+ */
-+ public boolean isTransient(
++ public org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType getAutoNaming(
+ ) {
-+ return this._transient;
++ return this._autoNaming;
+ }
+
+ /**
-+ * Method isValid.
++ * Returns the value of field 'classMapping'. The field
++ * 'classMapping' has the following description: The 'class'
++ * element is used to store information about mapping of a
++ * class.
++ *
+ *
-+ * @return true if this object is valid according to the schema
++ * @return the value of field 'ClassMapping'.
+ */
-+ public boolean isValid(
++ public org.exolab.castor.mapping.xml.ClassMapping getClassMapping(
+ ) {
-+ try {
-+ validate();
-+ } catch (org.exolab.castor.xml.ValidationException vex) {
-+ return false;
-+ }
-+ return true;
++ return this._classMapping;
+ }
+
+ /**
++ * Returns the value of field 'location'. The field 'location'
++ * has the following description: Allows specifying a nested
++ * location path for this field,
++ * the value should just be a simplified XPath like value
++ * where names are separated by "/".
++ *
+ *
-+ *
-+ * @param out
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
++ * @return the value of field 'Location'.
+ */
-+ public void marshal(
-+ final java.io.Writer out)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, out);
++ public java.lang.String getLocation(
++ ) {
++ return this._location;
+ }
+
+ /**
++ * Returns the value of field 'matches'.
+ *
-+ *
-+ * @param handler
-+ * @throws java.io.IOException if an IOException occurs during
-+ * marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
++ * @return the value of field 'Matches'.
+ */
-+ public void marshal(
-+ final org.xml.sax.ContentHandler handler)
-+ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, handler);
++ public java.lang.String getMatches(
++ ) {
++ return this._matches;
+ }
+
+ /**
-+ * Sets the value of field 'bindXml'. The field 'bindXml' has
-+ * the following description: The 'bind-xml' element is used
-+ * for specifying XML specific databinding
-+ * properties and behavior for a specific field. 'bind-xml'
-+ * may only appear
-+ * as a child of a 'field' element.
++ * Returns the value of field 'name'. The field 'name' has the
++ * following description: An optional attribute used for
++ * specifying the XML name for the
++ * field associated with the 'bind-xml' element.
+ *
+ *
-+ * @param bindXml the value of field 'bindXml'.
++ * @return the value of field 'Name'.
+ */
-+ public void setBindXml(
-+ final org.exolab.castor.mapping.xml.BindXml bindXml) {
-+ this._bindXml = bindXml;
++ public java.lang.String getName(
++ ) {
++ return this._name;
+ }
+
+ /**
-+ * Sets the value of field 'collection'. The field 'collection'
-+ * has the following description: An optional attribute used to
-+ * specify the type of the collection.
-+ *
++ * Returns the value of field 'node'.
+ *
-+ * @param collection the value of field 'collection'.
++ * @return the value of field 'Node'.
+ */
-+ public void setCollection(
-+ final org.exolab.castor.mapping.xml.types.FieldMappingCollectionType collection) {
-+ this._collection = collection;
++ public org.exolab.castor.mapping.xml.types.BindXmlNodeType getNode(
++ ) {
++ return this._node;
+ }
+
+ /**
-+ * Sets the value of field 'comparator'.
++ * Method getProperty.
+ *
-+ * @param comparator the value of field 'comparator'.
++ * @param index
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ * @return the value of the
++ * org.exolab.castor.mapping.xml.Property at the given index
+ */
-+ public void setComparator(
-+ final java.lang.String comparator) {
-+ this._comparator = comparator;
++ public org.exolab.castor.mapping.xml.Property getProperty(
++ final int index)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._propertyList.size()) {
++ throw new IndexOutOfBoundsException("getProperty: Index value '" + index + "' not in range [0.." + (this._propertyList.size() - 1) + "]");
++ }
++
++ return (org.exolab.castor.mapping.xml.Property) _propertyList.get(index);
+ }
+
+ /**
-+ * Sets the value of field 'container'. The field 'container'
-+ * has the following description: Indicates whether the field
-+ * should be treated as a container,
-+ * i.e. only it's fields should be persisted, but not the
-+ * containing
-+ * class itself. In this case, the container attribute should
-+ * be set to true (supported in Castor XML only).
-+ *
++ * Method getProperty.Returns the contents of the collection in
++ * an Array. <p>Note: Just in case the collection contents
++ * are changing in another thread, we pass a 0-length Array of
++ * the correct type into the API call. This way we <i>know</i>
++ * that the Array returned is of exactly the correct length.
+ *
-+ * @param container the value of field 'container'.
++ * @return this collection as an Array
+ */
-+ public void setContainer(
-+ final boolean container) {
-+ this._container = container;
-+ this._has_container = true;
++ public org.exolab.castor.mapping.xml.Property[] getProperty(
++ ) {
++ org.exolab.castor.mapping.xml.Property[] array = new org.exolab.castor.mapping.xml.Property[0];
++ return (org.exolab.castor.mapping.xml.Property[]) this._propertyList.toArray(array);
+ }
+
+ /**
-+ * Sets the value of field 'createMethod'.
++ * Method getPropertyCount.
+ *
-+ * @param createMethod the value of field 'createMethod'.
++ * @return the size of this collection
+ */
-+ public void setCreateMethod(
-+ final java.lang.String createMethod) {
-+ this._createMethod = createMethod;
++ public int getPropertyCount(
++ ) {
++ return this._propertyList.size();
+ }
+
+ /**
-+ * Sets the value of field 'description'.
++ * Returns the value of field 'QNamePrefix'.
+ *
-+ * @param description the value of field 'description'.
++ * @return the value of field 'QNamePrefix'.
+ */
-+ public void setDescription(
-+ final java.lang.String description) {
-+ this._description = description;
++ public java.lang.String getQNamePrefix(
++ ) {
++ return this._QNamePrefix;
+ }
+
+ /**
-+ * Sets the value of field 'direct'.
++ * Returns the value of field 'reference'.
+ *
-+ * @param direct the value of field 'direct'.
++ * @return the value of field 'Reference'.
+ */
-+ public void setDirect(
-+ final boolean direct) {
-+ this._direct = direct;
-+ this._has_direct = true;
++ public boolean getReference(
++ ) {
++ return this._reference;
+ }
+
+ /**
-+ * Sets the value of field 'getMethod'.
++ * Returns the value of field 'transient'.
+ *
-+ * @param getMethod the value of field 'getMethod'.
++ * @return the value of field 'Transient'.
+ */
-+ public void setGetMethod(
-+ final java.lang.String getMethod) {
-+ this._getMethod = getMethod;
++ public boolean getTransient(
++ ) {
++ return this._transient;
+ }
+
+ /**
-+ * Sets the value of field 'handler'.
++ * Returns the value of field 'type'.
+ *
-+ * @param handler the value of field 'handler'.
++ * @return the value of field 'Type'.
+ */
-+ public void setHandler(
-+ final java.lang.String handler) {
-+ this._handler = handler;
++ public java.lang.String getType(
++ ) {
++ return this._type;
+ }
+
+ /**
-+ * Sets the value of field 'hasMethod'.
++ * Method hasReference.
+ *
-+ * @param hasMethod the value of field 'hasMethod'.
++ * @return true if at least one Reference has been added
+ */
-+ public void setHasMethod(
-+ final java.lang.String hasMethod) {
-+ this._hasMethod = hasMethod;
++ public boolean hasReference(
++ ) {
++ return this._has_reference;
+ }
+
+ /**
-+ * Sets the value of field 'identity'.
++ * Method hasTransient.
+ *
-+ * @param identity the value of field 'identity'.
++ * @return true if at least one Transient has been added
+ */
-+ public void setIdentity(
-+ final boolean identity) {
-+ this._identity = identity;
-+ this._has_identity = true;
++ public boolean hasTransient(
++ ) {
++ return this._has_transient;
+ }
+
+ /**
-+ * Sets the value of field 'lazy'.
++ * Returns the value of field 'reference'.
+ *
-+ * @param lazy the value of field 'lazy'.
++ * @return the value of field 'Reference'.
+ */
-+ public void setLazy(
-+ final boolean lazy) {
-+ this._lazy = lazy;
-+ this._has_lazy = true;
++ public boolean isReference(
++ ) {
++ return this._reference;
+ }
+
+ /**
-+ * Sets the value of field 'ldap'.
++ * Returns the value of field 'transient'.
+ *
-+ * @param ldap the value of field 'ldap'.
++ * @return the value of field 'Transient'.
+ */
-+ public void setLdap(
-+ final org.exolab.castor.mapping.xml.Ldap ldap) {
-+ this._ldap = ldap;
++ public boolean isTransient(
++ ) {
++ return this._transient;
+ }
+
+ /**
-+ * Sets the value of field 'name'. The field 'name' has the
-+ * following description: A required attribute used to identify
-+ * the name of the property.
-+ *
++ * Method isValid.
+ *
-+ * @param name the value of field 'name'.
++ * @return true if this object is valid according to the schema
+ */
-+ public void setName(
-+ final java.lang.String name) {
-+ this._name = name;
++ public boolean isValid(
++ ) {
++ try {
++ validate();
++ } catch (org.exolab.castor.xml.ValidationException vex) {
++ return false;
++ }
++ return true;
+ }
+
+ /**
-+ * Sets the value of field 'nillable'.
++ * Method iterateProperty.
+ *
-+ * @param nillable the value of field 'nillable'.
++ * @return an Iterator over all possible elements in this
++ * collection
+ */
-+ public void setNillable(
-+ final boolean nillable) {
-+ this._nillable = nillable;
-+ this._has_nillable = true;
++ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.Property> iterateProperty(
++ ) {
++ return this._propertyList.iterator();
+ }
+
+ /**
-+ * Sets the value of field 'required'.
+ *
-+ * @param required the value of field 'required'.
++ *
++ * @param out
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
+ */
-+ public void setRequired(
-+ final boolean required) {
-+ this._required = required;
-+ this._has_required = true;
++ public void marshal(
++ final java.io.Writer out)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, out);
+ }
+
+ /**
-+ * Sets the value of field 'setMethod'.
+ *
-+ * @param setMethod the value of field 'setMethod'.
++ *
++ * @param handler
++ * @throws java.io.IOException if an IOException occurs during
++ * marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
+ */
-+ public void setSetMethod(
-+ final java.lang.String setMethod) {
-+ this._setMethod = setMethod;
++ public void marshal(
++ final org.xml.sax.ContentHandler handler)
++ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, handler);
+ }
+
+ /**
-+ * Sets the value of field 'sql'. The field 'sql' has the
-+ * following description: The 'sql' element is used to store
-+ * information about the database
-+ * column to which a Java object is mapped to.
-+ *
++ */
++ public void removeAllProperty(
++ ) {
++ this._propertyList.clear();
++ }
++
++ /**
++ * Method removeProperty.
+ *
-+ * @param sql the value of field 'sql'.
++ * @param vProperty
++ * @return true if the object was removed from the collection.
+ */
-+ public void setSql(
-+ final org.exolab.castor.mapping.xml.Sql sql) {
-+ this._sql = sql;
++ public boolean removeProperty(
++ final org.exolab.castor.mapping.xml.Property vProperty) {
++ boolean removed = _propertyList.remove(vProperty);
++ return removed;
+ }
+
+ /**
-+ * Sets the value of field 'transient'.
++ * Method removePropertyAt.
+ *
-+ * @param _transient
-+ * @param transient the value of field 'transient'.
++ * @param index
++ * @return the element removed from the collection
+ */
-+ public void setTransient(
-+ final boolean _transient) {
-+ this._transient = _transient;
-+ this._has_transient = true;
++ public org.exolab.castor.mapping.xml.Property removePropertyAt(
++ final int index) {
++ java.lang.Object obj = this._propertyList.remove(index);
++ return (org.exolab.castor.mapping.xml.Property) obj;
+ }
+
+ /**
-+ * Sets the value of field 'type'. The field 'type' has the
-+ * following description: An optional attribute used to
-+ * identify the type of the property.
++ * Sets the value of field 'autoNaming'. The field 'autoNaming'
++ * has the following description: Allows specifying how Castor
++ * should automatically determines
++ * the XML name of this field when no name has been specified.
++ * In most cases the XML name is determined by using the field
++ * name,
++ * but in some cases the user may want to use the Class name
++ * of
++ * the field type. This attribute allows choosing between the
++ * two approaches. If this attribute is not specified, the
++ * field
++ * name is used as the XML name.
+ *
+ *
-+ * @param type the value of field 'type'.
++ * @param autoNaming the value of field 'autoNaming'.
+ */
-+ public void setType(
-+ final java.lang.String type) {
-+ this._type = type;
++ public void setAutoNaming(
++ final org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType autoNaming) {
++ this._autoNaming = autoNaming;
+ }
+
+ /**
-+ * Method unmarshal.
++ * Sets the value of field 'classMapping'. The field
++ * 'classMapping' has the following description: The 'class'
++ * element is used to store information about mapping of a
++ * class.
++ *
+ *
-+ * @param reader
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled
-+ * org.exolab.castor.mapping.xml.FieldMapping
++ * @param classMapping the value of field 'classMapping'.
+ */
-+ public static org.exolab.castor.mapping.xml.FieldMapping unmarshal(
-+ final java.io.Reader reader)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.exolab.castor.mapping.xml.FieldMapping) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.FieldMapping.class, reader);
++ public void setClassMapping(
++ final org.exolab.castor.mapping.xml.ClassMapping classMapping) {
++ this._classMapping = classMapping;
+ }
+
+ /**
++ * Sets the value of field 'location'. The field 'location' has
++ * the following description: Allows specifying a nested
++ * location path for this field,
++ * the value should just be a simplified XPath like value
++ * where names are separated by "/".
++ *
+ *
++ * @param location the value of field 'location'.
++ */
++ public void setLocation(
++ final java.lang.String location) {
++ this._location = location;
++ }
++
++ /**
++ * Sets the value of field 'matches'.
+ *
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
++ * @param matches the value of field 'matches'.
+ */
-+ public void validate(
-+ )
-+ throws org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
-+ validator.validate(this);
++ public void setMatches(
++ final java.lang.String matches) {
++ this._matches = matches;
+ }
+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/NamedNativeQuery.java
-@@ -0,0 +1,381 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
-+
-+package org.exolab.castor.mapping.xml;
-+
-+/**
-+ * Class NamedNativeQuery.
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+ at SuppressWarnings("serial")
-+public class NamedNativeQuery implements java.io.Serializable {
-+
-+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
-+
-+ /**
-+ * Field _name.
-+ */
-+ private java.lang.String _name;
-+
-+ /**
-+ * Field _resultClass.
-+ */
-+ private java.lang.String _resultClass;
-+
-+ /**
-+ * Field _resultSetMapping.
-+ */
-+ private java.lang.String _resultSetMapping;
-+
+ /**
-+ * Field _query.
++ * Sets the value of field 'name'. The field 'name' has the
++ * following description: An optional attribute used for
++ * specifying the XML name for the
++ * field associated with the 'bind-xml' element.
++ *
++ *
++ * @param name the value of field 'name'.
+ */
-+ private java.lang.String _query;
++ public void setName(
++ final java.lang.String name) {
++ this._name = name;
++ }
+
+ /**
-+ * Field _queryHintList.
++ * Sets the value of field 'node'.
++ *
++ * @param node the value of field 'node'.
+ */
-+ private java.util.List<org.exolab.castor.mapping.xml.QueryHint> _queryHintList;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
-+
-+ public NamedNativeQuery() {
-+ super();
-+ this._queryHintList = new java.util.ArrayList<org.exolab.castor.mapping.xml.QueryHint>();
++ public void setNode(
++ final org.exolab.castor.mapping.xml.types.BindXmlNodeType node) {
++ this._node = node;
+ }
+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
-+
+ /**
+ *
+ *
-+ * @param vQueryHint
++ * @param index
++ * @param vProperty
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
-+ public void addQueryHint(
-+ final org.exolab.castor.mapping.xml.QueryHint vQueryHint)
++ public void setProperty(
++ final int index,
++ final org.exolab.castor.mapping.xml.Property vProperty)
+ throws java.lang.IndexOutOfBoundsException {
-+ this._queryHintList.add(vQueryHint);
++ // check bounds for index
++ if (index < 0 || index >= this._propertyList.size()) {
++ throw new IndexOutOfBoundsException("setProperty: Index value '" + index + "' not in range [0.." + (this._propertyList.size() - 1) + "]");
++ }
++
++ this._propertyList.set(index, vProperty);
+ }
+
+ /**
+ *
+ *
-+ * @param index
-+ * @param vQueryHint
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @param vPropertyArray
+ */
-+ public void addQueryHint(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.QueryHint vQueryHint)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._queryHintList.add(index, vQueryHint);
++ public void setProperty(
++ final org.exolab.castor.mapping.xml.Property[] vPropertyArray) {
++ //-- copy array
++ _propertyList.clear();
++
++ for (int i = 0; i < vPropertyArray.length; i++) {
++ this._propertyList.add(vPropertyArray[i]);
++ }
+ }
+
+ /**
-+ * Method enumerateQueryHint.
++ * Sets the value of field 'QNamePrefix'.
+ *
-+ * @return an Enumeration over all possible elements of this
-+ * collection
++ * @param QNamePrefix the value of field 'QNamePrefix'.
+ */
-+ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.QueryHint> enumerateQueryHint(
-+ ) {
-+ return java.util.Collections.enumeration(this._queryHintList);
++ public void setQNamePrefix(
++ final java.lang.String QNamePrefix) {
++ this._QNamePrefix = QNamePrefix;
+ }
+
+ /**
-+ * Returns the value of field 'name'.
++ * Sets the value of field 'reference'.
+ *
-+ * @return the value of field 'Name'.
++ * @param reference the value of field 'reference'.
+ */
-+ public java.lang.String getName(
-+ ) {
-+ return this._name;
++ public void setReference(
++ final boolean reference) {
++ this._reference = reference;
++ this._has_reference = true;
+ }
+
+ /**
-+ * Returns the value of field 'query'.
++ * Sets the value of field 'transient'.
+ *
-+ * @return the value of field 'Query'.
++ * @param _transient
++ * @param transient the value of field 'transient'.
+ */
-+ public java.lang.String getQuery(
-+ ) {
-+ return this._query;
++ public void setTransient(
++ final boolean _transient) {
++ this._transient = _transient;
++ this._has_transient = true;
+ }
+
+ /**
-+ * Method getQueryHint.
++ * Sets the value of field 'type'.
+ *
-+ * @param index
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
-+ * @return the value of the
-+ * org.exolab.castor.mapping.xml.QueryHint at the given index
++ * @param type the value of field 'type'.
+ */
-+ public org.exolab.castor.mapping.xml.QueryHint getQueryHint(
-+ final int index)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._queryHintList.size()) {
-+ throw new IndexOutOfBoundsException("getQueryHint: Index value '" + index + "' not in range [0.." + (this._queryHintList.size() - 1) + "]");
-+ }
-+
-+ return (org.exolab.castor.mapping.xml.QueryHint) _queryHintList.get(index);
++ public void setType(
++ final java.lang.String type) {
++ this._type = type;
+ }
+
+ /**
-+ * Method getQueryHint.Returns the contents of the collection
-+ * in an Array. <p>Note: Just in case the collection contents
-+ * are changing in another thread, we pass a 0-length Array of
-+ * the correct type into the API call. This way we <i>know</i>
-+ * that the Array returned is of exactly the correct length.
++ * Method unmarshal.
+ *
-+ * @return this collection as an Array
++ * @param reader
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @return the unmarshaled org.exolab.castor.mapping.xml.BindXml
+ */
-+ public org.exolab.castor.mapping.xml.QueryHint[] getQueryHint(
-+ ) {
-+ org.exolab.castor.mapping.xml.QueryHint[] array = new org.exolab.castor.mapping.xml.QueryHint[0];
-+ return (org.exolab.castor.mapping.xml.QueryHint[]) this._queryHintList.toArray(array);
++ public static org.exolab.castor.mapping.xml.BindXml unmarshal(
++ final java.io.Reader reader)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ return (org.exolab.castor.mapping.xml.BindXml) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.BindXml.class, reader);
+ }
+
+ /**
-+ * Method getQueryHintCount.
+ *
-+ * @return the size of this collection
++ *
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
+ */
-+ public int getQueryHintCount(
-+ ) {
-+ return this._queryHintList.size();
++ public void validate(
++ )
++ throws org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
++ validator.validate(this);
++ }
++
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/PropertyType.java
+@@ -0,0 +1,115 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.exolab.castor.mapping.xml;
++
++/**
++ * Class PropertyType.
++ *
++ * @version $Revision$ $Date$
++ */
++ at SuppressWarnings("serial")
++public abstract class PropertyType implements java.io.Serializable {
++
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
++ /**
++ * Field _name.
++ */
++ private java.lang.String _name;
++
++ /**
++ * Field _value.
++ */
++ private java.lang.String _value;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public PropertyType() {
++ super();
+ }
+
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
+ /**
-+ * Returns the value of field 'resultClass'.
++ * Returns the value of field 'name'.
+ *
-+ * @return the value of field 'ResultClass'.
++ * @return the value of field 'Name'.
+ */
-+ public java.lang.String getResultClass(
++ public java.lang.String getName(
+ ) {
-+ return this._resultClass;
++ return this._name;
+ }
+
+ /**
-+ * Returns the value of field 'resultSetMapping'.
++ * Returns the value of field 'value'.
+ *
-+ * @return the value of field 'ResultSetMapping'.
++ * @return the value of field 'Value'.
+ */
-+ public java.lang.String getResultSetMapping(
++ public java.lang.String getValue(
+ ) {
-+ return this._resultSetMapping;
++ return this._value;
+ }
+
+ /**
@@ -1285,80 +1462,6 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Method iterateQueryHint.
-+ *
-+ * @return an Iterator over all possible elements in this
-+ * collection
-+ */
-+ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.QueryHint> iterateQueryHint(
-+ ) {
-+ return this._queryHintList.iterator();
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param out
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ */
-+ public void marshal(
-+ final java.io.Writer out)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, out);
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param handler
-+ * @throws java.io.IOException if an IOException occurs during
-+ * marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ */
-+ public void marshal(
-+ final org.xml.sax.ContentHandler handler)
-+ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, handler);
-+ }
-+
-+ /**
-+ */
-+ public void removeAllQueryHint(
-+ ) {
-+ this._queryHintList.clear();
-+ }
-+
-+ /**
-+ * Method removeQueryHint.
-+ *
-+ * @param vQueryHint
-+ * @return true if the object was removed from the collection.
-+ */
-+ public boolean removeQueryHint(
-+ final org.exolab.castor.mapping.xml.QueryHint vQueryHint) {
-+ boolean removed = _queryHintList.remove(vQueryHint);
-+ return removed;
-+ }
-+
-+ /**
-+ * Method removeQueryHintAt.
-+ *
-+ * @param index
-+ * @return the element removed from the collection
-+ */
-+ public org.exolab.castor.mapping.xml.QueryHint removeQueryHintAt(
-+ final int index) {
-+ java.lang.Object obj = this._queryHintList.remove(index);
-+ return (org.exolab.castor.mapping.xml.QueryHint) obj;
-+ }
-+
-+ /**
+ * Sets the value of field 'name'.
+ *
+ * @param name the value of field 'name'.
@@ -1369,85 +1472,13 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Sets the value of field 'query'.
-+ *
-+ * @param query the value of field 'query'.
-+ */
-+ public void setQuery(
-+ final java.lang.String query) {
-+ this._query = query;
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param index
-+ * @param vQueryHint
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
-+ */
-+ public void setQueryHint(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.QueryHint vQueryHint)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._queryHintList.size()) {
-+ throw new IndexOutOfBoundsException("setQueryHint: Index value '" + index + "' not in range [0.." + (this._queryHintList.size() - 1) + "]");
-+ }
-+
-+ this._queryHintList.set(index, vQueryHint);
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param vQueryHintArray
-+ */
-+ public void setQueryHint(
-+ final org.exolab.castor.mapping.xml.QueryHint[] vQueryHintArray) {
-+ //-- copy array
-+ _queryHintList.clear();
-+
-+ for (int i = 0; i < vQueryHintArray.length; i++) {
-+ this._queryHintList.add(vQueryHintArray[i]);
-+ }
-+ }
-+
-+ /**
-+ * Sets the value of field 'resultClass'.
-+ *
-+ * @param resultClass the value of field 'resultClass'.
-+ */
-+ public void setResultClass(
-+ final java.lang.String resultClass) {
-+ this._resultClass = resultClass;
-+ }
-+
-+ /**
-+ * Sets the value of field 'resultSetMapping'.
-+ *
-+ * @param resultSetMapping the value of field 'resultSetMapping'
-+ */
-+ public void setResultSetMapping(
-+ final java.lang.String resultSetMapping) {
-+ this._resultSetMapping = resultSetMapping;
-+ }
-+
-+ /**
-+ * Method unmarshal.
++ * Sets the value of field 'value'.
+ *
-+ * @param reader
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled
-+ * org.exolab.castor.mapping.xml.NamedNativeQuery
++ * @param value the value of field 'value'.
+ */
-+ public static org.exolab.castor.mapping.xml.NamedNativeQuery unmarshal(
-+ final java.io.Reader reader)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.exolab.castor.mapping.xml.NamedNativeQuery) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.NamedNativeQuery.class, reader);
++ public void setValue(
++ final java.lang.String value) {
++ this._value = value;
+ }
+
+ /**
@@ -1465,11 +1496,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/QueryHint.java
-@@ -0,0 +1,164 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/MappingRoot.java
+@@ -0,0 +1,814 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -1477,12 +1508,12 @@ Last-Update: 2010-06-27
+package org.exolab.castor.mapping.xml;
+
+/**
-+ * Class QueryHint.
++ * Class MappingRoot.
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class QueryHint implements java.io.Serializable {
++public class MappingRoot implements java.io.Serializable {
+
+
+ //--------------------------/
@@ -1490,22 +1521,43 @@ Last-Update: 2010-06-27
+ //--------------------------/
+
+ /**
-+ * Field _name.
++ * Field _description.
+ */
-+ private java.lang.String _name;
++ private java.lang.String _description;
+
+ /**
-+ * Field _value.
++ * Field _includeList.
+ */
-+ private java.lang.String _value;
++ private java.util.List<org.exolab.castor.mapping.xml.Include> _includeList;
++
++ /**
++ * Field _fieldHandlerDefList.
++ */
++ private java.util.List<org.exolab.castor.mapping.xml.FieldHandlerDef> _fieldHandlerDefList;
++
++ /**
++ * The 'class' element is used to store information about
++ * mapping of a class.
++ *
++ */
++ private java.util.List<org.exolab.castor.mapping.xml.ClassMapping> _classMappingList;
++
++ /**
++ * Field _keyGeneratorDefList.
++ */
++ private java.util.List<org.exolab.castor.mapping.xml.KeyGeneratorDef> _keyGeneratorDefList;
+
+
+ //----------------/
+ //- Constructors -/
+ //----------------/
+
-+ public QueryHint() {
++ public MappingRoot() {
+ super();
++ this._includeList = new java.util.ArrayList<org.exolab.castor.mapping.xml.Include>();
++ this._fieldHandlerDefList = new java.util.ArrayList<org.exolab.castor.mapping.xml.FieldHandlerDef>();
++ this._classMappingList = new java.util.ArrayList<org.exolab.castor.mapping.xml.ClassMapping>();
++ this._keyGeneratorDefList = new java.util.ArrayList<org.exolab.castor.mapping.xml.KeyGeneratorDef>();
+ }
+
+
@@ -1514,758 +1566,819 @@ Last-Update: 2010-06-27
+ //-----------/
+
+ /**
-+ * Returns the value of field 'name'.
+ *
-+ * @return the value of field 'Name'.
++ *
++ * @param vClassMapping
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public java.lang.String getName(
-+ ) {
-+ return this._name;
++ public void addClassMapping(
++ final org.exolab.castor.mapping.xml.ClassMapping vClassMapping)
++ throws java.lang.IndexOutOfBoundsException {
++ this._classMappingList.add(vClassMapping);
+ }
+
+ /**
-+ * Returns the value of field 'value'.
+ *
-+ * @return the value of field 'Value'.
++ *
++ * @param index
++ * @param vClassMapping
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public java.lang.String getValue(
-+ ) {
-+ return this._value;
++ public void addClassMapping(
++ final int index,
++ final org.exolab.castor.mapping.xml.ClassMapping vClassMapping)
++ throws java.lang.IndexOutOfBoundsException {
++ this._classMappingList.add(index, vClassMapping);
+ }
+
+ /**
-+ * Method isValid.
+ *
-+ * @return true if this object is valid according to the schema
++ *
++ * @param vFieldHandlerDef
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public boolean isValid(
-+ ) {
-+ try {
-+ validate();
-+ } catch (org.exolab.castor.xml.ValidationException vex) {
-+ return false;
-+ }
-+ return true;
++ public void addFieldHandlerDef(
++ final org.exolab.castor.mapping.xml.FieldHandlerDef vFieldHandlerDef)
++ throws java.lang.IndexOutOfBoundsException {
++ this._fieldHandlerDefList.add(vFieldHandlerDef);
+ }
+
+ /**
+ *
+ *
-+ * @param out
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
++ * @param index
++ * @param vFieldHandlerDef
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public void marshal(
-+ final java.io.Writer out)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, out);
++ public void addFieldHandlerDef(
++ final int index,
++ final org.exolab.castor.mapping.xml.FieldHandlerDef vFieldHandlerDef)
++ throws java.lang.IndexOutOfBoundsException {
++ this._fieldHandlerDefList.add(index, vFieldHandlerDef);
+ }
+
+ /**
+ *
+ *
-+ * @param handler
-+ * @throws java.io.IOException if an IOException occurs during
-+ * marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
++ * @param vInclude
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public void marshal(
-+ final org.xml.sax.ContentHandler handler)
-+ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, handler);
++ public void addInclude(
++ final org.exolab.castor.mapping.xml.Include vInclude)
++ throws java.lang.IndexOutOfBoundsException {
++ this._includeList.add(vInclude);
+ }
+
+ /**
-+ * Sets the value of field 'name'.
+ *
-+ * @param name the value of field 'name'.
++ *
++ * @param index
++ * @param vInclude
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public void setName(
-+ final java.lang.String name) {
-+ this._name = name;
++ public void addInclude(
++ final int index,
++ final org.exolab.castor.mapping.xml.Include vInclude)
++ throws java.lang.IndexOutOfBoundsException {
++ this._includeList.add(index, vInclude);
+ }
+
+ /**
-+ * Sets the value of field 'value'.
+ *
-+ * @param value the value of field 'value'.
++ *
++ * @param vKeyGeneratorDef
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public void setValue(
-+ final java.lang.String value) {
-+ this._value = value;
++ public void addKeyGeneratorDef(
++ final org.exolab.castor.mapping.xml.KeyGeneratorDef vKeyGeneratorDef)
++ throws java.lang.IndexOutOfBoundsException {
++ this._keyGeneratorDefList.add(vKeyGeneratorDef);
+ }
+
+ /**
-+ * Method unmarshal.
+ *
-+ * @param reader
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled
-+ * org.exolab.castor.mapping.xml.QueryHint
++ *
++ * @param index
++ * @param vKeyGeneratorDef
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public static org.exolab.castor.mapping.xml.QueryHint unmarshal(
-+ final java.io.Reader reader)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.exolab.castor.mapping.xml.QueryHint) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.QueryHint.class, reader);
++ public void addKeyGeneratorDef(
++ final int index,
++ final org.exolab.castor.mapping.xml.KeyGeneratorDef vKeyGeneratorDef)
++ throws java.lang.IndexOutOfBoundsException {
++ this._keyGeneratorDefList.add(index, vKeyGeneratorDef);
+ }
+
+ /**
++ * Method enumerateClassMapping.
+ *
-+ *
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
++ * @return an Enumeration over all possible elements of this
++ * collection
+ */
-+ public void validate(
-+ )
-+ throws org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
-+ validator.validate(this);
++ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.ClassMapping> enumerateClassMapping(
++ ) {
++ return java.util.Collections.enumeration(this._classMappingList);
+ }
+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/ClassMapping.java
-@@ -0,0 +1,1036 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
-+
-+package org.exolab.castor.mapping.xml;
-+
-+/**
-+ * The 'class' element is used to store information about mapping
-+ * of a class.
-+ *
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+ at SuppressWarnings("serial")
-+public class ClassMapping implements java.io.Serializable {
-+
-+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
-+
+ /**
-+ * Specifies the fully qualified package name of the Java
-+ * object needed to be mapped.
-+ *
++ * Method enumerateFieldHandlerDef.
++ *
++ * @return an Enumeration over all possible elements of this
++ * collection
+ */
-+ private java.lang.String _name;
++ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.FieldHandlerDef> enumerateFieldHandlerDef(
++ ) {
++ return java.util.Collections.enumeration(this._fieldHandlerDefList);
++ }
+
+ /**
-+ * An optional attribute to specify the extension realtionship
-+ * between objects. Used only if mapping of the another object
++ * Method enumerateInclude.
+ *
-+ * is provided.
-+ *
++ * @return an Enumeration over all possible elements of this
++ * collection
+ */
-+ private java.lang.Object _extends;
++ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.Include> enumerateInclude(
++ ) {
++ return java.util.Collections.enumeration(this._includeList);
++ }
+
+ /**
-+ * An optional attribute to specify that one object depends on
-+ * another object.
-+ *
++ * Method enumerateKeyGeneratorDef.
++ *
++ * @return an Enumeration over all possible elements of this
++ * collection
+ */
-+ private java.lang.Object _depends;
++ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.KeyGeneratorDef> enumerateKeyGeneratorDef(
++ ) {
++ return java.util.Collections.enumeration(this._keyGeneratorDefList);
++ }
+
+ /**
-+ * An optional attribute for specifying the unique
-+ * identificator
-+ * of the object within the persistence storage.
-+ *
++ * Method getClassMapping.
++ *
++ * @param index
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ * @return the value of the
++ * org.exolab.castor.mapping.xml.ClassMapping at the given index
+ */
-+ private java.util.List<java.lang.String> _identity;
++ public org.exolab.castor.mapping.xml.ClassMapping getClassMapping(
++ final int index)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._classMappingList.size()) {
++ throw new IndexOutOfBoundsException("getClassMapping: Index value '" + index + "' not in range [0.." + (this._classMappingList.size() - 1) + "]");
++ }
+
-+ /**
-+ * Field _access.
-+ */
-+ private org.exolab.castor.mapping.xml.types.ClassMappingAccessType _access = org.exolab.castor.mapping.xml.types.ClassMappingAccessType.valueOf("shared");
++ return (org.exolab.castor.mapping.xml.ClassMapping) _classMappingList.get(index);
++ }
+
+ /**
-+ * Field _keyGenerator.
++ * Method getClassMapping.Returns the contents of the
++ * collection in an Array. <p>Note: Just in case the
++ * collection contents are changing in another thread, we pass
++ * a 0-length Array of the correct type into the API call.
++ * This way we <i>know</i> that the Array returned is of
++ * exactly the correct length.
++ *
++ * @return this collection as an Array
+ */
-+ private java.lang.String _keyGenerator;
++ public org.exolab.castor.mapping.xml.ClassMapping[] getClassMapping(
++ ) {
++ org.exolab.castor.mapping.xml.ClassMapping[] array = new org.exolab.castor.mapping.xml.ClassMapping[0];
++ return (org.exolab.castor.mapping.xml.ClassMapping[]) this._classMappingList.toArray(array);
++ }
+
+ /**
-+ * Field _autoComplete.
++ * Method getClassMappingCount.
++ *
++ * @return the size of this collection
+ */
-+ private boolean _autoComplete = false;
++ public int getClassMappingCount(
++ ) {
++ return this._classMappingList.size();
++ }
+
+ /**
-+ * keeps track of state for field: _autoComplete
++ * Returns the value of field 'description'.
++ *
++ * @return the value of field 'Description'.
+ */
-+ private boolean _has_autoComplete;
++ public java.lang.String getDescription(
++ ) {
++ return this._description;
++ }
+
+ /**
-+ * Field _verifyConstructable.
++ * Method getFieldHandlerDef.
++ *
++ * @param index
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ * @return the value of the
++ * org.exolab.castor.mapping.xml.FieldHandlerDef at the given
++ * index
+ */
-+ private boolean _verifyConstructable = true;
++ public org.exolab.castor.mapping.xml.FieldHandlerDef getFieldHandlerDef(
++ final int index)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._fieldHandlerDefList.size()) {
++ throw new IndexOutOfBoundsException("getFieldHandlerDef: Index value '" + index + "' not in range [0.." + (this._fieldHandlerDefList.size() - 1) + "]");
++ }
+
-+ /**
-+ * keeps track of state for field: _verifyConstructable
-+ */
-+ private boolean _has_verifyConstructable;
++ return (org.exolab.castor.mapping.xml.FieldHandlerDef) _fieldHandlerDefList.get(index);
++ }
+
+ /**
-+ * Field _version.
++ * Method getFieldHandlerDef.Returns the contents of the
++ * collection in an Array. <p>Note: Just in case the
++ * collection contents are changing in another thread, we pass
++ * a 0-length Array of the correct type into the API call.
++ * This way we <i>know</i> that the Array returned is of
++ * exactly the correct length.
++ *
++ * @return this collection as an Array
+ */
-+ private java.lang.String _version;
++ public org.exolab.castor.mapping.xml.FieldHandlerDef[] getFieldHandlerDef(
++ ) {
++ org.exolab.castor.mapping.xml.FieldHandlerDef[] array = new org.exolab.castor.mapping.xml.FieldHandlerDef[0];
++ return (org.exolab.castor.mapping.xml.FieldHandlerDef[]) this._fieldHandlerDefList.toArray(array);
++ }
+
+ /**
-+ * Field _description.
++ * Method getFieldHandlerDefCount.
++ *
++ * @return the size of this collection
+ */
-+ private java.lang.String _description;
++ public int getFieldHandlerDefCount(
++ ) {
++ return this._fieldHandlerDefList.size();
++ }
+
+ /**
-+ * Field _cacheTypeMapping.
++ * Method getInclude.
++ *
++ * @param index
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ * @return the value of the
++ * org.exolab.castor.mapping.xml.Include at the given index
+ */
-+ private org.exolab.castor.mapping.xml.CacheTypeMapping _cacheTypeMapping;
-+
-+ /**
-+ * The 'map-to' element is used for specifying the name of the
-+ * item
-+ * that should be associated with the given Java object.
-+ *
-+ */
-+ private org.exolab.castor.mapping.xml.MapTo _mapTo;
-+
-+ /**
-+ * Field _namedQueryList.
-+ */
-+ private java.util.List<org.exolab.castor.mapping.xml.NamedQuery> _namedQueryList;
-+
-+ /**
-+ * Field _namedNativeQueryList.
-+ */
-+ private java.util.List<org.exolab.castor.mapping.xml.NamedNativeQuery> _namedNativeQueryList;
-+
-+ /**
-+ * Field _classChoice.
-+ */
-+ private org.exolab.castor.mapping.xml.ClassChoice _classChoice;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
++ public org.exolab.castor.mapping.xml.Include getInclude(
++ final int index)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._includeList.size()) {
++ throw new IndexOutOfBoundsException("getInclude: Index value '" + index + "' not in range [0.." + (this._includeList.size() - 1) + "]");
++ }
+
-+ public ClassMapping() {
-+ super();
-+ this._identity = new java.util.ArrayList<java.lang.String>();
-+ setAccess(org.exolab.castor.mapping.xml.types.ClassMappingAccessType.valueOf("shared"));
-+ this._namedQueryList = new java.util.ArrayList<org.exolab.castor.mapping.xml.NamedQuery>();
-+ this._namedNativeQueryList = new java.util.ArrayList<org.exolab.castor.mapping.xml.NamedNativeQuery>();
++ return (org.exolab.castor.mapping.xml.Include) _includeList.get(index);
+ }
+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
-+
+ /**
++ * Method getInclude.Returns the contents of the collection in
++ * an Array. <p>Note: Just in case the collection contents
++ * are changing in another thread, we pass a 0-length Array of
++ * the correct type into the API call. This way we <i>know</i>
++ * that the Array returned is of exactly the correct length.
+ *
-+ *
-+ * @param vIdentity
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @return this collection as an Array
+ */
-+ public void addIdentity(
-+ final java.lang.String vIdentity)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._identity.add(vIdentity);
++ public org.exolab.castor.mapping.xml.Include[] getInclude(
++ ) {
++ org.exolab.castor.mapping.xml.Include[] array = new org.exolab.castor.mapping.xml.Include[0];
++ return (org.exolab.castor.mapping.xml.Include[]) this._includeList.toArray(array);
+ }
+
+ /**
++ * Method getIncludeCount.
+ *
-+ *
-+ * @param index
-+ * @param vIdentity
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @return the size of this collection
+ */
-+ public void addIdentity(
-+ final int index,
-+ final java.lang.String vIdentity)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._identity.add(index, vIdentity);
++ public int getIncludeCount(
++ ) {
++ return this._includeList.size();
+ }
+
+ /**
++ * Method getKeyGeneratorDef.
+ *
-+ *
-+ * @param vNamedNativeQuery
++ * @param index
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
++ * @return the value of the
++ * org.exolab.castor.mapping.xml.KeyGeneratorDef at the given
++ * index
+ */
-+ public void addNamedNativeQuery(
-+ final org.exolab.castor.mapping.xml.NamedNativeQuery vNamedNativeQuery)
++ public org.exolab.castor.mapping.xml.KeyGeneratorDef getKeyGeneratorDef(
++ final int index)
+ throws java.lang.IndexOutOfBoundsException {
-+ this._namedNativeQueryList.add(vNamedNativeQuery);
++ // check bounds for index
++ if (index < 0 || index >= this._keyGeneratorDefList.size()) {
++ throw new IndexOutOfBoundsException("getKeyGeneratorDef: Index value '" + index + "' not in range [0.." + (this._keyGeneratorDefList.size() - 1) + "]");
++ }
++
++ return (org.exolab.castor.mapping.xml.KeyGeneratorDef) _keyGeneratorDefList.get(index);
+ }
+
+ /**
++ * Method getKeyGeneratorDef.Returns the contents of the
++ * collection in an Array. <p>Note: Just in case the
++ * collection contents are changing in another thread, we pass
++ * a 0-length Array of the correct type into the API call.
++ * This way we <i>know</i> that the Array returned is of
++ * exactly the correct length.
+ *
-+ *
-+ * @param index
-+ * @param vNamedNativeQuery
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @return this collection as an Array
+ */
-+ public void addNamedNativeQuery(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.NamedNativeQuery vNamedNativeQuery)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._namedNativeQueryList.add(index, vNamedNativeQuery);
++ public org.exolab.castor.mapping.xml.KeyGeneratorDef[] getKeyGeneratorDef(
++ ) {
++ org.exolab.castor.mapping.xml.KeyGeneratorDef[] array = new org.exolab.castor.mapping.xml.KeyGeneratorDef[0];
++ return (org.exolab.castor.mapping.xml.KeyGeneratorDef[]) this._keyGeneratorDefList.toArray(array);
+ }
+
+ /**
++ * Method getKeyGeneratorDefCount.
+ *
-+ *
-+ * @param vNamedQuery
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @return the size of this collection
+ */
-+ public void addNamedQuery(
-+ final org.exolab.castor.mapping.xml.NamedQuery vNamedQuery)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._namedQueryList.add(vNamedQuery);
++ public int getKeyGeneratorDefCount(
++ ) {
++ return this._keyGeneratorDefList.size();
+ }
+
+ /**
++ * Method isValid.
+ *
-+ *
-+ * @param index
-+ * @param vNamedQuery
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @return true if this object is valid according to the schema
+ */
-+ public void addNamedQuery(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.NamedQuery vNamedQuery)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._namedQueryList.add(index, vNamedQuery);
++ public boolean isValid(
++ ) {
++ try {
++ validate();
++ } catch (org.exolab.castor.xml.ValidationException vex) {
++ return false;
++ }
++ return true;
+ }
+
+ /**
++ * Method iterateClassMapping.
++ *
++ * @return an Iterator over all possible elements in this
++ * collection
+ */
-+ public void deleteAutoComplete(
++ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.ClassMapping> iterateClassMapping(
+ ) {
-+ this._has_autoComplete= false;
++ return this._classMappingList.iterator();
+ }
+
+ /**
++ * Method iterateFieldHandlerDef.
++ *
++ * @return an Iterator over all possible elements in this
++ * collection
+ */
-+ public void deleteVerifyConstructable(
++ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.FieldHandlerDef> iterateFieldHandlerDef(
+ ) {
-+ this._has_verifyConstructable= false;
++ return this._fieldHandlerDefList.iterator();
+ }
+
+ /**
-+ * Method enumerateIdentity.
++ * Method iterateInclude.
+ *
-+ * @return an Enumeration over all possible elements of this
++ * @return an Iterator over all possible elements in this
+ * collection
+ */
-+ public java.util.Enumeration<? extends java.lang.String> enumerateIdentity(
++ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.Include> iterateInclude(
+ ) {
-+ return java.util.Collections.enumeration(this._identity);
++ return this._includeList.iterator();
+ }
+
+ /**
-+ * Method enumerateNamedNativeQuery.
++ * Method iterateKeyGeneratorDef.
+ *
-+ * @return an Enumeration over all possible elements of this
++ * @return an Iterator over all possible elements in this
+ * collection
+ */
-+ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.NamedNativeQuery> enumerateNamedNativeQuery(
++ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.KeyGeneratorDef> iterateKeyGeneratorDef(
+ ) {
-+ return java.util.Collections.enumeration(this._namedNativeQueryList);
++ return this._keyGeneratorDefList.iterator();
+ }
+
+ /**
-+ * Method enumerateNamedQuery.
+ *
-+ * @return an Enumeration over all possible elements of this
-+ * collection
++ *
++ * @param out
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
+ */
-+ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.NamedQuery> enumerateNamedQuery(
-+ ) {
-+ return java.util.Collections.enumeration(this._namedQueryList);
++ public void marshal(
++ final java.io.Writer out)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, out);
+ }
+
+ /**
-+ * Returns the value of field 'access'.
+ *
-+ * @return the value of field 'Access'.
++ *
++ * @param handler
++ * @throws java.io.IOException if an IOException occurs during
++ * marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
+ */
-+ public org.exolab.castor.mapping.xml.types.ClassMappingAccessType getAccess(
-+ ) {
-+ return this._access;
++ public void marshal(
++ final org.xml.sax.ContentHandler handler)
++ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, handler);
+ }
+
+ /**
-+ * Returns the value of field 'autoComplete'.
-+ *
-+ * @return the value of field 'AutoComplete'.
+ */
-+ public boolean getAutoComplete(
++ public void removeAllClassMapping(
+ ) {
-+ return this._autoComplete;
++ this._classMappingList.clear();
+ }
+
+ /**
-+ * Returns the value of field 'cacheTypeMapping'.
-+ *
-+ * @return the value of field 'CacheTypeMapping'.
+ */
-+ public org.exolab.castor.mapping.xml.CacheTypeMapping getCacheTypeMapping(
++ public void removeAllFieldHandlerDef(
+ ) {
-+ return this._cacheTypeMapping;
++ this._fieldHandlerDefList.clear();
+ }
+
+ /**
-+ * Returns the value of field 'classChoice'.
-+ *
-+ * @return the value of field 'ClassChoice'.
+ */
-+ public org.exolab.castor.mapping.xml.ClassChoice getClassChoice(
++ public void removeAllInclude(
+ ) {
-+ return this._classChoice;
++ this._includeList.clear();
+ }
+
+ /**
-+ * Returns the value of field 'depends'. The field 'depends'
-+ * has the following description: An optional attribute to
-+ * specify that one object depends on
-+ * another object.
-+ *
-+ *
-+ * @return the value of field 'Depends'.
+ */
-+ public java.lang.Object getDepends(
++ public void removeAllKeyGeneratorDef(
+ ) {
-+ return this._depends;
++ this._keyGeneratorDefList.clear();
+ }
+
+ /**
-+ * Returns the value of field 'description'.
++ * Method removeClassMapping.
+ *
-+ * @return the value of field 'Description'.
++ * @param vClassMapping
++ * @return true if the object was removed from the collection.
+ */
-+ public java.lang.String getDescription(
-+ ) {
-+ return this._description;
++ public boolean removeClassMapping(
++ final org.exolab.castor.mapping.xml.ClassMapping vClassMapping) {
++ boolean removed = _classMappingList.remove(vClassMapping);
++ return removed;
+ }
+
+ /**
-+ * Returns the value of field 'extends'. The field 'extends'
-+ * has the following description: An optional attribute to
-+ * specify the extension realtionship
-+ * between objects. Used only if mapping of the another object
-+ *
-+ * is provided.
-+ *
++ * Method removeClassMappingAt.
+ *
-+ * @return the value of field 'Extends'.
++ * @param index
++ * @return the element removed from the collection
+ */
-+ public java.lang.Object getExtends(
-+ ) {
-+ return this._extends;
++ public org.exolab.castor.mapping.xml.ClassMapping removeClassMappingAt(
++ final int index) {
++ java.lang.Object obj = this._classMappingList.remove(index);
++ return (org.exolab.castor.mapping.xml.ClassMapping) obj;
+ }
+
+ /**
-+ * Method getIdentity.
++ * Method removeFieldHandlerDef.
+ *
-+ * @param index
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
-+ * @return the value of the java.lang.String at the given index
++ * @param vFieldHandlerDef
++ * @return true if the object was removed from the collection.
+ */
-+ public java.lang.String getIdentity(
-+ final int index)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._identity.size()) {
-+ throw new IndexOutOfBoundsException("getIdentity: Index value '" + index + "' not in range [0.." + (this._identity.size() - 1) + "]");
-+ }
-+
-+ return (java.lang.String) _identity.get(index);
++ public boolean removeFieldHandlerDef(
++ final org.exolab.castor.mapping.xml.FieldHandlerDef vFieldHandlerDef) {
++ boolean removed = _fieldHandlerDefList.remove(vFieldHandlerDef);
++ return removed;
+ }
+
+ /**
-+ * Method getIdentity.Returns the contents of the collection in
-+ * an Array. <p>Note: Just in case the collection contents
-+ * are changing in another thread, we pass a 0-length Array of
-+ * the correct type into the API call. This way we <i>know</i>
-+ * that the Array returned is of exactly the correct length.
++ * Method removeFieldHandlerDefAt.
+ *
-+ * @return this collection as an Array
++ * @param index
++ * @return the element removed from the collection
+ */
-+ public java.lang.String[] getIdentity(
-+ ) {
-+ java.lang.String[] array = new java.lang.String[0];
-+ return (java.lang.String[]) this._identity.toArray(array);
++ public org.exolab.castor.mapping.xml.FieldHandlerDef removeFieldHandlerDefAt(
++ final int index) {
++ java.lang.Object obj = this._fieldHandlerDefList.remove(index);
++ return (org.exolab.castor.mapping.xml.FieldHandlerDef) obj;
+ }
+
+ /**
-+ * Method getIdentityCount.
++ * Method removeInclude.
+ *
-+ * @return the size of this collection
++ * @param vInclude
++ * @return true if the object was removed from the collection.
+ */
-+ public int getIdentityCount(
-+ ) {
-+ return this._identity.size();
++ public boolean removeInclude(
++ final org.exolab.castor.mapping.xml.Include vInclude) {
++ boolean removed = _includeList.remove(vInclude);
++ return removed;
+ }
+
+ /**
-+ * Returns the value of field 'keyGenerator'.
++ * Method removeIncludeAt.
+ *
-+ * @return the value of field 'KeyGenerator'.
++ * @param index
++ * @return the element removed from the collection
+ */
-+ public java.lang.String getKeyGenerator(
-+ ) {
-+ return this._keyGenerator;
++ public org.exolab.castor.mapping.xml.Include removeIncludeAt(
++ final int index) {
++ java.lang.Object obj = this._includeList.remove(index);
++ return (org.exolab.castor.mapping.xml.Include) obj;
+ }
+
+ /**
-+ * Returns the value of field 'mapTo'. The field 'mapTo' has
-+ * the following description: The 'map-to' element is used for
-+ * specifying the name of the item
-+ * that should be associated with the given Java object.
-+ *
++ * Method removeKeyGeneratorDef.
+ *
-+ * @return the value of field 'MapTo'.
++ * @param vKeyGeneratorDef
++ * @return true if the object was removed from the collection.
+ */
-+ public org.exolab.castor.mapping.xml.MapTo getMapTo(
-+ ) {
-+ return this._mapTo;
++ public boolean removeKeyGeneratorDef(
++ final org.exolab.castor.mapping.xml.KeyGeneratorDef vKeyGeneratorDef) {
++ boolean removed = _keyGeneratorDefList.remove(vKeyGeneratorDef);
++ return removed;
+ }
+
+ /**
-+ * Returns the value of field 'name'. The field 'name' has the
-+ * following description: Specifies the fully qualified package
-+ * name of the Java object needed to be mapped.
-+ *
++ * Method removeKeyGeneratorDefAt.
+ *
-+ * @return the value of field 'Name'.
++ * @param index
++ * @return the element removed from the collection
+ */
-+ public java.lang.String getName(
-+ ) {
-+ return this._name;
++ public org.exolab.castor.mapping.xml.KeyGeneratorDef removeKeyGeneratorDefAt(
++ final int index) {
++ java.lang.Object obj = this._keyGeneratorDefList.remove(index);
++ return (org.exolab.castor.mapping.xml.KeyGeneratorDef) obj;
+ }
+
+ /**
-+ * Method getNamedNativeQuery.
++ *
+ *
+ * @param index
++ * @param vClassMapping
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
-+ * @return the value of the
-+ * org.exolab.castor.mapping.xml.NamedNativeQuery at the given
-+ * index
+ */
-+ public org.exolab.castor.mapping.xml.NamedNativeQuery getNamedNativeQuery(
-+ final int index)
++ public void setClassMapping(
++ final int index,
++ final org.exolab.castor.mapping.xml.ClassMapping vClassMapping)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
-+ if (index < 0 || index >= this._namedNativeQueryList.size()) {
-+ throw new IndexOutOfBoundsException("getNamedNativeQuery: Index value '" + index + "' not in range [0.." + (this._namedNativeQueryList.size() - 1) + "]");
++ if (index < 0 || index >= this._classMappingList.size()) {
++ throw new IndexOutOfBoundsException("setClassMapping: Index value '" + index + "' not in range [0.." + (this._classMappingList.size() - 1) + "]");
+ }
+
-+ return (org.exolab.castor.mapping.xml.NamedNativeQuery) _namedNativeQueryList.get(index);
++ this._classMappingList.set(index, vClassMapping);
+ }
+
+ /**
-+ * Method getNamedNativeQuery.Returns the contents of the
-+ * collection in an Array. <p>Note: Just in case the
-+ * collection contents are changing in another thread, we pass
-+ * a 0-length Array of the correct type into the API call.
-+ * This way we <i>know</i> that the Array returned is of
-+ * exactly the correct length.
+ *
-+ * @return this collection as an Array
++ *
++ * @param vClassMappingArray
+ */
-+ public org.exolab.castor.mapping.xml.NamedNativeQuery[] getNamedNativeQuery(
-+ ) {
-+ org.exolab.castor.mapping.xml.NamedNativeQuery[] array = new org.exolab.castor.mapping.xml.NamedNativeQuery[0];
-+ return (org.exolab.castor.mapping.xml.NamedNativeQuery[]) this._namedNativeQueryList.toArray(array);
++ public void setClassMapping(
++ final org.exolab.castor.mapping.xml.ClassMapping[] vClassMappingArray) {
++ //-- copy array
++ _classMappingList.clear();
++
++ for (int i = 0; i < vClassMappingArray.length; i++) {
++ this._classMappingList.add(vClassMappingArray[i]);
++ }
+ }
+
+ /**
-+ * Method getNamedNativeQueryCount.
++ * Sets the value of field 'description'.
+ *
-+ * @return the size of this collection
++ * @param description the value of field 'description'.
+ */
-+ public int getNamedNativeQueryCount(
-+ ) {
-+ return this._namedNativeQueryList.size();
++ public void setDescription(
++ final java.lang.String description) {
++ this._description = description;
+ }
+
+ /**
-+ * Method getNamedQuery.
++ *
+ *
+ * @param index
++ * @param vFieldHandlerDef
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
-+ * @return the value of the
-+ * org.exolab.castor.mapping.xml.NamedQuery at the given index
+ */
-+ public org.exolab.castor.mapping.xml.NamedQuery getNamedQuery(
-+ final int index)
++ public void setFieldHandlerDef(
++ final int index,
++ final org.exolab.castor.mapping.xml.FieldHandlerDef vFieldHandlerDef)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
-+ if (index < 0 || index >= this._namedQueryList.size()) {
-+ throw new IndexOutOfBoundsException("getNamedQuery: Index value '" + index + "' not in range [0.." + (this._namedQueryList.size() - 1) + "]");
++ if (index < 0 || index >= this._fieldHandlerDefList.size()) {
++ throw new IndexOutOfBoundsException("setFieldHandlerDef: Index value '" + index + "' not in range [0.." + (this._fieldHandlerDefList.size() - 1) + "]");
+ }
+
-+ return (org.exolab.castor.mapping.xml.NamedQuery) _namedQueryList.get(index);
++ this._fieldHandlerDefList.set(index, vFieldHandlerDef);
+ }
+
+ /**
-+ * Method getNamedQuery.Returns the contents of the collection
-+ * in an Array. <p>Note: Just in case the collection contents
-+ * are changing in another thread, we pass a 0-length Array of
-+ * the correct type into the API call. This way we <i>know</i>
-+ * that the Array returned is of exactly the correct length.
+ *
-+ * @return this collection as an Array
++ *
++ * @param vFieldHandlerDefArray
+ */
-+ public org.exolab.castor.mapping.xml.NamedQuery[] getNamedQuery(
-+ ) {
-+ org.exolab.castor.mapping.xml.NamedQuery[] array = new org.exolab.castor.mapping.xml.NamedQuery[0];
-+ return (org.exolab.castor.mapping.xml.NamedQuery[]) this._namedQueryList.toArray(array);
++ public void setFieldHandlerDef(
++ final org.exolab.castor.mapping.xml.FieldHandlerDef[] vFieldHandlerDefArray) {
++ //-- copy array
++ _fieldHandlerDefList.clear();
++
++ for (int i = 0; i < vFieldHandlerDefArray.length; i++) {
++ this._fieldHandlerDefList.add(vFieldHandlerDefArray[i]);
++ }
+ }
+
+ /**
-+ * Method getNamedQueryCount.
+ *
-+ * @return the size of this collection
++ *
++ * @param index
++ * @param vInclude
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public int getNamedQueryCount(
-+ ) {
-+ return this._namedQueryList.size();
++ public void setInclude(
++ final int index,
++ final org.exolab.castor.mapping.xml.Include vInclude)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._includeList.size()) {
++ throw new IndexOutOfBoundsException("setInclude: Index value '" + index + "' not in range [0.." + (this._includeList.size() - 1) + "]");
++ }
++
++ this._includeList.set(index, vInclude);
+ }
+
+ /**
-+ * Returns the value of field 'verifyConstructable'.
+ *
-+ * @return the value of field 'VerifyConstructable'.
++ *
++ * @param vIncludeArray
+ */
-+ public boolean getVerifyConstructable(
-+ ) {
-+ return this._verifyConstructable;
++ public void setInclude(
++ final org.exolab.castor.mapping.xml.Include[] vIncludeArray) {
++ //-- copy array
++ _includeList.clear();
++
++ for (int i = 0; i < vIncludeArray.length; i++) {
++ this._includeList.add(vIncludeArray[i]);
++ }
+ }
+
+ /**
-+ * Returns the value of field 'version'.
+ *
-+ * @return the value of field 'Version'.
++ *
++ * @param index
++ * @param vKeyGeneratorDef
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public java.lang.String getVersion(
-+ ) {
-+ return this._version;
++ public void setKeyGeneratorDef(
++ final int index,
++ final org.exolab.castor.mapping.xml.KeyGeneratorDef vKeyGeneratorDef)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._keyGeneratorDefList.size()) {
++ throw new IndexOutOfBoundsException("setKeyGeneratorDef: Index value '" + index + "' not in range [0.." + (this._keyGeneratorDefList.size() - 1) + "]");
++ }
++
++ this._keyGeneratorDefList.set(index, vKeyGeneratorDef);
+ }
+
+ /**
-+ * Method hasAutoComplete.
+ *
-+ * @return true if at least one AutoComplete has been added
++ *
++ * @param vKeyGeneratorDefArray
+ */
-+ public boolean hasAutoComplete(
-+ ) {
-+ return this._has_autoComplete;
-+ }
++ public void setKeyGeneratorDef(
++ final org.exolab.castor.mapping.xml.KeyGeneratorDef[] vKeyGeneratorDefArray) {
++ //-- copy array
++ _keyGeneratorDefList.clear();
+
-+ /**
-+ * Method hasVerifyConstructable.
-+ *
-+ * @return true if at least one VerifyConstructable has been
-+ * added
-+ */
-+ public boolean hasVerifyConstructable(
-+ ) {
-+ return this._has_verifyConstructable;
++ for (int i = 0; i < vKeyGeneratorDefArray.length; i++) {
++ this._keyGeneratorDefList.add(vKeyGeneratorDefArray[i]);
++ }
+ }
+
+ /**
-+ * Returns the value of field 'autoComplete'.
++ * Method unmarshal.
+ *
-+ * @return the value of field 'AutoComplete'.
++ * @param reader
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @return the unmarshaled
++ * org.exolab.castor.mapping.xml.MappingRoot
+ */
-+ public boolean isAutoComplete(
-+ ) {
-+ return this._autoComplete;
++ public static org.exolab.castor.mapping.xml.MappingRoot unmarshal(
++ final java.io.Reader reader)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ return (org.exolab.castor.mapping.xml.MappingRoot) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.MappingRoot.class, reader);
+ }
+
+ /**
-+ * Method isValid.
+ *
-+ * @return true if this object is valid according to the schema
-+ */
-+ public boolean isValid(
-+ ) {
-+ try {
-+ validate();
-+ } catch (org.exolab.castor.xml.ValidationException vex) {
-+ return false;
-+ }
-+ return true;
-+ }
-+
-+ /**
-+ * Returns the value of field 'verifyConstructable'.
+ *
-+ * @return the value of field 'VerifyConstructable'.
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
+ */
-+ public boolean isVerifyConstructable(
-+ ) {
-+ return this._verifyConstructable;
++ public void validate(
++ )
++ throws org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
++ validator.validate(this);
+ }
+
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/Include.java
+@@ -0,0 +1,138 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.exolab.castor.mapping.xml;
++
++/**
++ * Class Include.
++ *
++ * @version $Revision$ $Date$
++ */
++ at SuppressWarnings("serial")
++public class Include implements java.io.Serializable {
++
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
+ /**
-+ * Method iterateIdentity.
-+ *
-+ * @return an Iterator over all possible elements in this
-+ * collection
++ * Field _href.
+ */
-+ public java.util.Iterator<? extends java.lang.String> iterateIdentity(
-+ ) {
-+ return this._identity.iterator();
++ private java.lang.String _href;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public Include() {
++ super();
+ }
+
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
+ /**
-+ * Method iterateNamedNativeQuery.
++ * Returns the value of field 'href'.
+ *
-+ * @return an Iterator over all possible elements in this
-+ * collection
++ * @return the value of field 'Href'.
+ */
-+ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.NamedNativeQuery> iterateNamedNativeQuery(
++ public java.lang.String getHref(
+ ) {
-+ return this._namedNativeQueryList.iterator();
++ return this._href;
+ }
+
+ /**
-+ * Method iterateNamedQuery.
++ * Method isValid.
+ *
-+ * @return an Iterator over all possible elements in this
-+ * collection
++ * @return true if this object is valid according to the schema
+ */
-+ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.NamedQuery> iterateNamedQuery(
++ public boolean isValid(
+ ) {
-+ return this._namedQueryList.iterator();
++ try {
++ validate();
++ } catch (org.exolab.castor.xml.ValidationException vex) {
++ return false;
++ }
++ return true;
+ }
+
+ /**
@@ -2301,342 +2414,537 @@ Last-Update: 2010-06-27
+ }
+
+ /**
++ * Sets the value of field 'href'.
++ *
++ * @param href the value of field 'href'.
+ */
-+ public void removeAllIdentity(
-+ ) {
-+ this._identity.clear();
++ public void setHref(
++ final java.lang.String href) {
++ this._href = href;
+ }
+
+ /**
++ * Method unmarshal.
++ *
++ * @param reader
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @return the unmarshaled org.exolab.castor.mapping.xml.Include
+ */
-+ public void removeAllNamedNativeQuery(
-+ ) {
-+ this._namedNativeQueryList.clear();
++ public static org.exolab.castor.mapping.xml.Include unmarshal(
++ final java.io.Reader reader)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ return (org.exolab.castor.mapping.xml.Include) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.Include.class, reader);
+ }
+
+ /**
++ *
++ *
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
+ */
-+ public void removeAllNamedQuery(
-+ ) {
-+ this._namedQueryList.clear();
++ public void validate(
++ )
++ throws org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
++ validator.validate(this);
+ }
+
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/Ldap.java
+@@ -0,0 +1,138 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.exolab.castor.mapping.xml;
++
++/**
++ * Class Ldap.
++ *
++ * @version $Revision$ $Date$
++ */
++ at SuppressWarnings("serial")
++public class Ldap implements java.io.Serializable {
++
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
+ /**
-+ * Method removeIdentity.
-+ *
-+ * @param vIdentity
-+ * @return true if the object was removed from the collection.
++ * Field _name.
+ */
-+ public boolean removeIdentity(
-+ final java.lang.String vIdentity) {
-+ boolean removed = _identity.remove(vIdentity);
-+ return removed;
++ private java.lang.String _name;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public Ldap() {
++ super();
+ }
+
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
+ /**
-+ * Method removeIdentityAt.
++ * Returns the value of field 'name'.
+ *
-+ * @param index
-+ * @return the element removed from the collection
++ * @return the value of field 'Name'.
+ */
-+ public java.lang.String removeIdentityAt(
-+ final int index) {
-+ java.lang.Object obj = this._identity.remove(index);
-+ return (java.lang.String) obj;
++ public java.lang.String getName(
++ ) {
++ return this._name;
+ }
+
+ /**
-+ * Method removeNamedNativeQuery.
++ * Method isValid.
+ *
-+ * @param vNamedNativeQuery
-+ * @return true if the object was removed from the collection.
++ * @return true if this object is valid according to the schema
+ */
-+ public boolean removeNamedNativeQuery(
-+ final org.exolab.castor.mapping.xml.NamedNativeQuery vNamedNativeQuery) {
-+ boolean removed = _namedNativeQueryList.remove(vNamedNativeQuery);
-+ return removed;
++ public boolean isValid(
++ ) {
++ try {
++ validate();
++ } catch (org.exolab.castor.xml.ValidationException vex) {
++ return false;
++ }
++ return true;
+ }
+
+ /**
-+ * Method removeNamedNativeQueryAt.
+ *
-+ * @param index
-+ * @return the element removed from the collection
++ *
++ * @param out
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
+ */
-+ public org.exolab.castor.mapping.xml.NamedNativeQuery removeNamedNativeQueryAt(
-+ final int index) {
-+ java.lang.Object obj = this._namedNativeQueryList.remove(index);
-+ return (org.exolab.castor.mapping.xml.NamedNativeQuery) obj;
++ public void marshal(
++ final java.io.Writer out)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, out);
+ }
+
+ /**
-+ * Method removeNamedQuery.
+ *
-+ * @param vNamedQuery
-+ * @return true if the object was removed from the collection.
++ *
++ * @param handler
++ * @throws java.io.IOException if an IOException occurs during
++ * marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
+ */
-+ public boolean removeNamedQuery(
-+ final org.exolab.castor.mapping.xml.NamedQuery vNamedQuery) {
-+ boolean removed = _namedQueryList.remove(vNamedQuery);
-+ return removed;
++ public void marshal(
++ final org.xml.sax.ContentHandler handler)
++ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, handler);
+ }
+
+ /**
-+ * Method removeNamedQueryAt.
++ * Sets the value of field 'name'.
+ *
-+ * @param index
-+ * @return the element removed from the collection
++ * @param name the value of field 'name'.
+ */
-+ public org.exolab.castor.mapping.xml.NamedQuery removeNamedQueryAt(
-+ final int index) {
-+ java.lang.Object obj = this._namedQueryList.remove(index);
-+ return (org.exolab.castor.mapping.xml.NamedQuery) obj;
++ public void setName(
++ final java.lang.String name) {
++ this._name = name;
+ }
+
+ /**
-+ * Sets the value of field 'access'.
++ * Method unmarshal.
+ *
-+ * @param access the value of field 'access'.
++ * @param reader
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @return the unmarshaled org.exolab.castor.mapping.xml.Ldap
+ */
-+ public void setAccess(
-+ final org.exolab.castor.mapping.xml.types.ClassMappingAccessType access) {
-+ this._access = access;
++ public static org.exolab.castor.mapping.xml.Ldap unmarshal(
++ final java.io.Reader reader)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ return (org.exolab.castor.mapping.xml.Ldap) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.Ldap.class, reader);
+ }
+
+ /**
-+ * Sets the value of field 'autoComplete'.
+ *
-+ * @param autoComplete the value of field 'autoComplete'.
++ *
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
+ */
-+ public void setAutoComplete(
-+ final boolean autoComplete) {
-+ this._autoComplete = autoComplete;
-+ this._has_autoComplete = true;
++ public void validate(
++ )
++ throws org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
++ validator.validate(this);
+ }
+
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/NamedNativeQuery.java
+@@ -0,0 +1,381 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.exolab.castor.mapping.xml;
++
++/**
++ * Class NamedNativeQuery.
++ *
++ * @version $Revision$ $Date$
++ */
++ at SuppressWarnings("serial")
++public class NamedNativeQuery implements java.io.Serializable {
++
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
+ /**
-+ * Sets the value of field 'cacheTypeMapping'.
-+ *
-+ * @param cacheTypeMapping the value of field 'cacheTypeMapping'
++ * Field _name.
+ */
-+ public void setCacheTypeMapping(
-+ final org.exolab.castor.mapping.xml.CacheTypeMapping cacheTypeMapping) {
-+ this._cacheTypeMapping = cacheTypeMapping;
-+ }
++ private java.lang.String _name;
+
+ /**
-+ * Sets the value of field 'classChoice'.
-+ *
-+ * @param classChoice the value of field 'classChoice'.
++ * Field _resultClass.
+ */
-+ public void setClassChoice(
-+ final org.exolab.castor.mapping.xml.ClassChoice classChoice) {
-+ this._classChoice = classChoice;
-+ }
++ private java.lang.String _resultClass;
+
+ /**
-+ * Sets the value of field 'depends'. The field 'depends' has
-+ * the following description: An optional attribute to specify
-+ * that one object depends on
-+ * another object.
-+ *
-+ *
-+ * @param depends the value of field 'depends'.
++ * Field _resultSetMapping.
+ */
-+ public void setDepends(
-+ final java.lang.Object depends) {
-+ this._depends = depends;
-+ }
++ private java.lang.String _resultSetMapping;
+
+ /**
-+ * Sets the value of field 'description'.
-+ *
-+ * @param description the value of field 'description'.
++ * Field _query.
+ */
-+ public void setDescription(
-+ final java.lang.String description) {
-+ this._description = description;
-+ }
++ private java.lang.String _query;
+
+ /**
-+ * Sets the value of field 'extends'. The field 'extends' has
-+ * the following description: An optional attribute to specify
-+ * the extension realtionship
-+ * between objects. Used only if mapping of the another object
-+ *
-+ * is provided.
-+ *
-+ *
-+ * @param _extends
-+ * @param extends the value of field 'extends'.
++ * Field _queryHintList.
+ */
-+ public void setExtends(
-+ final java.lang.Object _extends) {
-+ this._extends = _extends;
++ private java.util.List<org.exolab.castor.mapping.xml.QueryHint> _queryHintList;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public NamedNativeQuery() {
++ super();
++ this._queryHintList = new java.util.ArrayList<org.exolab.castor.mapping.xml.QueryHint>();
+ }
+
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
+ /**
+ *
+ *
-+ * @param index
-+ * @param vIdentity
++ * @param vQueryHint
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
-+ public void setIdentity(
-+ final int index,
-+ final java.lang.String vIdentity)
++ public void addQueryHint(
++ final org.exolab.castor.mapping.xml.QueryHint vQueryHint)
+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._identity.size()) {
-+ throw new IndexOutOfBoundsException("setIdentity: Index value '" + index + "' not in range [0.." + (this._identity.size() - 1) + "]");
-+ }
-+
-+ this._identity.set(index, vIdentity);
++ this._queryHintList.add(vQueryHint);
+ }
+
+ /**
+ *
+ *
-+ * @param vIdentityArray
++ * @param index
++ * @param vQueryHint
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public void setIdentity(
-+ final java.lang.String[] vIdentityArray) {
-+ //-- copy array
-+ _identity.clear();
-+
-+ for (int i = 0; i < vIdentityArray.length; i++) {
-+ this._identity.add(vIdentityArray[i]);
-+ }
++ public void addQueryHint(
++ final int index,
++ final org.exolab.castor.mapping.xml.QueryHint vQueryHint)
++ throws java.lang.IndexOutOfBoundsException {
++ this._queryHintList.add(index, vQueryHint);
+ }
+
+ /**
-+ * Sets the value of field 'keyGenerator'.
++ * Method enumerateQueryHint.
+ *
-+ * @param keyGenerator the value of field 'keyGenerator'.
++ * @return an Enumeration over all possible elements of this
++ * collection
+ */
-+ public void setKeyGenerator(
-+ final java.lang.String keyGenerator) {
-+ this._keyGenerator = keyGenerator;
++ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.QueryHint> enumerateQueryHint(
++ ) {
++ return java.util.Collections.enumeration(this._queryHintList);
+ }
+
+ /**
-+ * Sets the value of field 'mapTo'. The field 'mapTo' has the
-+ * following description: The 'map-to' element is used for
-+ * specifying the name of the item
-+ * that should be associated with the given Java object.
-+ *
++ * Returns the value of field 'name'.
+ *
-+ * @param mapTo the value of field 'mapTo'.
++ * @return the value of field 'Name'.
+ */
-+ public void setMapTo(
-+ final org.exolab.castor.mapping.xml.MapTo mapTo) {
-+ this._mapTo = mapTo;
++ public java.lang.String getName(
++ ) {
++ return this._name;
+ }
+
+ /**
-+ * Sets the value of field 'name'. The field 'name' has the
-+ * following description: Specifies the fully qualified package
-+ * name of the Java object needed to be mapped.
-+ *
++ * Returns the value of field 'query'.
+ *
-+ * @param name the value of field 'name'.
++ * @return the value of field 'Query'.
+ */
-+ public void setName(
-+ final java.lang.String name) {
-+ this._name = name;
++ public java.lang.String getQuery(
++ ) {
++ return this._query;
+ }
+
+ /**
-+ *
++ * Method getQueryHint.
+ *
+ * @param index
-+ * @param vNamedNativeQuery
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
++ * @return the value of the
++ * org.exolab.castor.mapping.xml.QueryHint at the given index
+ */
-+ public void setNamedNativeQuery(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.NamedNativeQuery vNamedNativeQuery)
++ public org.exolab.castor.mapping.xml.QueryHint getQueryHint(
++ final int index)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
-+ if (index < 0 || index >= this._namedNativeQueryList.size()) {
-+ throw new IndexOutOfBoundsException("setNamedNativeQuery: Index value '" + index + "' not in range [0.." + (this._namedNativeQueryList.size() - 1) + "]");
++ if (index < 0 || index >= this._queryHintList.size()) {
++ throw new IndexOutOfBoundsException("getQueryHint: Index value '" + index + "' not in range [0.." + (this._queryHintList.size() - 1) + "]");
+ }
+
-+ this._namedNativeQueryList.set(index, vNamedNativeQuery);
++ return (org.exolab.castor.mapping.xml.QueryHint) _queryHintList.get(index);
+ }
+
+ /**
++ * Method getQueryHint.Returns the contents of the collection
++ * in an Array. <p>Note: Just in case the collection contents
++ * are changing in another thread, we pass a 0-length Array of
++ * the correct type into the API call. This way we <i>know</i>
++ * that the Array returned is of exactly the correct length.
+ *
-+ *
-+ * @param vNamedNativeQueryArray
++ * @return this collection as an Array
+ */
-+ public void setNamedNativeQuery(
-+ final org.exolab.castor.mapping.xml.NamedNativeQuery[] vNamedNativeQueryArray) {
-+ //-- copy array
-+ _namedNativeQueryList.clear();
++ public org.exolab.castor.mapping.xml.QueryHint[] getQueryHint(
++ ) {
++ org.exolab.castor.mapping.xml.QueryHint[] array = new org.exolab.castor.mapping.xml.QueryHint[0];
++ return (org.exolab.castor.mapping.xml.QueryHint[]) this._queryHintList.toArray(array);
++ }
+
-+ for (int i = 0; i < vNamedNativeQueryArray.length; i++) {
-+ this._namedNativeQueryList.add(vNamedNativeQueryArray[i]);
++ /**
++ * Method getQueryHintCount.
++ *
++ * @return the size of this collection
++ */
++ public int getQueryHintCount(
++ ) {
++ return this._queryHintList.size();
++ }
++
++ /**
++ * Returns the value of field 'resultClass'.
++ *
++ * @return the value of field 'ResultClass'.
++ */
++ public java.lang.String getResultClass(
++ ) {
++ return this._resultClass;
++ }
++
++ /**
++ * Returns the value of field 'resultSetMapping'.
++ *
++ * @return the value of field 'ResultSetMapping'.
++ */
++ public java.lang.String getResultSetMapping(
++ ) {
++ return this._resultSetMapping;
++ }
++
++ /**
++ * Method isValid.
++ *
++ * @return true if this object is valid according to the schema
++ */
++ public boolean isValid(
++ ) {
++ try {
++ validate();
++ } catch (org.exolab.castor.xml.ValidationException vex) {
++ return false;
+ }
++ return true;
++ }
++
++ /**
++ * Method iterateQueryHint.
++ *
++ * @return an Iterator over all possible elements in this
++ * collection
++ */
++ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.QueryHint> iterateQueryHint(
++ ) {
++ return this._queryHintList.iterator();
++ }
++
++ /**
++ *
++ *
++ * @param out
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ */
++ public void marshal(
++ final java.io.Writer out)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, out);
++ }
++
++ /**
++ *
++ *
++ * @param handler
++ * @throws java.io.IOException if an IOException occurs during
++ * marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ */
++ public void marshal(
++ final org.xml.sax.ContentHandler handler)
++ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, handler);
++ }
++
++ /**
++ */
++ public void removeAllQueryHint(
++ ) {
++ this._queryHintList.clear();
+ }
+
+ /**
++ * Method removeQueryHint.
+ *
++ * @param vQueryHint
++ * @return true if the object was removed from the collection.
++ */
++ public boolean removeQueryHint(
++ final org.exolab.castor.mapping.xml.QueryHint vQueryHint) {
++ boolean removed = _queryHintList.remove(vQueryHint);
++ return removed;
++ }
++
++ /**
++ * Method removeQueryHintAt.
+ *
+ * @param index
-+ * @param vNamedQuery
++ * @return the element removed from the collection
++ */
++ public org.exolab.castor.mapping.xml.QueryHint removeQueryHintAt(
++ final int index) {
++ java.lang.Object obj = this._queryHintList.remove(index);
++ return (org.exolab.castor.mapping.xml.QueryHint) obj;
++ }
++
++ /**
++ * Sets the value of field 'name'.
++ *
++ * @param name the value of field 'name'.
++ */
++ public void setName(
++ final java.lang.String name) {
++ this._name = name;
++ }
++
++ /**
++ * Sets the value of field 'query'.
++ *
++ * @param query the value of field 'query'.
++ */
++ public void setQuery(
++ final java.lang.String query) {
++ this._query = query;
++ }
++
++ /**
++ *
++ *
++ * @param index
++ * @param vQueryHint
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
-+ public void setNamedQuery(
++ public void setQueryHint(
+ final int index,
-+ final org.exolab.castor.mapping.xml.NamedQuery vNamedQuery)
++ final org.exolab.castor.mapping.xml.QueryHint vQueryHint)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
-+ if (index < 0 || index >= this._namedQueryList.size()) {
-+ throw new IndexOutOfBoundsException("setNamedQuery: Index value '" + index + "' not in range [0.." + (this._namedQueryList.size() - 1) + "]");
++ if (index < 0 || index >= this._queryHintList.size()) {
++ throw new IndexOutOfBoundsException("setQueryHint: Index value '" + index + "' not in range [0.." + (this._queryHintList.size() - 1) + "]");
+ }
+
-+ this._namedQueryList.set(index, vNamedQuery);
++ this._queryHintList.set(index, vQueryHint);
+ }
+
+ /**
+ *
+ *
-+ * @param vNamedQueryArray
++ * @param vQueryHintArray
+ */
-+ public void setNamedQuery(
-+ final org.exolab.castor.mapping.xml.NamedQuery[] vNamedQueryArray) {
++ public void setQueryHint(
++ final org.exolab.castor.mapping.xml.QueryHint[] vQueryHintArray) {
+ //-- copy array
-+ _namedQueryList.clear();
++ _queryHintList.clear();
+
-+ for (int i = 0; i < vNamedQueryArray.length; i++) {
-+ this._namedQueryList.add(vNamedQueryArray[i]);
++ for (int i = 0; i < vQueryHintArray.length; i++) {
++ this._queryHintList.add(vQueryHintArray[i]);
+ }
+ }
+
+ /**
-+ * Sets the value of field 'verifyConstructable'.
++ * Sets the value of field 'resultClass'.
+ *
-+ * @param verifyConstructable the value of field
-+ * 'verifyConstructable'.
++ * @param resultClass the value of field 'resultClass'.
+ */
-+ public void setVerifyConstructable(
-+ final boolean verifyConstructable) {
-+ this._verifyConstructable = verifyConstructable;
-+ this._has_verifyConstructable = true;
++ public void setResultClass(
++ final java.lang.String resultClass) {
++ this._resultClass = resultClass;
+ }
+
+ /**
-+ * Sets the value of field 'version'.
++ * Sets the value of field 'resultSetMapping'.
+ *
-+ * @param version the value of field 'version'.
++ * @param resultSetMapping the value of field 'resultSetMapping'
+ */
-+ public void setVersion(
-+ final java.lang.String version) {
-+ this._version = version;
++ public void setResultSetMapping(
++ final java.lang.String resultSetMapping) {
++ this._resultSetMapping = resultSetMapping;
+ }
+
+ /**
@@ -2648,12 +2956,12 @@ Last-Update: 2010-06-27
+ * @throws org.exolab.castor.xml.ValidationException if this
+ * object is an invalid instance according to the schema
+ * @return the unmarshaled
-+ * org.exolab.castor.mapping.xml.ClassMapping
++ * org.exolab.castor.mapping.xml.NamedNativeQuery
+ */
-+ public static org.exolab.castor.mapping.xml.ClassMapping unmarshal(
++ public static org.exolab.castor.mapping.xml.NamedNativeQuery unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.exolab.castor.mapping.xml.ClassMapping) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.ClassMapping.class, reader);
++ return (org.exolab.castor.mapping.xml.NamedNativeQuery) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.NamedNativeQuery.class, reader);
+ }
+
+ /**
@@ -2671,11 +2979,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/KeyGeneratorDef.java
-@@ -0,0 +1,331 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/FieldMapping.java
+@@ -0,0 +1,930 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -2683,12 +2991,14 @@ Last-Update: 2010-06-27
+package org.exolab.castor.mapping.xml;
+
+/**
-+ * Class KeyGeneratorDef.
++ * The 'field' element is used to describe the property of a Java
++ * object.
++ *
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class KeyGeneratorDef implements java.io.Serializable {
++public class FieldMapping implements java.io.Serializable {
+
+
+ //--------------------------/
@@ -2696,1049 +3006,800 @@ Last-Update: 2010-06-27
+ //--------------------------/
+
+ /**
-+ * Field _name.
++ * A required attribute used to identify the name of the
++ * property.
++ *
+ */
+ private java.lang.String _name;
+
+ /**
-+ * Field _alias.
++ * An optional attribute used to identify the type of the
++ * property.
++ *
+ */
-+ private java.lang.String _alias;
++ private java.lang.String _type;
+
+ /**
-+ * Field _paramList.
++ * Field _required.
+ */
-+ private java.util.List<org.exolab.castor.mapping.xml.Param> _paramList;
-+
++ private boolean _required = false;
+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
++ /**
++ * keeps track of state for field: _required
++ */
++ private boolean _has_required;
+
-+ public KeyGeneratorDef() {
-+ super();
-+ this._paramList = new java.util.ArrayList<org.exolab.castor.mapping.xml.Param>();
-+ }
++ /**
++ * Field _transient.
++ */
++ private boolean _transient = false;
+
++ /**
++ * keeps track of state for field: _transient
++ */
++ private boolean _has_transient;
+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
++ /**
++ * Field _nillable.
++ */
++ private boolean _nillable = false;
+
+ /**
-+ *
-+ *
-+ * @param vParam
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * keeps track of state for field: _nillable
+ */
-+ public void addParam(
-+ final org.exolab.castor.mapping.xml.Param vParam)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._paramList.add(vParam);
-+ }
++ private boolean _has_nillable;
+
+ /**
-+ *
-+ *
-+ * @param index
-+ * @param vParam
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * Field _direct.
+ */
-+ public void addParam(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.Param vParam)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._paramList.add(index, vParam);
-+ }
++ private boolean _direct = false;
+
+ /**
-+ * Method enumerateParam.
-+ *
-+ * @return an Enumeration over all possible elements of this
-+ * collection
++ * keeps track of state for field: _direct
+ */
-+ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.Param> enumerateParam(
-+ ) {
-+ return java.util.Collections.enumeration(this._paramList);
-+ }
++ private boolean _has_direct;
+
+ /**
-+ * Returns the value of field 'alias'.
-+ *
-+ * @return the value of field 'Alias'.
++ * Field _lazy.
+ */
-+ public java.lang.String getAlias(
-+ ) {
-+ return this._alias;
-+ }
++ private boolean _lazy = false;
+
+ /**
-+ * Returns the value of field 'name'.
-+ *
-+ * @return the value of field 'Name'.
++ * keeps track of state for field: _lazy
+ */
-+ public java.lang.String getName(
-+ ) {
-+ return this._name;
-+ }
++ private boolean _has_lazy;
+
+ /**
-+ * Method getParam.
-+ *
-+ * @param index
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
-+ * @return the value of the org.exolab.castor.mapping.xml.Param
-+ * at the given index
++ * Indicates whether the field should be treated as a
++ * container,
++ * i.e. only it's fields should be persisted, but not the
++ * containing
++ * class itself. In this case, the container attribute should
++ * be set to true (supported in Castor XML only).
++ *
+ */
-+ public org.exolab.castor.mapping.xml.Param getParam(
-+ final int index)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._paramList.size()) {
-+ throw new IndexOutOfBoundsException("getParam: Index value '" + index + "' not in range [0.." + (this._paramList.size() - 1) + "]");
-+ }
-+
-+ return (org.exolab.castor.mapping.xml.Param) _paramList.get(index);
-+ }
++ private boolean _container;
+
+ /**
-+ * Method getParam.Returns the contents of the collection in an
-+ * Array. <p>Note: Just in case the collection contents are
-+ * changing in another thread, we pass a 0-length Array of the
-+ * correct type into the API call. This way we <i>know</i>
-+ * that the Array returned is of exactly the correct length.
-+ *
-+ * @return this collection as an Array
++ * keeps track of state for field: _container
+ */
-+ public org.exolab.castor.mapping.xml.Param[] getParam(
-+ ) {
-+ org.exolab.castor.mapping.xml.Param[] array = new org.exolab.castor.mapping.xml.Param[0];
-+ return (org.exolab.castor.mapping.xml.Param[]) this._paramList.toArray(array);
-+ }
++ private boolean _has_container;
+
+ /**
-+ * Method getParamCount.
-+ *
-+ * @return the size of this collection
++ * Field _getMethod.
+ */
-+ public int getParamCount(
-+ ) {
-+ return this._paramList.size();
-+ }
++ private java.lang.String _getMethod;
+
+ /**
-+ * Method isValid.
-+ *
-+ * @return true if this object is valid according to the schema
++ * Field _hasMethod.
+ */
-+ public boolean isValid(
-+ ) {
-+ try {
-+ validate();
-+ } catch (org.exolab.castor.xml.ValidationException vex) {
-+ return false;
-+ }
-+ return true;
-+ }
++ private java.lang.String _hasMethod;
+
+ /**
-+ * Method iterateParam.
-+ *
-+ * @return an Iterator over all possible elements in this
-+ * collection
++ * Field _setMethod.
+ */
-+ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.Param> iterateParam(
-+ ) {
-+ return this._paramList.iterator();
-+ }
++ private java.lang.String _setMethod;
+
+ /**
-+ *
-+ *
-+ * @param out
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
++ * Field _createMethod.
+ */
-+ public void marshal(
-+ final java.io.Writer out)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, out);
-+ }
++ private java.lang.String _createMethod;
+
+ /**
-+ *
-+ *
-+ * @param handler
-+ * @throws java.io.IOException if an IOException occurs during
-+ * marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
++ * Field _handler.
+ */
-+ public void marshal(
-+ final org.xml.sax.ContentHandler handler)
-+ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, handler);
-+ }
++ private java.lang.String _handler;
+
+ /**
++ * An optional attribute used to specify the type of the
++ * collection, if
++ * the property is multi-valued.
++ *
+ */
-+ public void removeAllParam(
-+ ) {
-+ this._paramList.clear();
-+ }
++ private org.exolab.castor.mapping.xml.types.FieldMappingCollectionType _collection;
+
+ /**
-+ * Method removeParam.
-+ *
-+ * @param vParam
-+ * @return true if the object was removed from the collection.
++ * Field _comparator.
+ */
-+ public boolean removeParam(
-+ final org.exolab.castor.mapping.xml.Param vParam) {
-+ boolean removed = _paramList.remove(vParam);
-+ return removed;
-+ }
++ private java.lang.String _comparator;
+
+ /**
-+ * Method removeParamAt.
-+ *
-+ * @param index
-+ * @return the element removed from the collection
++ * Field _identity.
+ */
-+ public org.exolab.castor.mapping.xml.Param removeParamAt(
-+ final int index) {
-+ java.lang.Object obj = this._paramList.remove(index);
-+ return (org.exolab.castor.mapping.xml.Param) obj;
-+ }
++ private boolean _identity = false;
+
+ /**
-+ * Sets the value of field 'alias'.
-+ *
-+ * @param alias the value of field 'alias'.
++ * keeps track of state for field: _identity
+ */
-+ public void setAlias(
-+ final java.lang.String alias) {
-+ this._alias = alias;
-+ }
++ private boolean _has_identity;
+
+ /**
-+ * Sets the value of field 'name'.
-+ *
-+ * @param name the value of field 'name'.
++ * Field _description.
+ */
-+ public void setName(
-+ final java.lang.String name) {
-+ this._name = name;
-+ }
++ private java.lang.String _description;
+
+ /**
-+ *
-+ *
-+ * @param index
-+ * @param vParam
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * The 'sql' element is used to store information about the
++ * database
++ * column to which a Java object is mapped to.
++ *
+ */
-+ public void setParam(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.Param vParam)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._paramList.size()) {
-+ throw new IndexOutOfBoundsException("setParam: Index value '" + index + "' not in range [0.." + (this._paramList.size() - 1) + "]");
-+ }
++ private org.exolab.castor.mapping.xml.Sql _sql;
+
-+ this._paramList.set(index, vParam);
-+ }
++ /**
++ * The 'bind-xml' element is used for specifying XML specific
++ * databinding
++ * properties and behavior for a specific field. 'bind-xml'
++ * may only appear
++ * as a child of a 'field' element.
++ *
++ */
++ private org.exolab.castor.mapping.xml.BindXml _bindXml;
+
+ /**
-+ *
-+ *
-+ * @param vParamArray
++ * Field _ldap.
+ */
-+ public void setParam(
-+ final org.exolab.castor.mapping.xml.Param[] vParamArray) {
-+ //-- copy array
-+ _paramList.clear();
++ private org.exolab.castor.mapping.xml.Ldap _ldap;
+
-+ for (int i = 0; i < vParamArray.length; i++) {
-+ this._paramList.add(vParamArray[i]);
-+ }
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public FieldMapping() {
++ super();
+ }
+
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
+ /**
-+ * Method unmarshal.
-+ *
-+ * @param reader
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled
-+ * org.exolab.castor.mapping.xml.KeyGeneratorDef
+ */
-+ public static org.exolab.castor.mapping.xml.KeyGeneratorDef unmarshal(
-+ final java.io.Reader reader)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.exolab.castor.mapping.xml.KeyGeneratorDef) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.KeyGeneratorDef.class, reader);
++ public void deleteContainer(
++ ) {
++ this._has_container= false;
+ }
+
+ /**
-+ *
-+ *
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
+ */
-+ public void validate(
-+ )
-+ throws org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
-+ validator.validate(this);
++ public void deleteDirect(
++ ) {
++ this._has_direct= false;
+ }
+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/.castor.cdr
-@@ -0,0 +1,20 @@
-+#Fri Jun 11 21:09:46 VET 2010
-+org.exolab.castor.mapping.xml.BindXml=org.exolab.castor.mapping.xml.descriptors.BindXmlDescriptor
-+org.exolab.castor.mapping.xml.FieldHandlerDef=org.exolab.castor.mapping.xml.descriptors.FieldHandlerDefDescriptor
-+org.exolab.castor.mapping.xml.Container=org.exolab.castor.mapping.xml.descriptors.ContainerDescriptor
-+org.exolab.castor.mapping.xml.Include=org.exolab.castor.mapping.xml.descriptors.IncludeDescriptor
-+org.exolab.castor.mapping.xml.Param=org.exolab.castor.mapping.xml.descriptors.ParamDescriptor
-+org.exolab.castor.mapping.xml.Ldap=org.exolab.castor.mapping.xml.descriptors.LdapDescriptor
-+org.exolab.castor.mapping.xml.ClassChoice=org.exolab.castor.mapping.xml.descriptors.ClassChoiceDescriptor
-+org.exolab.castor.mapping.xml.NamedQuery=org.exolab.castor.mapping.xml.descriptors.NamedQueryDescriptor
-+org.exolab.castor.mapping.xml.ClassMapping=org.exolab.castor.mapping.xml.descriptors.ClassMappingDescriptor
-+org.exolab.castor.mapping.xml.CacheTypeMapping=org.exolab.castor.mapping.xml.descriptors.CacheTypeMappingDescriptor
-+org.exolab.castor.mapping.xml.FieldMapping=org.exolab.castor.mapping.xml.descriptors.FieldMappingDescriptor
-+org.exolab.castor.mapping.xml.MappingRoot=org.exolab.castor.mapping.xml.descriptors.MappingRootDescriptor
-+org.exolab.castor.mapping.xml.Sql=org.exolab.castor.mapping.xml.descriptors.SqlDescriptor
-+org.exolab.castor.mapping.xml.KeyGeneratorDef=org.exolab.castor.mapping.xml.descriptors.KeyGeneratorDefDescriptor
-+org.exolab.castor.mapping.xml.MapTo=org.exolab.castor.mapping.xml.descriptors.MapToDescriptor
-+org.exolab.castor.mapping.xml.Property=org.exolab.castor.mapping.xml.descriptors.PropertyDescriptor
-+org.exolab.castor.mapping.xml.PropertyType=org.exolab.castor.mapping.xml.descriptors.PropertyTypeDescriptor
-+org.exolab.castor.mapping.xml.QueryHint=org.exolab.castor.mapping.xml.descriptors.QueryHintDescriptor
-+org.exolab.castor.mapping.xml.NamedNativeQuery=org.exolab.castor.mapping.xml.descriptors.NamedNativeQueryDescriptor
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/Param.java
-@@ -0,0 +1,163 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
-+
-+package org.exolab.castor.mapping.xml;
-+
-+/**
-+ * Class Param.
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+ at SuppressWarnings("serial")
-+public class Param implements java.io.Serializable {
-+
-+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
-+
+ /**
-+ * Field _name.
+ */
-+ private java.lang.String _name;
++ public void deleteIdentity(
++ ) {
++ this._has_identity= false;
++ }
+
+ /**
-+ * Field _value.
+ */
-+ private java.lang.String _value;
-+
++ public void deleteLazy(
++ ) {
++ this._has_lazy= false;
++ }
+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
++ /**
++ */
++ public void deleteNillable(
++ ) {
++ this._has_nillable= false;
++ }
+
-+ public Param() {
-+ super();
++ /**
++ */
++ public void deleteRequired(
++ ) {
++ this._has_required= false;
+ }
+
++ /**
++ */
++ public void deleteTransient(
++ ) {
++ this._has_transient= false;
++ }
+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
++ /**
++ * Returns the value of field 'bindXml'. The field 'bindXml'
++ * has the following description: The 'bind-xml' element is
++ * used for specifying XML specific databinding
++ * properties and behavior for a specific field. 'bind-xml'
++ * may only appear
++ * as a child of a 'field' element.
++ *
++ *
++ * @return the value of field 'BindXml'.
++ */
++ public org.exolab.castor.mapping.xml.BindXml getBindXml(
++ ) {
++ return this._bindXml;
++ }
+
+ /**
-+ * Returns the value of field 'name'.
++ * Returns the value of field 'collection'. The field
++ * 'collection' has the following description: An optional
++ * attribute used to specify the type of the collection, if
++ * the property is multi-valued.
++ *
+ *
-+ * @return the value of field 'Name'.
++ * @return the value of field 'Collection'.
+ */
-+ public java.lang.String getName(
++ public org.exolab.castor.mapping.xml.types.FieldMappingCollectionType getCollection(
+ ) {
-+ return this._name;
++ return this._collection;
+ }
+
+ /**
-+ * Returns the value of field 'value'.
++ * Returns the value of field 'comparator'.
+ *
-+ * @return the value of field 'Value'.
++ * @return the value of field 'Comparator'.
+ */
-+ public java.lang.String getValue(
++ public java.lang.String getComparator(
+ ) {
-+ return this._value;
++ return this._comparator;
+ }
+
+ /**
-+ * Method isValid.
++ * Returns the value of field 'container'. The field
++ * 'container' has the following description: Indicates whether
++ * the field should be treated as a container,
++ * i.e. only it's fields should be persisted, but not the
++ * containing
++ * class itself. In this case, the container attribute should
++ * be set to true (supported in Castor XML only).
++ *
+ *
-+ * @return true if this object is valid according to the schema
++ * @return the value of field 'Container'.
+ */
-+ public boolean isValid(
++ public boolean getContainer(
+ ) {
-+ try {
-+ validate();
-+ } catch (org.exolab.castor.xml.ValidationException vex) {
-+ return false;
-+ }
-+ return true;
++ return this._container;
+ }
+
+ /**
++ * Returns the value of field 'createMethod'.
+ *
++ * @return the value of field 'CreateMethod'.
++ */
++ public java.lang.String getCreateMethod(
++ ) {
++ return this._createMethod;
++ }
++
++ /**
++ * Returns the value of field 'description'.
+ *
-+ * @param out
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
++ * @return the value of field 'Description'.
+ */
-+ public void marshal(
-+ final java.io.Writer out)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, out);
++ public java.lang.String getDescription(
++ ) {
++ return this._description;
+ }
+
+ /**
++ * Returns the value of field 'direct'.
+ *
++ * @return the value of field 'Direct'.
++ */
++ public boolean getDirect(
++ ) {
++ return this._direct;
++ }
++
++ /**
++ * Returns the value of field 'getMethod'.
+ *
-+ * @param handler
-+ * @throws java.io.IOException if an IOException occurs during
-+ * marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
++ * @return the value of field 'GetMethod'.
+ */
-+ public void marshal(
-+ final org.xml.sax.ContentHandler handler)
-+ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, handler);
++ public java.lang.String getGetMethod(
++ ) {
++ return this._getMethod;
+ }
+
+ /**
-+ * Sets the value of field 'name'.
++ * Returns the value of field 'handler'.
+ *
-+ * @param name the value of field 'name'.
++ * @return the value of field 'Handler'.
+ */
-+ public void setName(
-+ final java.lang.String name) {
-+ this._name = name;
++ public java.lang.String getHandler(
++ ) {
++ return this._handler;
+ }
+
+ /**
-+ * Sets the value of field 'value'.
++ * Returns the value of field 'hasMethod'.
+ *
-+ * @param value the value of field 'value'.
++ * @return the value of field 'HasMethod'.
+ */
-+ public void setValue(
-+ final java.lang.String value) {
-+ this._value = value;
++ public java.lang.String getHasMethod(
++ ) {
++ return this._hasMethod;
+ }
+
+ /**
-+ * Method unmarshal.
++ * Returns the value of field 'identity'.
+ *
-+ * @param reader
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled org.exolab.castor.mapping.xml.Param
++ * @return the value of field 'Identity'.
+ */
-+ public static org.exolab.castor.mapping.xml.Param unmarshal(
-+ final java.io.Reader reader)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.exolab.castor.mapping.xml.Param) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.Param.class, reader);
++ public boolean getIdentity(
++ ) {
++ return this._identity;
+ }
+
+ /**
++ * Returns the value of field 'lazy'.
+ *
++ * @return the value of field 'Lazy'.
++ */
++ public boolean getLazy(
++ ) {
++ return this._lazy;
++ }
++
++ /**
++ * Returns the value of field 'ldap'.
+ *
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
++ * @return the value of field 'Ldap'.
+ */
-+ public void validate(
-+ )
-+ throws org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
-+ validator.validate(this);
++ public org.exolab.castor.mapping.xml.Ldap getLdap(
++ ) {
++ return this._ldap;
+ }
+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/BindXml.java
-@@ -0,0 +1,670 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
-+
-+package org.exolab.castor.mapping.xml;
-+
-+/**
-+ * The 'bind-xml' element is used for specifying XML specific
-+ * databinding
-+ * properties and behavior for a specific field. 'bind-xml' may
-+ * only appear
-+ * as a child of a 'field' element.
-+ *
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+ at SuppressWarnings("serial")
-+public class BindXml implements java.io.Serializable {
-+
-+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
-+
+ /**
-+ * An optional attribute used for specifying the XML name for
-+ * the
-+ * field associated with the 'bind-xml' element.
++ * Returns the value of field 'name'. The field 'name' has the
++ * following description: A required attribute used to identify
++ * the name of the property.
+ *
++ *
++ * @return the value of field 'Name'.
+ */
-+ private java.lang.String _name;
-+
-+ /**
-+ * Field _type.
-+ */
-+ private java.lang.String _type;
++ public java.lang.String getName(
++ ) {
++ return this._name;
++ }
+
+ /**
-+ * Allows specifying how Castor should automatically determines
-+ * the XML name of this field when no name has been specified.
-+ * In most cases the XML name is determined by using the field
-+ * name,
-+ * but in some cases the user may want to use the Class name
-+ * of
-+ * the field type. This attribute allows choosing between the
-+ * two approaches. If this attribute is not specified, the
-+ * field
-+ * name is used as the XML name.
-+ *
++ * Returns the value of field 'nillable'.
++ *
++ * @return the value of field 'Nillable'.
+ */
-+ private org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType _autoNaming;
++ public boolean getNillable(
++ ) {
++ return this._nillable;
++ }
+
+ /**
-+ * Allows specifying a nested location path for this field,
-+ * the value should just be a simplified XPath like value
-+ * where names are separated by "/".
-+ *
++ * Returns the value of field 'required'.
++ *
++ * @return the value of field 'Required'.
+ */
-+ private java.lang.String _location;
++ public boolean getRequired(
++ ) {
++ return this._required;
++ }
+
+ /**
-+ * Field _matches.
++ * Returns the value of field 'setMethod'.
++ *
++ * @return the value of field 'SetMethod'.
+ */
-+ private java.lang.String _matches;
++ public java.lang.String getSetMethod(
++ ) {
++ return this._setMethod;
++ }
+
+ /**
-+ * Field _reference.
++ * Returns the value of field 'sql'. The field 'sql' has the
++ * following description: The 'sql' element is used to store
++ * information about the database
++ * column to which a Java object is mapped to.
++ *
++ *
++ * @return the value of field 'Sql'.
+ */
-+ private boolean _reference;
++ public org.exolab.castor.mapping.xml.Sql getSql(
++ ) {
++ return this._sql;
++ }
+
+ /**
-+ * keeps track of state for field: _reference
++ * Returns the value of field 'transient'.
++ *
++ * @return the value of field 'Transient'.
+ */
-+ private boolean _has_reference;
++ public boolean getTransient(
++ ) {
++ return this._transient;
++ }
+
+ /**
-+ * Field _node.
++ * Returns the value of field 'type'. The field 'type' has the
++ * following description: An optional attribute used to
++ * identify the type of the property.
++ *
++ *
++ * @return the value of field 'Type'.
+ */
-+ private org.exolab.castor.mapping.xml.types.BindXmlNodeType _node;
++ public java.lang.String getType(
++ ) {
++ return this._type;
++ }
+
+ /**
-+ * Field _QNamePrefix.
++ * Method hasContainer.
++ *
++ * @return true if at least one Container has been added
+ */
-+ private java.lang.String _QNamePrefix;
++ public boolean hasContainer(
++ ) {
++ return this._has_container;
++ }
+
+ /**
-+ * Field _transient.
++ * Method hasDirect.
++ *
++ * @return true if at least one Direct has been added
+ */
-+ private boolean _transient;
++ public boolean hasDirect(
++ ) {
++ return this._has_direct;
++ }
+
+ /**
-+ * keeps track of state for field: _transient
++ * Method hasIdentity.
++ *
++ * @return true if at least one Identity has been added
+ */
-+ private boolean _has_transient;
++ public boolean hasIdentity(
++ ) {
++ return this._has_identity;
++ }
+
+ /**
-+ * The 'class' element is used to store information about
-+ * mapping of a class.
-+ *
++ * Method hasLazy.
++ *
++ * @return true if at least one Lazy has been added
+ */
-+ private org.exolab.castor.mapping.xml.ClassMapping _classMapping;
++ public boolean hasLazy(
++ ) {
++ return this._has_lazy;
++ }
+
+ /**
-+ * Field _propertyList.
++ * Method hasNillable.
++ *
++ * @return true if at least one Nillable has been added
+ */
-+ private java.util.List<org.exolab.castor.mapping.xml.Property> _propertyList;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
-+
-+ public BindXml() {
-+ super();
-+ this._propertyList = new java.util.ArrayList<org.exolab.castor.mapping.xml.Property>();
++ public boolean hasNillable(
++ ) {
++ return this._has_nillable;
+ }
+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
-+
+ /**
++ * Method hasRequired.
+ *
-+ *
-+ * @param vProperty
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @return true if at least one Required has been added
+ */
-+ public void addProperty(
-+ final org.exolab.castor.mapping.xml.Property vProperty)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._propertyList.add(vProperty);
++ public boolean hasRequired(
++ ) {
++ return this._has_required;
+ }
+
+ /**
++ * Method hasTransient.
+ *
-+ *
-+ * @param index
-+ * @param vProperty
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @return true if at least one Transient has been added
+ */
-+ public void addProperty(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.Property vProperty)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._propertyList.add(index, vProperty);
++ public boolean hasTransient(
++ ) {
++ return this._has_transient;
+ }
+
+ /**
++ * Returns the value of field 'container'. The field
++ * 'container' has the following description: Indicates whether
++ * the field should be treated as a container,
++ * i.e. only it's fields should be persisted, but not the
++ * containing
++ * class itself. In this case, the container attribute should
++ * be set to true (supported in Castor XML only).
++ *
++ *
++ * @return the value of field 'Container'.
+ */
-+ public void deleteReference(
++ public boolean isContainer(
+ ) {
-+ this._has_reference= false;
++ return this._container;
+ }
+
+ /**
++ * Returns the value of field 'direct'.
++ *
++ * @return the value of field 'Direct'.
+ */
-+ public void deleteTransient(
++ public boolean isDirect(
+ ) {
-+ this._has_transient= false;
++ return this._direct;
+ }
+
+ /**
-+ * Method enumerateProperty.
++ * Returns the value of field 'identity'.
+ *
-+ * @return an Enumeration over all possible elements of this
-+ * collection
++ * @return the value of field 'Identity'.
+ */
-+ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.Property> enumerateProperty(
++ public boolean isIdentity(
+ ) {
-+ return java.util.Collections.enumeration(this._propertyList);
++ return this._identity;
+ }
+
+ /**
-+ * Returns the value of field 'autoNaming'. The field
-+ * 'autoNaming' has the following description: Allows
-+ * specifying how Castor should automatically determines
-+ * the XML name of this field when no name has been specified.
-+ * In most cases the XML name is determined by using the field
-+ * name,
-+ * but in some cases the user may want to use the Class name
-+ * of
-+ * the field type. This attribute allows choosing between the
-+ * two approaches. If this attribute is not specified, the
-+ * field
-+ * name is used as the XML name.
-+ *
++ * Returns the value of field 'lazy'.
+ *
-+ * @return the value of field 'AutoNaming'.
++ * @return the value of field 'Lazy'.
+ */
-+ public org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType getAutoNaming(
++ public boolean isLazy(
+ ) {
-+ return this._autoNaming;
++ return this._lazy;
+ }
+
+ /**
-+ * Returns the value of field 'classMapping'. The field
-+ * 'classMapping' has the following description: The 'class'
-+ * element is used to store information about mapping of a
-+ * class.
-+ *
++ * Returns the value of field 'nillable'.
+ *
-+ * @return the value of field 'ClassMapping'.
++ * @return the value of field 'Nillable'.
+ */
-+ public org.exolab.castor.mapping.xml.ClassMapping getClassMapping(
++ public boolean isNillable(
+ ) {
-+ return this._classMapping;
++ return this._nillable;
+ }
+
+ /**
-+ * Returns the value of field 'location'. The field 'location'
-+ * has the following description: Allows specifying a nested
-+ * location path for this field,
-+ * the value should just be a simplified XPath like value
-+ * where names are separated by "/".
-+ *
++ * Returns the value of field 'required'.
+ *
-+ * @return the value of field 'Location'.
++ * @return the value of field 'Required'.
+ */
-+ public java.lang.String getLocation(
++ public boolean isRequired(
+ ) {
-+ return this._location;
++ return this._required;
+ }
+
+ /**
-+ * Returns the value of field 'matches'.
++ * Returns the value of field 'transient'.
+ *
-+ * @return the value of field 'Matches'.
++ * @return the value of field 'Transient'.
+ */
-+ public java.lang.String getMatches(
++ public boolean isTransient(
+ ) {
-+ return this._matches;
++ return this._transient;
+ }
+
+ /**
-+ * Returns the value of field 'name'. The field 'name' has the
-+ * following description: An optional attribute used for
-+ * specifying the XML name for the
-+ * field associated with the 'bind-xml' element.
-+ *
++ * Method isValid.
+ *
-+ * @return the value of field 'Name'.
++ * @return true if this object is valid according to the schema
+ */
-+ public java.lang.String getName(
++ public boolean isValid(
+ ) {
-+ return this._name;
++ try {
++ validate();
++ } catch (org.exolab.castor.xml.ValidationException vex) {
++ return false;
++ }
++ return true;
+ }
+
+ /**
-+ * Returns the value of field 'node'.
+ *
-+ * @return the value of field 'Node'.
++ *
++ * @param out
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
+ */
-+ public org.exolab.castor.mapping.xml.types.BindXmlNodeType getNode(
-+ ) {
-+ return this._node;
++ public void marshal(
++ final java.io.Writer out)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, out);
+ }
+
+ /**
-+ * Method getProperty.
+ *
-+ * @param index
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
-+ * @return the value of the
-+ * org.exolab.castor.mapping.xml.Property at the given index
++ *
++ * @param handler
++ * @throws java.io.IOException if an IOException occurs during
++ * marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
+ */
-+ public org.exolab.castor.mapping.xml.Property getProperty(
-+ final int index)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._propertyList.size()) {
-+ throw new IndexOutOfBoundsException("getProperty: Index value '" + index + "' not in range [0.." + (this._propertyList.size() - 1) + "]");
-+ }
-+
-+ return (org.exolab.castor.mapping.xml.Property) _propertyList.get(index);
++ public void marshal(
++ final org.xml.sax.ContentHandler handler)
++ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, handler);
+ }
+
+ /**
-+ * Method getProperty.Returns the contents of the collection in
-+ * an Array. <p>Note: Just in case the collection contents
-+ * are changing in another thread, we pass a 0-length Array of
-+ * the correct type into the API call. This way we <i>know</i>
-+ * that the Array returned is of exactly the correct length.
++ * Sets the value of field 'bindXml'. The field 'bindXml' has
++ * the following description: The 'bind-xml' element is used
++ * for specifying XML specific databinding
++ * properties and behavior for a specific field. 'bind-xml'
++ * may only appear
++ * as a child of a 'field' element.
++ *
+ *
-+ * @return this collection as an Array
++ * @param bindXml the value of field 'bindXml'.
+ */
-+ public org.exolab.castor.mapping.xml.Property[] getProperty(
-+ ) {
-+ org.exolab.castor.mapping.xml.Property[] array = new org.exolab.castor.mapping.xml.Property[0];
-+ return (org.exolab.castor.mapping.xml.Property[]) this._propertyList.toArray(array);
++ public void setBindXml(
++ final org.exolab.castor.mapping.xml.BindXml bindXml) {
++ this._bindXml = bindXml;
+ }
+
+ /**
-+ * Method getPropertyCount.
++ * Sets the value of field 'collection'. The field 'collection'
++ * has the following description: An optional attribute used to
++ * specify the type of the collection, if
++ * the property is multi-valued.
++ *
+ *
-+ * @return the size of this collection
++ * @param collection the value of field 'collection'.
+ */
-+ public int getPropertyCount(
-+ ) {
-+ return this._propertyList.size();
++ public void setCollection(
++ final org.exolab.castor.mapping.xml.types.FieldMappingCollectionType collection) {
++ this._collection = collection;
+ }
+
+ /**
-+ * Returns the value of field 'QNamePrefix'.
++ * Sets the value of field 'comparator'.
+ *
-+ * @return the value of field 'QNamePrefix'.
++ * @param comparator the value of field 'comparator'.
+ */
-+ public java.lang.String getQNamePrefix(
-+ ) {
-+ return this._QNamePrefix;
++ public void setComparator(
++ final java.lang.String comparator) {
++ this._comparator = comparator;
+ }
+
+ /**
-+ * Returns the value of field 'reference'.
++ * Sets the value of field 'container'. The field 'container'
++ * has the following description: Indicates whether the field
++ * should be treated as a container,
++ * i.e. only it's fields should be persisted, but not the
++ * containing
++ * class itself. In this case, the container attribute should
++ * be set to true (supported in Castor XML only).
++ *
+ *
-+ * @return the value of field 'Reference'.
++ * @param container the value of field 'container'.
+ */
-+ public boolean getReference(
-+ ) {
-+ return this._reference;
++ public void setContainer(
++ final boolean container) {
++ this._container = container;
++ this._has_container = true;
+ }
+
+ /**
-+ * Returns the value of field 'transient'.
++ * Sets the value of field 'createMethod'.
+ *
-+ * @return the value of field 'Transient'.
++ * @param createMethod the value of field 'createMethod'.
+ */
-+ public boolean getTransient(
-+ ) {
-+ return this._transient;
++ public void setCreateMethod(
++ final java.lang.String createMethod) {
++ this._createMethod = createMethod;
+ }
+
+ /**
-+ * Returns the value of field 'type'.
++ * Sets the value of field 'description'.
+ *
-+ * @return the value of field 'Type'.
++ * @param description the value of field 'description'.
+ */
-+ public java.lang.String getType(
-+ ) {
-+ return this._type;
++ public void setDescription(
++ final java.lang.String description) {
++ this._description = description;
+ }
+
+ /**
-+ * Method hasReference.
++ * Sets the value of field 'direct'.
+ *
-+ * @return true if at least one Reference has been added
++ * @param direct the value of field 'direct'.
+ */
-+ public boolean hasReference(
-+ ) {
-+ return this._has_reference;
++ public void setDirect(
++ final boolean direct) {
++ this._direct = direct;
++ this._has_direct = true;
+ }
+
+ /**
-+ * Method hasTransient.
++ * Sets the value of field 'getMethod'.
+ *
-+ * @return true if at least one Transient has been added
++ * @param getMethod the value of field 'getMethod'.
+ */
-+ public boolean hasTransient(
-+ ) {
-+ return this._has_transient;
++ public void setGetMethod(
++ final java.lang.String getMethod) {
++ this._getMethod = getMethod;
+ }
+
+ /**
-+ * Returns the value of field 'reference'.
++ * Sets the value of field 'handler'.
+ *
-+ * @return the value of field 'Reference'.
++ * @param handler the value of field 'handler'.
+ */
-+ public boolean isReference(
-+ ) {
-+ return this._reference;
++ public void setHandler(
++ final java.lang.String handler) {
++ this._handler = handler;
+ }
+
+ /**
-+ * Returns the value of field 'transient'.
++ * Sets the value of field 'hasMethod'.
+ *
-+ * @return the value of field 'Transient'.
++ * @param hasMethod the value of field 'hasMethod'.
+ */
-+ public boolean isTransient(
-+ ) {
-+ return this._transient;
++ public void setHasMethod(
++ final java.lang.String hasMethod) {
++ this._hasMethod = hasMethod;
+ }
+
+ /**
-+ * Method isValid.
++ * Sets the value of field 'identity'.
+ *
-+ * @return true if this object is valid according to the schema
++ * @param identity the value of field 'identity'.
+ */
-+ public boolean isValid(
-+ ) {
-+ try {
-+ validate();
-+ } catch (org.exolab.castor.xml.ValidationException vex) {
-+ return false;
-+ }
-+ return true;
++ public void setIdentity(
++ final boolean identity) {
++ this._identity = identity;
++ this._has_identity = true;
+ }
+
+ /**
-+ * Method iterateProperty.
++ * Sets the value of field 'lazy'.
+ *
-+ * @return an Iterator over all possible elements in this
-+ * collection
++ * @param lazy the value of field 'lazy'.
+ */
-+ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.Property> iterateProperty(
-+ ) {
-+ return this._propertyList.iterator();
++ public void setLazy(
++ final boolean lazy) {
++ this._lazy = lazy;
++ this._has_lazy = true;
+ }
+
+ /**
++ * Sets the value of field 'ldap'.
+ *
-+ *
-+ * @param out
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
++ * @param ldap the value of field 'ldap'.
+ */
-+ public void marshal(
-+ final java.io.Writer out)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, out);
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param handler
-+ * @throws java.io.IOException if an IOException occurs during
-+ * marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ */
-+ public void marshal(
-+ final org.xml.sax.ContentHandler handler)
-+ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, handler);
-+ }
-+
-+ /**
-+ */
-+ public void removeAllProperty(
-+ ) {
-+ this._propertyList.clear();
-+ }
-+
-+ /**
-+ * Method removeProperty.
-+ *
-+ * @param vProperty
-+ * @return true if the object was removed from the collection.
-+ */
-+ public boolean removeProperty(
-+ final org.exolab.castor.mapping.xml.Property vProperty) {
-+ boolean removed = _propertyList.remove(vProperty);
-+ return removed;
-+ }
-+
-+ /**
-+ * Method removePropertyAt.
-+ *
-+ * @param index
-+ * @return the element removed from the collection
-+ */
-+ public org.exolab.castor.mapping.xml.Property removePropertyAt(
-+ final int index) {
-+ java.lang.Object obj = this._propertyList.remove(index);
-+ return (org.exolab.castor.mapping.xml.Property) obj;
-+ }
-+
-+ /**
-+ * Sets the value of field 'autoNaming'. The field 'autoNaming'
-+ * has the following description: Allows specifying how Castor
-+ * should automatically determines
-+ * the XML name of this field when no name has been specified.
-+ * In most cases the XML name is determined by using the field
-+ * name,
-+ * but in some cases the user may want to use the Class name
-+ * of
-+ * the field type. This attribute allows choosing between the
-+ * two approaches. If this attribute is not specified, the
-+ * field
-+ * name is used as the XML name.
-+ *
-+ *
-+ * @param autoNaming the value of field 'autoNaming'.
-+ */
-+ public void setAutoNaming(
-+ final org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType autoNaming) {
-+ this._autoNaming = autoNaming;
-+ }
-+
-+ /**
-+ * Sets the value of field 'classMapping'. The field
-+ * 'classMapping' has the following description: The 'class'
-+ * element is used to store information about mapping of a
-+ * class.
-+ *
-+ *
-+ * @param classMapping the value of field 'classMapping'.
-+ */
-+ public void setClassMapping(
-+ final org.exolab.castor.mapping.xml.ClassMapping classMapping) {
-+ this._classMapping = classMapping;
-+ }
-+
-+ /**
-+ * Sets the value of field 'location'. The field 'location' has
-+ * the following description: Allows specifying a nested
-+ * location path for this field,
-+ * the value should just be a simplified XPath like value
-+ * where names are separated by "/".
-+ *
-+ *
-+ * @param location the value of field 'location'.
-+ */
-+ public void setLocation(
-+ final java.lang.String location) {
-+ this._location = location;
-+ }
-+
-+ /**
-+ * Sets the value of field 'matches'.
-+ *
-+ * @param matches the value of field 'matches'.
-+ */
-+ public void setMatches(
-+ final java.lang.String matches) {
-+ this._matches = matches;
++ public void setLdap(
++ final org.exolab.castor.mapping.xml.Ldap ldap) {
++ this._ldap = ldap;
+ }
+
+ /**
+ * Sets the value of field 'name'. The field 'name' has the
-+ * following description: An optional attribute used for
-+ * specifying the XML name for the
-+ * field associated with the 'bind-xml' element.
++ * following description: A required attribute used to identify
++ * the name of the property.
+ *
+ *
+ * @param name the value of field 'name'.
@@ -3749,69 +3810,49 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Sets the value of field 'node'.
-+ *
-+ * @param node the value of field 'node'.
-+ */
-+ public void setNode(
-+ final org.exolab.castor.mapping.xml.types.BindXmlNodeType node) {
-+ this._node = node;
-+ }
-+
-+ /**
-+ *
++ * Sets the value of field 'nillable'.
+ *
-+ * @param index
-+ * @param vProperty
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @param nillable the value of field 'nillable'.
+ */
-+ public void setProperty(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.Property vProperty)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._propertyList.size()) {
-+ throw new IndexOutOfBoundsException("setProperty: Index value '" + index + "' not in range [0.." + (this._propertyList.size() - 1) + "]");
-+ }
-+
-+ this._propertyList.set(index, vProperty);
++ public void setNillable(
++ final boolean nillable) {
++ this._nillable = nillable;
++ this._has_nillable = true;
+ }
+
+ /**
++ * Sets the value of field 'required'.
+ *
-+ *
-+ * @param vPropertyArray
++ * @param required the value of field 'required'.
+ */
-+ public void setProperty(
-+ final org.exolab.castor.mapping.xml.Property[] vPropertyArray) {
-+ //-- copy array
-+ _propertyList.clear();
-+
-+ for (int i = 0; i < vPropertyArray.length; i++) {
-+ this._propertyList.add(vPropertyArray[i]);
-+ }
++ public void setRequired(
++ final boolean required) {
++ this._required = required;
++ this._has_required = true;
+ }
+
+ /**
-+ * Sets the value of field 'QNamePrefix'.
++ * Sets the value of field 'setMethod'.
+ *
-+ * @param QNamePrefix the value of field 'QNamePrefix'.
++ * @param setMethod the value of field 'setMethod'.
+ */
-+ public void setQNamePrefix(
-+ final java.lang.String QNamePrefix) {
-+ this._QNamePrefix = QNamePrefix;
++ public void setSetMethod(
++ final java.lang.String setMethod) {
++ this._setMethod = setMethod;
+ }
+
+ /**
-+ * Sets the value of field 'reference'.
++ * Sets the value of field 'sql'. The field 'sql' has the
++ * following description: The 'sql' element is used to store
++ * information about the database
++ * column to which a Java object is mapped to.
++ *
+ *
-+ * @param reference the value of field 'reference'.
++ * @param sql the value of field 'sql'.
+ */
-+ public void setReference(
-+ final boolean reference) {
-+ this._reference = reference;
-+ this._has_reference = true;
++ public void setSql(
++ final org.exolab.castor.mapping.xml.Sql sql) {
++ this._sql = sql;
+ }
+
+ /**
@@ -3827,7 +3868,10 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Sets the value of field 'type'.
++ * Sets the value of field 'type'. The field 'type' has the
++ * following description: An optional attribute used to
++ * identify the type of the property.
++ *
+ *
+ * @param type the value of field 'type'.
+ */
@@ -3844,12 +3888,13 @@ Last-Update: 2010-06-27
+ * null or if any SAXException is thrown during marshaling
+ * @throws org.exolab.castor.xml.ValidationException if this
+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled org.exolab.castor.mapping.xml.BindXml
++ * @return the unmarshaled
++ * org.exolab.castor.mapping.xml.FieldMapping
+ */
-+ public static org.exolab.castor.mapping.xml.BindXml unmarshal(
++ public static org.exolab.castor.mapping.xml.FieldMapping unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.exolab.castor.mapping.xml.BindXml) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.BindXml.class, reader);
++ return (org.exolab.castor.mapping.xml.FieldMapping) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.FieldMapping.class, reader);
+ }
+
+ /**
@@ -3867,11 +3912,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/MapTo.java
-@@ -0,0 +1,335 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/Property.java
+@@ -0,0 +1,110 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -3879,176 +3924,173 @@ Last-Update: 2010-06-27
+package org.exolab.castor.mapping.xml;
+
+/**
-+ * The 'map-to' element is used for specifying the name of the item
-+ *
-+ * that should be associated with the given Java object.
-+ *
++ * Class Property.
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class MapTo implements java.io.Serializable {
++public class Property extends PropertyType
++implements java.io.Serializable
++{
+
+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
++ //----------------/
++ //- Constructors -/
++ //----------------/
+
-+ /**
-+ * An optional attribute used to specify the name of the table
-+ * to which the given Java object is associated.
-+ *
-+ */
-+ private java.lang.String _table;
++ public Property() {
++ super();
++ }
+
-+ /**
-+ * Field _xml.
-+ */
-+ private java.lang.String _xml;
+
-+ /**
-+ * Field _nsUri.
-+ */
-+ private java.lang.String _nsUri;
++ //-----------/
++ //- Methods -/
++ //-----------/
+
+ /**
-+ * Field _nsPrefix.
++ * Method isValid.
++ *
++ * @return true if this object is valid according to the schema
+ */
-+ private java.lang.String _nsPrefix;
++ public boolean isValid(
++ ) {
++ try {
++ validate();
++ } catch (org.exolab.castor.xml.ValidationException vex) {
++ return false;
++ }
++ return true;
++ }
+
+ /**
-+ * Field _elementDefinition.
++ *
++ *
++ * @param out
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
+ */
-+ private boolean _elementDefinition = false;
++ public void marshal(
++ final java.io.Writer out)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, out);
++ }
+
+ /**
-+ * keeps track of state for field: _elementDefinition
++ *
++ *
++ * @param handler
++ * @throws java.io.IOException if an IOException occurs during
++ * marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
+ */
-+ private boolean _has_elementDefinition;
++ public void marshal(
++ final org.xml.sax.ContentHandler handler)
++ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, handler);
++ }
+
+ /**
-+ * Field _ldapDn.
++ * Method unmarshal.
++ *
++ * @param reader
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @return the unmarshaled org.exolab.castor.mapping.xml.Propert
+ */
-+ private java.lang.String _ldapDn;
++ public static org.exolab.castor.mapping.xml.Property unmarshal(
++ final java.io.Reader reader)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ return (org.exolab.castor.mapping.xml.Property) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.Property.class, reader);
++ }
+
+ /**
-+ * Field _ldapOc.
++ *
++ *
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
+ */
-+ private java.lang.String _ldapOc;
-+
++ public void validate(
++ )
++ throws org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
++ validator.validate(this);
++ }
+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/QueryHint.java
+@@ -0,0 +1,164 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
+
-+ public MapTo() {
-+ super();
-+ }
++package org.exolab.castor.mapping.xml;
+
++/**
++ * Class QueryHint.
++ *
++ * @version $Revision$ $Date$
++ */
++ at SuppressWarnings("serial")
++public class QueryHint implements java.io.Serializable {
+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
+
-+ /**
-+ */
-+ public void deleteElementDefinition(
-+ ) {
-+ this._has_elementDefinition= false;
-+ }
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
+
+ /**
-+ * Returns the value of field 'elementDefinition'.
-+ *
-+ * @return the value of field 'ElementDefinition'.
++ * Field _name.
+ */
-+ public boolean getElementDefinition(
-+ ) {
-+ return this._elementDefinition;
-+ }
++ private java.lang.String _name;
+
+ /**
-+ * Returns the value of field 'ldapDn'.
-+ *
-+ * @return the value of field 'LdapDn'.
++ * Field _value.
+ */
-+ public java.lang.String getLdapDn(
-+ ) {
-+ return this._ldapDn;
-+ }
++ private java.lang.String _value;
+
-+ /**
-+ * Returns the value of field 'ldapOc'.
-+ *
-+ * @return the value of field 'LdapOc'.
-+ */
-+ public java.lang.String getLdapOc(
-+ ) {
-+ return this._ldapOc;
-+ }
+
-+ /**
-+ * Returns the value of field 'nsPrefix'.
-+ *
-+ * @return the value of field 'NsPrefix'.
-+ */
-+ public java.lang.String getNsPrefix(
-+ ) {
-+ return this._nsPrefix;
-+ }
++ //----------------/
++ //- Constructors -/
++ //----------------/
+
-+ /**
-+ * Returns the value of field 'nsUri'.
-+ *
-+ * @return the value of field 'NsUri'.
-+ */
-+ public java.lang.String getNsUri(
-+ ) {
-+ return this._nsUri;
++ public QueryHint() {
++ super();
+ }
+
-+ /**
-+ * Returns the value of field 'table'. The field 'table' has
-+ * the following description: An optional attribute used to
-+ * specify the name of the table
-+ * to which the given Java object is associated.
-+ *
-+ *
-+ * @return the value of field 'Table'.
-+ */
-+ public java.lang.String getTable(
-+ ) {
-+ return this._table;
-+ }
+
-+ /**
-+ * Returns the value of field 'xml'.
-+ *
-+ * @return the value of field 'Xml'.
-+ */
-+ public java.lang.String getXml(
-+ ) {
-+ return this._xml;
-+ }
++ //-----------/
++ //- Methods -/
++ //-----------/
+
+ /**
-+ * Method hasElementDefinition.
++ * Returns the value of field 'name'.
+ *
-+ * @return true if at least one ElementDefinition has been added
++ * @return the value of field 'Name'.
+ */
-+ public boolean hasElementDefinition(
++ public java.lang.String getName(
+ ) {
-+ return this._has_elementDefinition;
++ return this._name;
+ }
+
+ /**
-+ * Returns the value of field 'elementDefinition'.
++ * Returns the value of field 'value'.
+ *
-+ * @return the value of field 'ElementDefinition'.
++ * @return the value of field 'Value'.
+ */
-+ public boolean isElementDefinition(
++ public java.lang.String getValue(
+ ) {
-+ return this._elementDefinition;
++ return this._value;
+ }
+
+ /**
@@ -4099,139 +4141,97 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Sets the value of field 'elementDefinition'.
++ * Sets the value of field 'name'.
+ *
-+ * @param elementDefinition the value of field
-+ * 'elementDefinition'.
++ * @param name the value of field 'name'.
+ */
-+ public void setElementDefinition(
-+ final boolean elementDefinition) {
-+ this._elementDefinition = elementDefinition;
-+ this._has_elementDefinition = true;
++ public void setName(
++ final java.lang.String name) {
++ this._name = name;
+ }
+
+ /**
-+ * Sets the value of field 'ldapDn'.
++ * Sets the value of field 'value'.
+ *
-+ * @param ldapDn the value of field 'ldapDn'.
++ * @param value the value of field 'value'.
+ */
-+ public void setLdapDn(
-+ final java.lang.String ldapDn) {
-+ this._ldapDn = ldapDn;
++ public void setValue(
++ final java.lang.String value) {
++ this._value = value;
+ }
+
+ /**
-+ * Sets the value of field 'ldapOc'.
++ * Method unmarshal.
+ *
-+ * @param ldapOc the value of field 'ldapOc'.
++ * @param reader
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @return the unmarshaled
++ * org.exolab.castor.mapping.xml.QueryHint
+ */
-+ public void setLdapOc(
-+ final java.lang.String ldapOc) {
-+ this._ldapOc = ldapOc;
++ public static org.exolab.castor.mapping.xml.QueryHint unmarshal(
++ final java.io.Reader reader)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ return (org.exolab.castor.mapping.xml.QueryHint) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.QueryHint.class, reader);
+ }
+
+ /**
-+ * Sets the value of field 'nsPrefix'.
+ *
-+ * @param nsPrefix the value of field 'nsPrefix'.
-+ */
-+ public void setNsPrefix(
-+ final java.lang.String nsPrefix) {
-+ this._nsPrefix = nsPrefix;
-+ }
-+
-+ /**
-+ * Sets the value of field 'nsUri'.
+ *
-+ * @param nsUri the value of field 'nsUri'.
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
+ */
-+ public void setNsUri(
-+ final java.lang.String nsUri) {
-+ this._nsUri = nsUri;
++ public void validate(
++ )
++ throws org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
++ validator.validate(this);
+ }
+
-+ /**
-+ * Sets the value of field 'table'. The field 'table' has the
-+ * following description: An optional attribute used to specify
-+ * the name of the table
-+ * to which the given Java object is associated.
-+ *
-+ *
-+ * @param table the value of field 'table'.
-+ */
-+ public void setTable(
-+ final java.lang.String table) {
-+ this._table = table;
-+ }
-+
-+ /**
-+ * Sets the value of field 'xml'.
-+ *
-+ * @param xml the value of field 'xml'.
-+ */
-+ public void setXml(
-+ final java.lang.String xml) {
-+ this._xml = xml;
-+ }
-+
-+ /**
-+ * Method unmarshal.
-+ *
-+ * @param reader
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled org.exolab.castor.mapping.xml.MapTo
-+ */
-+ public static org.exolab.castor.mapping.xml.MapTo unmarshal(
-+ final java.io.Reader reader)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.exolab.castor.mapping.xml.MapTo) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.MapTo.class, reader);
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ */
-+ public void validate(
-+ )
-+ throws org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
-+ validator.validate(this);
-+ }
-+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/Property.java
-@@ -0,0 +1,110 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/Param.java
+@@ -0,0 +1,163 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
+
+package org.exolab.castor.mapping.xml;
+
+/**
-+ * Class Property.
++ * Class Param.
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class Property extends PropertyType
-+implements java.io.Serializable
-+{
++public class Param implements java.io.Serializable {
++
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
++ /**
++ * Field _name.
++ */
++ private java.lang.String _name;
++
++ /**
++ * Field _value.
++ */
++ private java.lang.String _value;
+
+
+ //----------------/
+ //- Constructors -/
+ //----------------/
+
-+ public Property() {
++ public Param() {
+ super();
+ }
+
@@ -4241,6 +4241,26 @@ Last-Update: 2010-06-27
+ //-----------/
+
+ /**
++ * Returns the value of field 'name'.
++ *
++ * @return the value of field 'Name'.
++ */
++ public java.lang.String getName(
++ ) {
++ return this._name;
++ }
++
++ /**
++ * Returns the value of field 'value'.
++ *
++ * @return the value of field 'Value'.
++ */
++ public java.lang.String getValue(
++ ) {
++ return this._value;
++ }
++
++ /**
+ * Method isValid.
+ *
+ * @return true if this object is valid according to the schema
@@ -4288,6 +4308,26 @@ Last-Update: 2010-06-27
+ }
+
+ /**
++ * Sets the value of field 'name'.
++ *
++ * @param name the value of field 'name'.
++ */
++ public void setName(
++ final java.lang.String name) {
++ this._name = name;
++ }
++
++ /**
++ * Sets the value of field 'value'.
++ *
++ * @param value the value of field 'value'.
++ */
++ public void setValue(
++ final java.lang.String value) {
++ this._value = value;
++ }
++
++ /**
+ * Method unmarshal.
+ *
+ * @param reader
@@ -4295,12 +4335,12 @@ Last-Update: 2010-06-27
+ * null or if any SAXException is thrown during marshaling
+ * @throws org.exolab.castor.xml.ValidationException if this
+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled org.exolab.castor.mapping.xml.Propert
++ * @return the unmarshaled org.exolab.castor.mapping.xml.Param
+ */
-+ public static org.exolab.castor.mapping.xml.Property unmarshal(
++ public static org.exolab.castor.mapping.xml.Param unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.exolab.castor.mapping.xml.Property) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.Property.class, reader);
++ return (org.exolab.castor.mapping.xml.Param) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.Param.class, reader);
+ }
+
+ /**
@@ -4318,11 +4358,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/CacheTypeMapping.java
-@@ -0,0 +1,413 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/ClassMapping.java
+@@ -0,0 +1,1073 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -4330,12 +4370,14 @@ Last-Update: 2010-06-27
+package org.exolab.castor.mapping.xml;
+
+/**
-+ * Class CacheTypeMapping.
++ * The 'class' element is used to store information about mapping
++ * of a class.
++ *
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class CacheTypeMapping implements java.io.Serializable {
++public class ClassMapping implements java.io.Serializable {
+
+
+ //--------------------------/
@@ -4343,44 +4385,124 @@ Last-Update: 2010-06-27
+ //--------------------------/
+
+ /**
-+ * Field _type.
++ * Specifies the fully qualified package name of the Java
++ * object needed to be mapped.
++ *
+ */
-+ private java.lang.String _type = "count-limited";
++ private java.lang.String _name;
+
+ /**
-+ * Field _debug.
++ * An optional attribute to specify the extension relationship
++ * between objects. Used only if mapping of the another object
++ *
++ * is provided.
++ *
+ */
-+ private boolean _debug = false;
++ private java.lang.Object _extends;
+
+ /**
-+ * keeps track of state for field: _debug
++ * An optional attribute to specify that one object depends on
++ * another object.
++ *
+ */
-+ private boolean _has_debug;
++ private java.lang.Object _depends;
+
+ /**
-+ * Field _capacity.
++ * An optional attribute for specifying the unique
++ * identificator
++ * of the object within the persistence storage.
++ *
+ */
-+ private long _capacity;
++ private java.util.List<java.lang.String> _identity;
+
+ /**
-+ * keeps track of state for field: _capacity
++ * Field _access.
+ */
-+ private boolean _has_capacity;
++ private org.exolab.castor.mapping.xml.types.ClassMappingAccessType _access = org.exolab.castor.mapping.xml.types.ClassMappingAccessType.fromValue("shared");
+
+ /**
-+ * Field _paramList.
++ * Field _keyGenerator.
+ */
-+ private java.util.List<org.exolab.castor.mapping.xml.Param> _paramList;
++ private java.lang.String _keyGenerator;
++
++ /**
++ * Specifies whether Castor should use reflection to establish
++ * XML data
++ * binding information at startup time for those fields that
++ * are not
++ * mapped explicitly.
++ *
++ */
++ private boolean _autoComplete = false;
++
++ /**
++ * keeps track of state for field: _autoComplete
++ */
++ private boolean _has_autoComplete;
++
++ /**
++ * Field _verifyConstructable.
++ */
++ private boolean _verifyConstructable = true;
++
++ /**
++ * keeps track of state for field: _verifyConstructable
++ */
++ private boolean _has_verifyConstructable;
++
++ /**
++ * If set to the name of a mapped field, this field will be
++ * used for check
++ * on object modifications during transactions (Castor JDO
++ * only).
++ *
++ */
++ private java.lang.String _version;
++
++ /**
++ * Field _description.
++ */
++ private java.lang.String _description;
++
++ /**
++ * Field _cacheTypeMapping.
++ */
++ private org.exolab.castor.mapping.xml.CacheTypeMapping _cacheTypeMapping;
++
++ /**
++ * The 'map-to' element is used for specifying the name of the
++ * item
++ * that should be associated with the given Java object.
++ *
++ */
++ private org.exolab.castor.mapping.xml.MapTo _mapTo;
++
++ /**
++ * Field _namedQueryList.
++ */
++ private java.util.List<org.exolab.castor.mapping.xml.NamedQuery> _namedQueryList;
++
++ /**
++ * Field _namedNativeQueryList.
++ */
++ private java.util.List<org.exolab.castor.mapping.xml.NamedNativeQuery> _namedNativeQueryList;
++
++ /**
++ * Field _classChoice.
++ */
++ private org.exolab.castor.mapping.xml.ClassChoice _classChoice;
+
+
+ //----------------/
+ //- Constructors -/
+ //----------------/
+
-+ public CacheTypeMapping() {
++ public ClassMapping() {
+ super();
-+ setType("count-limited");
-+ this._paramList = new java.util.ArrayList<org.exolab.castor.mapping.xml.Param>();
++ this._identity = new java.util.ArrayList<java.lang.String>();
++ setAccess(org.exolab.castor.mapping.xml.types.ClassMappingAccessType.fromValue("shared"));
++ this._namedQueryList = new java.util.ArrayList<org.exolab.castor.mapping.xml.NamedQuery>();
++ this._namedNativeQueryList = new java.util.ArrayList<org.exolab.castor.mapping.xml.NamedNativeQuery>();
+ }
+
+
@@ -4391,505 +4513,453 @@ Last-Update: 2010-06-27
+ /**
+ *
+ *
-+ * @param vParam
++ * @param vIdentity
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
-+ public void addParam(
-+ final org.exolab.castor.mapping.xml.Param vParam)
++ public void addIdentity(
++ final java.lang.String vIdentity)
+ throws java.lang.IndexOutOfBoundsException {
-+ this._paramList.add(vParam);
++ this._identity.add(vIdentity);
+ }
+
+ /**
+ *
+ *
+ * @param index
-+ * @param vParam
++ * @param vIdentity
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
-+ public void addParam(
++ public void addIdentity(
+ final int index,
-+ final org.exolab.castor.mapping.xml.Param vParam)
++ final java.lang.String vIdentity)
+ throws java.lang.IndexOutOfBoundsException {
-+ this._paramList.add(index, vParam);
++ this._identity.add(index, vIdentity);
+ }
+
+ /**
++ *
++ *
++ * @param vNamedNativeQuery
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public void deleteCapacity(
-+ ) {
-+ this._has_capacity= false;
++ public void addNamedNativeQuery(
++ final org.exolab.castor.mapping.xml.NamedNativeQuery vNamedNativeQuery)
++ throws java.lang.IndexOutOfBoundsException {
++ this._namedNativeQueryList.add(vNamedNativeQuery);
+ }
+
+ /**
++ *
++ *
++ * @param index
++ * @param vNamedNativeQuery
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public void deleteDebug(
-+ ) {
-+ this._has_debug= false;
++ public void addNamedNativeQuery(
++ final int index,
++ final org.exolab.castor.mapping.xml.NamedNativeQuery vNamedNativeQuery)
++ throws java.lang.IndexOutOfBoundsException {
++ this._namedNativeQueryList.add(index, vNamedNativeQuery);
+ }
+
+ /**
-+ * Method enumerateParam.
+ *
-+ * @return an Enumeration over all possible elements of this
-+ * collection
-+ */
-+ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.Param> enumerateParam(
-+ ) {
-+ return java.util.Collections.enumeration(this._paramList);
-+ }
-+
-+ /**
-+ * Returns the value of field 'capacity'.
+ *
-+ * @return the value of field 'Capacity'.
++ * @param vNamedQuery
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public long getCapacity(
-+ ) {
-+ return this._capacity;
++ public void addNamedQuery(
++ final org.exolab.castor.mapping.xml.NamedQuery vNamedQuery)
++ throws java.lang.IndexOutOfBoundsException {
++ this._namedQueryList.add(vNamedQuery);
+ }
+
+ /**
-+ * Returns the value of field 'debug'.
+ *
-+ * @return the value of field 'Debug'.
-+ */
-+ public boolean getDebug(
-+ ) {
-+ return this._debug;
-+ }
-+
-+ /**
-+ * Method getParam.
+ *
+ * @param index
++ * @param vNamedQuery
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
-+ * @return the value of the org.exolab.castor.mapping.xml.Param
-+ * at the given index
+ */
-+ public org.exolab.castor.mapping.xml.Param getParam(
-+ final int index)
++ public void addNamedQuery(
++ final int index,
++ final org.exolab.castor.mapping.xml.NamedQuery vNamedQuery)
+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._paramList.size()) {
-+ throw new IndexOutOfBoundsException("getParam: Index value '" + index + "' not in range [0.." + (this._paramList.size() - 1) + "]");
-+ }
-+
-+ return (org.exolab.castor.mapping.xml.Param) _paramList.get(index);
++ this._namedQueryList.add(index, vNamedQuery);
+ }
+
+ /**
-+ * Method getParam.Returns the contents of the collection in an
-+ * Array. <p>Note: Just in case the collection contents are
-+ * changing in another thread, we pass a 0-length Array of the
-+ * correct type into the API call. This way we <i>know</i>
-+ * that the Array returned is of exactly the correct length.
-+ *
-+ * @return this collection as an Array
+ */
-+ public org.exolab.castor.mapping.xml.Param[] getParam(
++ public void deleteAutoComplete(
+ ) {
-+ org.exolab.castor.mapping.xml.Param[] array = new org.exolab.castor.mapping.xml.Param[0];
-+ return (org.exolab.castor.mapping.xml.Param[]) this._paramList.toArray(array);
++ this._has_autoComplete= false;
+ }
+
+ /**
-+ * Method getParamCount.
-+ *
-+ * @return the size of this collection
+ */
-+ public int getParamCount(
++ public void deleteVerifyConstructable(
+ ) {
-+ return this._paramList.size();
++ this._has_verifyConstructable= false;
+ }
+
+ /**
-+ * Returns the value of field 'type'.
++ * Method enumerateIdentity.
+ *
-+ * @return the value of field 'Type'.
++ * @return an Enumeration over all possible elements of this
++ * collection
+ */
-+ public java.lang.String getType(
++ public java.util.Enumeration<? extends java.lang.String> enumerateIdentity(
+ ) {
-+ return this._type;
++ return java.util.Collections.enumeration(this._identity);
+ }
+
+ /**
-+ * Method hasCapacity.
++ * Method enumerateNamedNativeQuery.
+ *
-+ * @return true if at least one Capacity has been added
++ * @return an Enumeration over all possible elements of this
++ * collection
+ */
-+ public boolean hasCapacity(
++ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.NamedNativeQuery> enumerateNamedNativeQuery(
+ ) {
-+ return this._has_capacity;
++ return java.util.Collections.enumeration(this._namedNativeQueryList);
+ }
+
+ /**
-+ * Method hasDebug.
++ * Method enumerateNamedQuery.
+ *
-+ * @return true if at least one Debug has been added
++ * @return an Enumeration over all possible elements of this
++ * collection
+ */
-+ public boolean hasDebug(
++ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.NamedQuery> enumerateNamedQuery(
+ ) {
-+ return this._has_debug;
++ return java.util.Collections.enumeration(this._namedQueryList);
+ }
+
+ /**
-+ * Returns the value of field 'debug'.
++ * Returns the value of field 'access'.
+ *
-+ * @return the value of field 'Debug'.
++ * @return the value of field 'Access'.
+ */
-+ public boolean isDebug(
++ public org.exolab.castor.mapping.xml.types.ClassMappingAccessType getAccess(
+ ) {
-+ return this._debug;
++ return this._access;
+ }
+
+ /**
-+ * Method isValid.
++ * Returns the value of field 'autoComplete'. The field
++ * 'autoComplete' has the following description: Specifies
++ * whether Castor should use reflection to establish XML data
++ * binding information at startup time for those fields that
++ * are not
++ * mapped explicitly.
++ *
+ *
-+ * @return true if this object is valid according to the schema
++ * @return the value of field 'AutoComplete'.
+ */
-+ public boolean isValid(
++ public boolean getAutoComplete(
+ ) {
-+ try {
-+ validate();
-+ } catch (org.exolab.castor.xml.ValidationException vex) {
-+ return false;
-+ }
-+ return true;
++ return this._autoComplete;
+ }
+
+ /**
-+ * Method iterateParam.
++ * Returns the value of field 'cacheTypeMapping'.
+ *
-+ * @return an Iterator over all possible elements in this
-+ * collection
++ * @return the value of field 'CacheTypeMapping'.
+ */
-+ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.Param> iterateParam(
++ public org.exolab.castor.mapping.xml.CacheTypeMapping getCacheTypeMapping(
+ ) {
-+ return this._paramList.iterator();
++ return this._cacheTypeMapping;
+ }
+
+ /**
++ * Returns the value of field 'classChoice'.
+ *
-+ *
-+ * @param out
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
++ * @return the value of field 'ClassChoice'.
+ */
-+ public void marshal(
-+ final java.io.Writer out)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, out);
++ public org.exolab.castor.mapping.xml.ClassChoice getClassChoice(
++ ) {
++ return this._classChoice;
+ }
+
+ /**
++ * Returns the value of field 'depends'. The field 'depends'
++ * has the following description: An optional attribute to
++ * specify that one object depends on
++ * another object.
++ *
+ *
-+ *
-+ * @param handler
-+ * @throws java.io.IOException if an IOException occurs during
-+ * marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
++ * @return the value of field 'Depends'.
+ */
-+ public void marshal(
-+ final org.xml.sax.ContentHandler handler)
-+ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, handler);
++ public java.lang.Object getDepends(
++ ) {
++ return this._depends;
+ }
+
+ /**
++ * Returns the value of field 'description'.
++ *
++ * @return the value of field 'Description'.
+ */
-+ public void removeAllParam(
++ public java.lang.String getDescription(
+ ) {
-+ this._paramList.clear();
++ return this._description;
+ }
+
+ /**
-+ * Method removeParam.
++ * Returns the value of field 'extends'. The field 'extends'
++ * has the following description: An optional attribute to
++ * specify the extension relationship
++ * between objects. Used only if mapping of the another object
+ *
-+ * @param vParam
-+ * @return true if the object was removed from the collection.
++ * is provided.
++ *
++ *
++ * @return the value of field 'Extends'.
+ */
-+ public boolean removeParam(
-+ final org.exolab.castor.mapping.xml.Param vParam) {
-+ boolean removed = _paramList.remove(vParam);
-+ return removed;
++ public java.lang.Object getExtends(
++ ) {
++ return this._extends;
+ }
+
+ /**
-+ * Method removeParamAt.
++ * Method getIdentity.
+ *
+ * @param index
-+ * @return the element removed from the collection
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ * @return the value of the java.lang.String at the given index
+ */
-+ public org.exolab.castor.mapping.xml.Param removeParamAt(
-+ final int index) {
-+ java.lang.Object obj = this._paramList.remove(index);
-+ return (org.exolab.castor.mapping.xml.Param) obj;
++ public java.lang.String getIdentity(
++ final int index)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._identity.size()) {
++ throw new IndexOutOfBoundsException("getIdentity: Index value '" + index + "' not in range [0.." + (this._identity.size() - 1) + "]");
++ }
++
++ return (java.lang.String) _identity.get(index);
+ }
+
+ /**
-+ * Sets the value of field 'capacity'.
++ * Method getIdentity.Returns the contents of the collection in
++ * an Array. <p>Note: Just in case the collection contents
++ * are changing in another thread, we pass a 0-length Array of
++ * the correct type into the API call. This way we <i>know</i>
++ * that the Array returned is of exactly the correct length.
+ *
-+ * @param capacity the value of field 'capacity'.
++ * @return this collection as an Array
+ */
-+ public void setCapacity(
-+ final long capacity) {
-+ this._capacity = capacity;
-+ this._has_capacity = true;
++ public java.lang.String[] getIdentity(
++ ) {
++ java.lang.String[] array = new java.lang.String[0];
++ return (java.lang.String[]) this._identity.toArray(array);
+ }
+
+ /**
-+ * Sets the value of field 'debug'.
++ * Method getIdentityCount.
+ *
-+ * @param debug the value of field 'debug'.
++ * @return the size of this collection
+ */
-+ public void setDebug(
-+ final boolean debug) {
-+ this._debug = debug;
-+ this._has_debug = true;
++ public int getIdentityCount(
++ ) {
++ return this._identity.size();
+ }
+
+ /**
++ * Returns the value of field 'keyGenerator'.
+ *
-+ *
-+ * @param index
-+ * @param vParam
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @return the value of field 'KeyGenerator'.
+ */
-+ public void setParam(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.Param vParam)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._paramList.size()) {
-+ throw new IndexOutOfBoundsException("setParam: Index value '" + index + "' not in range [0.." + (this._paramList.size() - 1) + "]");
-+ }
-+
-+ this._paramList.set(index, vParam);
++ public java.lang.String getKeyGenerator(
++ ) {
++ return this._keyGenerator;
+ }
+
+ /**
++ * Returns the value of field 'mapTo'. The field 'mapTo' has
++ * the following description: The 'map-to' element is used for
++ * specifying the name of the item
++ * that should be associated with the given Java object.
++ *
+ *
-+ *
-+ * @param vParamArray
++ * @return the value of field 'MapTo'.
+ */
-+ public void setParam(
-+ final org.exolab.castor.mapping.xml.Param[] vParamArray) {
-+ //-- copy array
-+ _paramList.clear();
-+
-+ for (int i = 0; i < vParamArray.length; i++) {
-+ this._paramList.add(vParamArray[i]);
-+ }
++ public org.exolab.castor.mapping.xml.MapTo getMapTo(
++ ) {
++ return this._mapTo;
+ }
+
+ /**
-+ * Sets the value of field 'type'.
++ * Returns the value of field 'name'. The field 'name' has the
++ * following description: Specifies the fully qualified package
++ * name of the Java object needed to be mapped.
++ *
+ *
-+ * @param type the value of field 'type'.
++ * @return the value of field 'Name'.
+ */
-+ public void setType(
-+ final java.lang.String type) {
-+ this._type = type;
++ public java.lang.String getName(
++ ) {
++ return this._name;
+ }
+
+ /**
-+ * Method unmarshal.
++ * Method getNamedNativeQuery.
+ *
-+ * @param reader
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled
-+ * org.exolab.castor.mapping.xml.CacheTypeMapping
++ * @param index
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ * @return the value of the
++ * org.exolab.castor.mapping.xml.NamedNativeQuery at the given
++ * index
+ */
-+ public static org.exolab.castor.mapping.xml.CacheTypeMapping unmarshal(
-+ final java.io.Reader reader)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.exolab.castor.mapping.xml.CacheTypeMapping) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.CacheTypeMapping.class, reader);
++ public org.exolab.castor.mapping.xml.NamedNativeQuery getNamedNativeQuery(
++ final int index)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._namedNativeQueryList.size()) {
++ throw new IndexOutOfBoundsException("getNamedNativeQuery: Index value '" + index + "' not in range [0.." + (this._namedNativeQueryList.size() - 1) + "]");
++ }
++
++ return (org.exolab.castor.mapping.xml.NamedNativeQuery) _namedNativeQueryList.get(index);
+ }
+
+ /**
++ * Method getNamedNativeQuery.Returns the contents of the
++ * collection in an Array. <p>Note: Just in case the
++ * collection contents are changing in another thread, we pass
++ * a 0-length Array of the correct type into the API call.
++ * This way we <i>know</i> that the Array returned is of
++ * exactly the correct length.
+ *
-+ *
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
++ * @return this collection as an Array
+ */
-+ public void validate(
-+ )
-+ throws org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
-+ validator.validate(this);
++ public org.exolab.castor.mapping.xml.NamedNativeQuery[] getNamedNativeQuery(
++ ) {
++ org.exolab.castor.mapping.xml.NamedNativeQuery[] array = new org.exolab.castor.mapping.xml.NamedNativeQuery[0];
++ return (org.exolab.castor.mapping.xml.NamedNativeQuery[]) this._namedNativeQueryList.toArray(array);
+ }
+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/NamedQuery.java
-@@ -0,0 +1,331 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
-+
-+package org.exolab.castor.mapping.xml;
-+
-+/**
-+ * Class NamedQuery.
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+ at SuppressWarnings("serial")
-+public class NamedQuery implements java.io.Serializable {
-+
-+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
-+
-+ /**
-+ * Field _name.
-+ */
-+ private java.lang.String _name;
-+
-+ /**
-+ * Field _query.
-+ */
-+ private java.lang.String _query;
-+
+ /**
-+ * Field _queryHintList.
++ * Method getNamedNativeQueryCount.
++ *
++ * @return the size of this collection
+ */
-+ private java.util.List<org.exolab.castor.mapping.xml.QueryHint> _queryHintList;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
-+
-+ public NamedQuery() {
-+ super();
-+ this._queryHintList = new java.util.ArrayList<org.exolab.castor.mapping.xml.QueryHint>();
++ public int getNamedNativeQueryCount(
++ ) {
++ return this._namedNativeQueryList.size();
+ }
+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
-+
+ /**
++ * Method getNamedQuery.
+ *
-+ *
-+ * @param vQueryHint
++ * @param index
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
++ * @return the value of the
++ * org.exolab.castor.mapping.xml.NamedQuery at the given index
+ */
-+ public void addQueryHint(
-+ final org.exolab.castor.mapping.xml.QueryHint vQueryHint)
++ public org.exolab.castor.mapping.xml.NamedQuery getNamedQuery(
++ final int index)
+ throws java.lang.IndexOutOfBoundsException {
-+ this._queryHintList.add(vQueryHint);
++ // check bounds for index
++ if (index < 0 || index >= this._namedQueryList.size()) {
++ throw new IndexOutOfBoundsException("getNamedQuery: Index value '" + index + "' not in range [0.." + (this._namedQueryList.size() - 1) + "]");
++ }
++
++ return (org.exolab.castor.mapping.xml.NamedQuery) _namedQueryList.get(index);
+ }
+
+ /**
++ * Method getNamedQuery.Returns the contents of the collection
++ * in an Array. <p>Note: Just in case the collection contents
++ * are changing in another thread, we pass a 0-length Array of
++ * the correct type into the API call. This way we <i>know</i>
++ * that the Array returned is of exactly the correct length.
+ *
-+ *
-+ * @param index
-+ * @param vQueryHint
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @return this collection as an Array
+ */
-+ public void addQueryHint(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.QueryHint vQueryHint)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._queryHintList.add(index, vQueryHint);
++ public org.exolab.castor.mapping.xml.NamedQuery[] getNamedQuery(
++ ) {
++ org.exolab.castor.mapping.xml.NamedQuery[] array = new org.exolab.castor.mapping.xml.NamedQuery[0];
++ return (org.exolab.castor.mapping.xml.NamedQuery[]) this._namedQueryList.toArray(array);
+ }
+
+ /**
-+ * Method enumerateQueryHint.
++ * Method getNamedQueryCount.
+ *
-+ * @return an Enumeration over all possible elements of this
-+ * collection
++ * @return the size of this collection
+ */
-+ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.QueryHint> enumerateQueryHint(
++ public int getNamedQueryCount(
+ ) {
-+ return java.util.Collections.enumeration(this._queryHintList);
++ return this._namedQueryList.size();
+ }
+
+ /**
-+ * Returns the value of field 'name'.
++ * Returns the value of field 'verifyConstructable'.
+ *
-+ * @return the value of field 'Name'.
++ * @return the value of field 'VerifyConstructable'.
+ */
-+ public java.lang.String getName(
++ public boolean getVerifyConstructable(
+ ) {
-+ return this._name;
++ return this._verifyConstructable;
+ }
+
+ /**
-+ * Returns the value of field 'query'.
++ * Returns the value of field 'version'. The field 'version'
++ * has the following description: If set to the name of a
++ * mapped field, this field will be used for check
++ * on object modifications during transactions (Castor JDO
++ * only).
++ *
+ *
-+ * @return the value of field 'Query'.
++ * @return the value of field 'Version'.
+ */
-+ public java.lang.String getQuery(
++ public java.lang.String getVersion(
+ ) {
-+ return this._query;
++ return this._version;
+ }
+
+ /**
-+ * Method getQueryHint.
++ * Method hasAutoComplete.
+ *
-+ * @param index
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
-+ * @return the value of the
-+ * org.exolab.castor.mapping.xml.QueryHint at the given index
++ * @return true if at least one AutoComplete has been added
+ */
-+ public org.exolab.castor.mapping.xml.QueryHint getQueryHint(
-+ final int index)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._queryHintList.size()) {
-+ throw new IndexOutOfBoundsException("getQueryHint: Index value '" + index + "' not in range [0.." + (this._queryHintList.size() - 1) + "]");
-+ }
-+
-+ return (org.exolab.castor.mapping.xml.QueryHint) _queryHintList.get(index);
++ public boolean hasAutoComplete(
++ ) {
++ return this._has_autoComplete;
+ }
+
+ /**
-+ * Method getQueryHint.Returns the contents of the collection
-+ * in an Array. <p>Note: Just in case the collection contents
-+ * are changing in another thread, we pass a 0-length Array of
-+ * the correct type into the API call. This way we <i>know</i>
-+ * that the Array returned is of exactly the correct length.
++ * Method hasVerifyConstructable.
+ *
-+ * @return this collection as an Array
++ * @return true if at least one VerifyConstructable has been
++ * added
+ */
-+ public org.exolab.castor.mapping.xml.QueryHint[] getQueryHint(
++ public boolean hasVerifyConstructable(
+ ) {
-+ org.exolab.castor.mapping.xml.QueryHint[] array = new org.exolab.castor.mapping.xml.QueryHint[0];
-+ return (org.exolab.castor.mapping.xml.QueryHint[]) this._queryHintList.toArray(array);
++ return this._has_verifyConstructable;
+ }
+
+ /**
-+ * Method getQueryHintCount.
++ * Returns the value of field 'autoComplete'. The field
++ * 'autoComplete' has the following description: Specifies
++ * whether Castor should use reflection to establish XML data
++ * binding information at startup time for those fields that
++ * are not
++ * mapped explicitly.
++ *
+ *
-+ * @return the size of this collection
++ * @return the value of field 'AutoComplete'.
+ */
-+ public int getQueryHintCount(
++ public boolean isAutoComplete(
+ ) {
-+ return this._queryHintList.size();
++ return this._autoComplete;
+ }
+
+ /**
@@ -4908,14 +4978,46 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Method iterateQueryHint.
++ * Returns the value of field 'verifyConstructable'.
++ *
++ * @return the value of field 'VerifyConstructable'.
++ */
++ public boolean isVerifyConstructable(
++ ) {
++ return this._verifyConstructable;
++ }
++
++ /**
++ * Method iterateIdentity.
+ *
+ * @return an Iterator over all possible elements in this
+ * collection
+ */
-+ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.QueryHint> iterateQueryHint(
++ public java.util.Iterator<? extends java.lang.String> iterateIdentity(
+ ) {
-+ return this._queryHintList.iterator();
++ return this._identity.iterator();
++ }
++
++ /**
++ * Method iterateNamedNativeQuery.
++ *
++ * @return an Iterator over all possible elements in this
++ * collection
++ */
++ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.NamedNativeQuery> iterateNamedNativeQuery(
++ ) {
++ return this._namedNativeQueryList.iterator();
++ }
++
++ /**
++ * Method iterateNamedQuery.
++ *
++ * @return an Iterator over all possible elements in this
++ * collection
++ */
++ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.NamedQuery> iterateNamedQuery(
++ ) {
++ return this._namedQueryList.iterator();
+ }
+
+ /**
@@ -4952,206 +5054,470 @@ Last-Update: 2010-06-27
+
+ /**
+ */
-+ public void removeAllQueryHint(
++ public void removeAllIdentity(
+ ) {
-+ this._queryHintList.clear();
++ this._identity.clear();
+ }
+
+ /**
-+ * Method removeQueryHint.
++ */
++ public void removeAllNamedNativeQuery(
++ ) {
++ this._namedNativeQueryList.clear();
++ }
++
++ /**
++ */
++ public void removeAllNamedQuery(
++ ) {
++ this._namedQueryList.clear();
++ }
++
++ /**
++ * Method removeIdentity.
+ *
-+ * @param vQueryHint
++ * @param vIdentity
+ * @return true if the object was removed from the collection.
+ */
-+ public boolean removeQueryHint(
-+ final org.exolab.castor.mapping.xml.QueryHint vQueryHint) {
-+ boolean removed = _queryHintList.remove(vQueryHint);
++ public boolean removeIdentity(
++ final java.lang.String vIdentity) {
++ boolean removed = _identity.remove(vIdentity);
+ return removed;
+ }
+
+ /**
-+ * Method removeQueryHintAt.
++ * Method removeIdentityAt.
+ *
+ * @param index
+ * @return the element removed from the collection
+ */
-+ public org.exolab.castor.mapping.xml.QueryHint removeQueryHintAt(
++ public java.lang.String removeIdentityAt(
+ final int index) {
-+ java.lang.Object obj = this._queryHintList.remove(index);
-+ return (org.exolab.castor.mapping.xml.QueryHint) obj;
++ java.lang.Object obj = this._identity.remove(index);
++ return (java.lang.String) obj;
+ }
+
+ /**
-+ * Sets the value of field 'name'.
++ * Method removeNamedNativeQuery.
+ *
-+ * @param name the value of field 'name'.
++ * @param vNamedNativeQuery
++ * @return true if the object was removed from the collection.
+ */
-+ public void setName(
-+ final java.lang.String name) {
-+ this._name = name;
++ public boolean removeNamedNativeQuery(
++ final org.exolab.castor.mapping.xml.NamedNativeQuery vNamedNativeQuery) {
++ boolean removed = _namedNativeQueryList.remove(vNamedNativeQuery);
++ return removed;
+ }
+
+ /**
-+ * Sets the value of field 'query'.
++ * Method removeNamedNativeQueryAt.
+ *
-+ * @param query the value of field 'query'.
++ * @param index
++ * @return the element removed from the collection
+ */
-+ public void setQuery(
-+ final java.lang.String query) {
-+ this._query = query;
++ public org.exolab.castor.mapping.xml.NamedNativeQuery removeNamedNativeQueryAt(
++ final int index) {
++ java.lang.Object obj = this._namedNativeQueryList.remove(index);
++ return (org.exolab.castor.mapping.xml.NamedNativeQuery) obj;
+ }
+
+ /**
++ * Method removeNamedQuery.
+ *
++ * @param vNamedQuery
++ * @return true if the object was removed from the collection.
++ */
++ public boolean removeNamedQuery(
++ final org.exolab.castor.mapping.xml.NamedQuery vNamedQuery) {
++ boolean removed = _namedQueryList.remove(vNamedQuery);
++ return removed;
++ }
++
++ /**
++ * Method removeNamedQueryAt.
+ *
+ * @param index
-+ * @param vQueryHint
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @return the element removed from the collection
+ */
-+ public void setQueryHint(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.QueryHint vQueryHint)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._queryHintList.size()) {
-+ throw new IndexOutOfBoundsException("setQueryHint: Index value '" + index + "' not in range [0.." + (this._queryHintList.size() - 1) + "]");
-+ }
-+
-+ this._queryHintList.set(index, vQueryHint);
++ public org.exolab.castor.mapping.xml.NamedQuery removeNamedQueryAt(
++ final int index) {
++ java.lang.Object obj = this._namedQueryList.remove(index);
++ return (org.exolab.castor.mapping.xml.NamedQuery) obj;
+ }
+
+ /**
++ * Sets the value of field 'access'.
+ *
-+ *
-+ * @param vQueryHintArray
++ * @param access the value of field 'access'.
+ */
-+ public void setQueryHint(
-+ final org.exolab.castor.mapping.xml.QueryHint[] vQueryHintArray) {
-+ //-- copy array
-+ _queryHintList.clear();
-+
-+ for (int i = 0; i < vQueryHintArray.length; i++) {
-+ this._queryHintList.add(vQueryHintArray[i]);
-+ }
++ public void setAccess(
++ final org.exolab.castor.mapping.xml.types.ClassMappingAccessType access) {
++ this._access = access;
+ }
+
+ /**
-+ * Method unmarshal.
++ * Sets the value of field 'autoComplete'. The field
++ * 'autoComplete' has the following description: Specifies
++ * whether Castor should use reflection to establish XML data
++ * binding information at startup time for those fields that
++ * are not
++ * mapped explicitly.
++ *
+ *
-+ * @param reader
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled
-+ * org.exolab.castor.mapping.xml.NamedQuery
++ * @param autoComplete the value of field 'autoComplete'.
+ */
-+ public static org.exolab.castor.mapping.xml.NamedQuery unmarshal(
-+ final java.io.Reader reader)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.exolab.castor.mapping.xml.NamedQuery) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.NamedQuery.class, reader);
++ public void setAutoComplete(
++ final boolean autoComplete) {
++ this._autoComplete = autoComplete;
++ this._has_autoComplete = true;
+ }
+
+ /**
++ * Sets the value of field 'cacheTypeMapping'.
+ *
-+ *
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
++ * @param cacheTypeMapping the value of field 'cacheTypeMapping'
+ */
-+ public void validate(
-+ )
-+ throws org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
-+ validator.validate(this);
++ public void setCacheTypeMapping(
++ final org.exolab.castor.mapping.xml.CacheTypeMapping cacheTypeMapping) {
++ this._cacheTypeMapping = cacheTypeMapping;
+ }
+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/ClassChoice.java
-@@ -0,0 +1,451 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
-+
-+package org.exolab.castor.mapping.xml;
-+
-+/**
-+ * Class ClassChoice.
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+ at SuppressWarnings("serial")
-+public class ClassChoice implements java.io.Serializable {
-+
-+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
++ /**
++ * Sets the value of field 'classChoice'.
++ *
++ * @param classChoice the value of field 'classChoice'.
++ */
++ public void setClassChoice(
++ final org.exolab.castor.mapping.xml.ClassChoice classChoice) {
++ this._classChoice = classChoice;
++ }
+
+ /**
-+ * The 'field' element is used to describe the property of a
-+ * Java object.
++ * Sets the value of field 'depends'. The field 'depends' has
++ * the following description: An optional attribute to specify
++ * that one object depends on
++ * another object.
+ *
++ *
++ * @param depends the value of field 'depends'.
+ */
-+ private java.util.List<org.exolab.castor.mapping.xml.FieldMapping> _fieldMappingList;
++ public void setDepends(
++ final java.lang.Object depends) {
++ this._depends = depends;
++ }
+
+ /**
-+ * Field _containerList.
++ * Sets the value of field 'description'.
++ *
++ * @param description the value of field 'description'.
+ */
-+ private java.util.List<org.exolab.castor.mapping.xml.Container> _containerList;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
-+
-+ public ClassChoice() {
-+ super();
-+ this._fieldMappingList = new java.util.ArrayList<org.exolab.castor.mapping.xml.FieldMapping>();
-+ this._containerList = new java.util.ArrayList<org.exolab.castor.mapping.xml.Container>();
++ public void setDescription(
++ final java.lang.String description) {
++ this._description = description;
+ }
+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
-+
+ /**
++ * Sets the value of field 'extends'. The field 'extends' has
++ * the following description: An optional attribute to specify
++ * the extension relationship
++ * between objects. Used only if mapping of the another object
+ *
++ * is provided.
++ *
+ *
-+ * @param vContainer
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @param _extends
++ * @param extends the value of field 'extends'.
+ */
-+ public void addContainer(
-+ final org.exolab.castor.mapping.xml.Container vContainer)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._containerList.add(vContainer);
++ public void setExtends(
++ final java.lang.Object _extends) {
++ this._extends = _extends;
+ }
+
+ /**
+ *
+ *
+ * @param index
-+ * @param vContainer
++ * @param vIdentity
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
-+ public void addContainer(
++ public void setIdentity(
+ final int index,
-+ final org.exolab.castor.mapping.xml.Container vContainer)
++ final java.lang.String vIdentity)
+ throws java.lang.IndexOutOfBoundsException {
-+ this._containerList.add(index, vContainer);
++ // check bounds for index
++ if (index < 0 || index >= this._identity.size()) {
++ throw new IndexOutOfBoundsException("setIdentity: Index value '" + index + "' not in range [0.." + (this._identity.size() - 1) + "]");
++ }
++
++ this._identity.set(index, vIdentity);
+ }
+
+ /**
+ *
+ *
-+ * @param vFieldMapping
++ * @param vIdentityArray
++ */
++ public void setIdentity(
++ final java.lang.String[] vIdentityArray) {
++ //-- copy array
++ _identity.clear();
++
++ for (int i = 0; i < vIdentityArray.length; i++) {
++ this._identity.add(vIdentityArray[i]);
++ }
++ }
++
++ /**
++ * Sets the value of field 'keyGenerator'.
++ *
++ * @param keyGenerator the value of field 'keyGenerator'.
++ */
++ public void setKeyGenerator(
++ final java.lang.String keyGenerator) {
++ this._keyGenerator = keyGenerator;
++ }
++
++ /**
++ * Sets the value of field 'mapTo'. The field 'mapTo' has the
++ * following description: The 'map-to' element is used for
++ * specifying the name of the item
++ * that should be associated with the given Java object.
++ *
++ *
++ * @param mapTo the value of field 'mapTo'.
++ */
++ public void setMapTo(
++ final org.exolab.castor.mapping.xml.MapTo mapTo) {
++ this._mapTo = mapTo;
++ }
++
++ /**
++ * Sets the value of field 'name'. The field 'name' has the
++ * following description: Specifies the fully qualified package
++ * name of the Java object needed to be mapped.
++ *
++ *
++ * @param name the value of field 'name'.
++ */
++ public void setName(
++ final java.lang.String name) {
++ this._name = name;
++ }
++
++ /**
++ *
++ *
++ * @param index
++ * @param vNamedNativeQuery
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void setNamedNativeQuery(
++ final int index,
++ final org.exolab.castor.mapping.xml.NamedNativeQuery vNamedNativeQuery)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._namedNativeQueryList.size()) {
++ throw new IndexOutOfBoundsException("setNamedNativeQuery: Index value '" + index + "' not in range [0.." + (this._namedNativeQueryList.size() - 1) + "]");
++ }
++
++ this._namedNativeQueryList.set(index, vNamedNativeQuery);
++ }
++
++ /**
++ *
++ *
++ * @param vNamedNativeQueryArray
++ */
++ public void setNamedNativeQuery(
++ final org.exolab.castor.mapping.xml.NamedNativeQuery[] vNamedNativeQueryArray) {
++ //-- copy array
++ _namedNativeQueryList.clear();
++
++ for (int i = 0; i < vNamedNativeQueryArray.length; i++) {
++ this._namedNativeQueryList.add(vNamedNativeQueryArray[i]);
++ }
++ }
++
++ /**
++ *
++ *
++ * @param index
++ * @param vNamedQuery
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void setNamedQuery(
++ final int index,
++ final org.exolab.castor.mapping.xml.NamedQuery vNamedQuery)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._namedQueryList.size()) {
++ throw new IndexOutOfBoundsException("setNamedQuery: Index value '" + index + "' not in range [0.." + (this._namedQueryList.size() - 1) + "]");
++ }
++
++ this._namedQueryList.set(index, vNamedQuery);
++ }
++
++ /**
++ *
++ *
++ * @param vNamedQueryArray
++ */
++ public void setNamedQuery(
++ final org.exolab.castor.mapping.xml.NamedQuery[] vNamedQueryArray) {
++ //-- copy array
++ _namedQueryList.clear();
++
++ for (int i = 0; i < vNamedQueryArray.length; i++) {
++ this._namedQueryList.add(vNamedQueryArray[i]);
++ }
++ }
++
++ /**
++ * Sets the value of field 'verifyConstructable'.
++ *
++ * @param verifyConstructable the value of field
++ * 'verifyConstructable'.
++ */
++ public void setVerifyConstructable(
++ final boolean verifyConstructable) {
++ this._verifyConstructable = verifyConstructable;
++ this._has_verifyConstructable = true;
++ }
++
++ /**
++ * Sets the value of field 'version'. The field 'version' has
++ * the following description: If set to the name of a mapped
++ * field, this field will be used for check
++ * on object modifications during transactions (Castor JDO
++ * only).
++ *
++ *
++ * @param version the value of field 'version'.
++ */
++ public void setVersion(
++ final java.lang.String version) {
++ this._version = version;
++ }
++
++ /**
++ * Method unmarshal.
++ *
++ * @param reader
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @return the unmarshaled
++ * org.exolab.castor.mapping.xml.ClassMapping
++ */
++ public static org.exolab.castor.mapping.xml.ClassMapping unmarshal(
++ final java.io.Reader reader)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ return (org.exolab.castor.mapping.xml.ClassMapping) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.ClassMapping.class, reader);
++ }
++
++ /**
++ *
++ *
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ */
++ public void validate(
++ )
++ throws org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
++ validator.validate(this);
++ }
++
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/ClassChoice.java
+@@ -0,0 +1,451 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.exolab.castor.mapping.xml;
++
++/**
++ * Class ClassChoice.
++ *
++ * @version $Revision$ $Date$
++ */
++ at SuppressWarnings("serial")
++public class ClassChoice implements java.io.Serializable {
++
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
++ /**
++ * The 'field' element is used to describe the property of a
++ * Java object.
++ *
++ */
++ private java.util.List<org.exolab.castor.mapping.xml.FieldMapping> _fieldMappingList;
++
++ /**
++ * Field _containerList.
++ */
++ private java.util.List<org.exolab.castor.mapping.xml.Container> _containerList;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public ClassChoice() {
++ super();
++ this._fieldMappingList = new java.util.ArrayList<org.exolab.castor.mapping.xml.FieldMapping>();
++ this._containerList = new java.util.ArrayList<org.exolab.castor.mapping.xml.Container>();
++ }
++
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
++ /**
++ *
++ *
++ * @param vContainer
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void addContainer(
++ final org.exolab.castor.mapping.xml.Container vContainer)
++ throws java.lang.IndexOutOfBoundsException {
++ this._containerList.add(vContainer);
++ }
++
++ /**
++ *
++ *
++ * @param index
++ * @param vContainer
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ */
++ public void addContainer(
++ final int index,
++ final org.exolab.castor.mapping.xml.Container vContainer)
++ throws java.lang.IndexOutOfBoundsException {
++ this._containerList.add(index, vContainer);
++ }
++
++ /**
++ *
++ *
++ * @param vFieldMapping
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
@@ -5522,11 +5888,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/Sql.java
-@@ -0,0 +1,674 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/Sql.java
+@@ -0,0 +1,722 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -5585,7 +5951,19 @@ Last-Update: 2010-06-27
+ private java.util.List<java.lang.String> _manyKey;
+
+ /**
-+ * Field _readOnly.
++ * An optional attribute to specify cascading support; possible
++ * values are
++ * 'none', 'all', 'create', 'delete' and 'update'; it is
++ * possible to use more than one
++ * of those values (when not using 'all' or 'none'), using
++ * whitespace as a
++ * delimiter (as in 'create delete').
++ *
++ */
++ private java.lang.String _cascading;
++
++ /**
++ * Field _readOnly.
+ */
+ private boolean _readOnly = false;
+
@@ -5607,7 +5985,7 @@ Last-Update: 2010-06-27
+ /**
+ * Field _dirty.
+ */
-+ private org.exolab.castor.mapping.xml.types.SqlDirtyType _dirty = org.exolab.castor.mapping.xml.types.SqlDirtyType.valueOf("check");
++ private org.exolab.castor.mapping.xml.types.SqlDirtyType _dirty = org.exolab.castor.mapping.xml.types.SqlDirtyType.fromValue("check");
+
+
+ //----------------/
@@ -5618,7 +5996,7 @@ Last-Update: 2010-06-27
+ super();
+ this._name = new java.util.ArrayList<java.lang.String>();
+ this._manyKey = new java.util.ArrayList<java.lang.String>();
-+ setDirty(org.exolab.castor.mapping.xml.types.SqlDirtyType.valueOf("check"));
++ setDirty(org.exolab.castor.mapping.xml.types.SqlDirtyType.fromValue("check"));
+ }
+
+
@@ -5719,6 +6097,24 @@ Last-Update: 2010-06-27
+ }
+
+ /**
++ * Returns the value of field 'cascading'. The field
++ * 'cascading' has the following description: An optional
++ * attribute to specify cascading support; possible values are
++ * 'none', 'all', 'create', 'delete' and 'update'; it is
++ * possible to use more than one
++ * of those values (when not using 'all' or 'none'), using
++ * whitespace as a
++ * delimiter (as in 'create delete').
++ *
++ *
++ * @return the value of field 'Cascading'.
++ */
++ public java.lang.String getCascading(
++ ) {
++ return this._cascading;
++ }
++
++ /**
+ * Returns the value of field 'dirty'.
+ *
+ * @return the value of field 'Dirty'.
@@ -6037,6 +6433,24 @@ Last-Update: 2010-06-27
+ }
+
+ /**
++ * Sets the value of field 'cascading'. The field 'cascading'
++ * has the following description: An optional attribute to
++ * specify cascading support; possible values are
++ * 'none', 'all', 'create', 'delete' and 'update'; it is
++ * possible to use more than one
++ * of those values (when not using 'all' or 'none'), using
++ * whitespace as a
++ * delimiter (as in 'create delete').
++ *
++ *
++ * @param cascading the value of field 'cascading'.
++ */
++ public void setCascading(
++ final java.lang.String cascading) {
++ this._cascading = cascading;
++ }
++
++ /**
+ * Sets the value of field 'dirty'.
+ *
+ * @param dirty the value of field 'dirty'.
@@ -6199,129 +6613,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/PropertyType.java
-@@ -0,0 +1,115 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
-+
-+package org.exolab.castor.mapping.xml;
-+
-+/**
-+ * Class PropertyType.
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+ at SuppressWarnings("serial")
-+public abstract class PropertyType implements java.io.Serializable {
-+
-+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
-+
-+ /**
-+ * Field _name.
-+ */
-+ private java.lang.String _name;
-+
-+ /**
-+ * Field _value.
-+ */
-+ private java.lang.String _value;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
-+
-+ public PropertyType() {
-+ super();
-+ }
-+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
-+
-+ /**
-+ * Returns the value of field 'name'.
-+ *
-+ * @return the value of field 'Name'.
-+ */
-+ public java.lang.String getName(
-+ ) {
-+ return this._name;
-+ }
-+
-+ /**
-+ * Returns the value of field 'value'.
-+ *
-+ * @return the value of field 'Value'.
-+ */
-+ public java.lang.String getValue(
-+ ) {
-+ return this._value;
-+ }
-+
-+ /**
-+ * Method isValid.
-+ *
-+ * @return true if this object is valid according to the schema
-+ */
-+ public boolean isValid(
-+ ) {
-+ try {
-+ validate();
-+ } catch (org.exolab.castor.xml.ValidationException vex) {
-+ return false;
-+ }
-+ return true;
-+ }
-+
-+ /**
-+ * Sets the value of field 'name'.
-+ *
-+ * @param name the value of field 'name'.
-+ */
-+ public void setName(
-+ final java.lang.String name) {
-+ this._name = name;
-+ }
-+
-+ /**
-+ * Sets the value of field 'value'.
-+ *
-+ * @param value the value of field 'value'.
-+ */
-+ public void setValue(
-+ final java.lang.String value) {
-+ this._value = value;
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ */
-+ public void validate(
-+ )
-+ throws org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
-+ validator.validate(this);
-+ }
-+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/FieldHandlerDef.java
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/KeyGeneratorDef.java
@@ -0,0 +1,331 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -6329,12 +6625,12 @@ Last-Update: 2010-06-27
+package org.exolab.castor.mapping.xml;
+
+/**
-+ * Class FieldHandlerDef.
++ * Class KeyGeneratorDef.
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class FieldHandlerDef implements java.io.Serializable {
++public class KeyGeneratorDef implements java.io.Serializable {
+
+
+ //--------------------------/
@@ -6347,9 +6643,9 @@ Last-Update: 2010-06-27
+ private java.lang.String _name;
+
+ /**
-+ * Field _clazz.
++ * Field _alias.
+ */
-+ private java.lang.String _clazz;
++ private java.lang.String _alias;
+
+ /**
+ * Field _paramList.
@@ -6361,7 +6657,7 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public FieldHandlerDef() {
++ public KeyGeneratorDef() {
+ super();
+ this._paramList = new java.util.ArrayList<org.exolab.castor.mapping.xml.Param>();
+ }
@@ -6411,13 +6707,13 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Returns the value of field 'clazz'.
++ * Returns the value of field 'alias'.
+ *
-+ * @return the value of field 'Clazz'.
++ * @return the value of field 'Alias'.
+ */
-+ public java.lang.String getClazz(
++ public java.lang.String getAlias(
+ ) {
-+ return this._clazz;
++ return this._alias;
+ }
+
+ /**
@@ -6565,13 +6861,13 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Sets the value of field 'clazz'.
++ * Sets the value of field 'alias'.
+ *
-+ * @param clazz the value of field 'clazz'.
++ * @param alias the value of field 'alias'.
+ */
-+ public void setClazz(
-+ final java.lang.String clazz) {
-+ this._clazz = clazz;
++ public void setAlias(
++ final java.lang.String alias) {
++ this._alias = alias;
+ }
+
+ /**
@@ -6628,12 +6924,12 @@ Last-Update: 2010-06-27
+ * @throws org.exolab.castor.xml.ValidationException if this
+ * object is an invalid instance according to the schema
+ * @return the unmarshaled
-+ * org.exolab.castor.mapping.xml.FieldHandlerDef
++ * org.exolab.castor.mapping.xml.KeyGeneratorDef
+ */
-+ public static org.exolab.castor.mapping.xml.FieldHandlerDef unmarshal(
++ public static org.exolab.castor.mapping.xml.KeyGeneratorDef unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.exolab.castor.mapping.xml.FieldHandlerDef) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.FieldHandlerDef.class, reader);
++ return (org.exolab.castor.mapping.xml.KeyGeneratorDef) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.KeyGeneratorDef.class, reader);
+ }
+
+ /**
@@ -6651,11 +6947,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/Include.java
-@@ -0,0 +1,138 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/Container.java
+@@ -0,0 +1,413 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -6663,12 +6959,12 @@ Last-Update: 2010-06-27
+package org.exolab.castor.mapping.xml;
+
+/**
-+ * Class Include.
++ * Class Container.
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class Include implements java.io.Serializable {
++public class Container implements java.io.Serializable {
+
+
+ //--------------------------/
@@ -6676,16 +6972,68 @@ Last-Update: 2010-06-27
+ //--------------------------/
+
+ /**
-+ * Field _href.
++ * Field _name.
+ */
-+ private java.lang.String _href;
++ private java.lang.String _name;
++
++ /**
++ * Field _type.
++ */
++ private java.lang.String _type;
++
++ /**
++ * Field _required.
++ */
++ private boolean _required = false;
++
++ /**
++ * keeps track of state for field: _required
++ */
++ private boolean _has_required;
++
++ /**
++ * Field _direct.
++ */
++ private boolean _direct = false;
++
++ /**
++ * keeps track of state for field: _direct
++ */
++ private boolean _has_direct;
++
++ /**
++ * Field _getMethod.
++ */
++ private java.lang.String _getMethod;
++
++ /**
++ * Field _setMethod.
++ */
++ private java.lang.String _setMethod;
++
++ /**
++ * Field _createMethod.
++ */
++ private java.lang.String _createMethod;
++
++ /**
++ * Field _description.
++ */
++ private java.lang.String _description;
++
++ /**
++ * The 'field' element is used to describe the property of a
++ * Java object.
++ *
++ */
++ private org.exolab.castor.mapping.xml.FieldMapping _fieldMapping;
+
+
+ //----------------/
+ //- Constructors -/
+ //----------------/
+
-+ public Include() {
++ public Container() {
+ super();
+ }
+
@@ -6695,521 +7043,482 @@ Last-Update: 2010-06-27
+ //-----------/
+
+ /**
-+ * Returns the value of field 'href'.
-+ *
-+ * @return the value of field 'Href'.
+ */
-+ public java.lang.String getHref(
++ public void deleteDirect(
+ ) {
-+ return this._href;
++ this._has_direct= false;
+ }
+
+ /**
-+ * Method isValid.
-+ *
-+ * @return true if this object is valid according to the schema
+ */
-+ public boolean isValid(
++ public void deleteRequired(
+ ) {
-+ try {
-+ validate();
-+ } catch (org.exolab.castor.xml.ValidationException vex) {
-+ return false;
-+ }
-+ return true;
++ this._has_required= false;
+ }
+
+ /**
++ * Returns the value of field 'createMethod'.
+ *
-+ *
-+ * @param out
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
++ * @return the value of field 'CreateMethod'.
+ */
-+ public void marshal(
-+ final java.io.Writer out)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, out);
++ public java.lang.String getCreateMethod(
++ ) {
++ return this._createMethod;
+ }
+
+ /**
++ * Returns the value of field 'description'.
+ *
-+ *
-+ * @param handler
-+ * @throws java.io.IOException if an IOException occurs during
-+ * marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
++ * @return the value of field 'Description'.
+ */
-+ public void marshal(
-+ final org.xml.sax.ContentHandler handler)
-+ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Marshaller.marshal(this, handler);
++ public java.lang.String getDescription(
++ ) {
++ return this._description;
+ }
+
+ /**
-+ * Sets the value of field 'href'.
++ * Returns the value of field 'direct'.
+ *
-+ * @param href the value of field 'href'.
++ * @return the value of field 'Direct'.
+ */
-+ public void setHref(
-+ final java.lang.String href) {
-+ this._href = href;
++ public boolean getDirect(
++ ) {
++ return this._direct;
+ }
+
+ /**
-+ * Method unmarshal.
++ * Returns the value of field 'fieldMapping'. The field
++ * 'fieldMapping' has the following description: The 'field'
++ * element is used to describe the property of a Java object.
++ *
+ *
-+ * @param reader
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled org.exolab.castor.mapping.xml.Include
++ * @return the value of field 'FieldMapping'.
+ */
-+ public static org.exolab.castor.mapping.xml.Include unmarshal(
-+ final java.io.Reader reader)
-+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.exolab.castor.mapping.xml.Include) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.Include.class, reader);
++ public org.exolab.castor.mapping.xml.FieldMapping getFieldMapping(
++ ) {
++ return this._fieldMapping;
+ }
+
+ /**
++ * Returns the value of field 'getMethod'.
+ *
-+ *
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
++ * @return the value of field 'GetMethod'.
+ */
-+ public void validate(
-+ )
-+ throws org.exolab.castor.xml.ValidationException {
-+ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
-+ validator.validate(this);
++ public java.lang.String getGetMethod(
++ ) {
++ return this._getMethod;
+ }
+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/MappingRoot.java
-@@ -0,0 +1,814 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
-+
-+package org.exolab.castor.mapping.xml;
-+
-+/**
-+ * Class MappingRoot.
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+ at SuppressWarnings("serial")
-+public class MappingRoot implements java.io.Serializable {
-+
-+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
-+
+ /**
-+ * Field _description.
++ * Returns the value of field 'name'.
++ *
++ * @return the value of field 'Name'.
+ */
-+ private java.lang.String _description;
++ public java.lang.String getName(
++ ) {
++ return this._name;
++ }
+
+ /**
-+ * Field _includeList.
++ * Returns the value of field 'required'.
++ *
++ * @return the value of field 'Required'.
+ */
-+ private java.util.List<org.exolab.castor.mapping.xml.Include> _includeList;
++ public boolean getRequired(
++ ) {
++ return this._required;
++ }
+
+ /**
-+ * The 'class' element is used to store information about
-+ * mapping of a class.
-+ *
++ * Returns the value of field 'setMethod'.
++ *
++ * @return the value of field 'SetMethod'.
+ */
-+ private java.util.List<org.exolab.castor.mapping.xml.ClassMapping> _classMappingList;
++ public java.lang.String getSetMethod(
++ ) {
++ return this._setMethod;
++ }
+
+ /**
-+ * Field _keyGeneratorDefList.
++ * Returns the value of field 'type'.
++ *
++ * @return the value of field 'Type'.
+ */
-+ private java.util.List<org.exolab.castor.mapping.xml.KeyGeneratorDef> _keyGeneratorDefList;
++ public java.lang.String getType(
++ ) {
++ return this._type;
++ }
+
+ /**
-+ * Field _fieldHandlerDefList.
++ * Method hasDirect.
++ *
++ * @return true if at least one Direct has been added
+ */
-+ private java.util.List<org.exolab.castor.mapping.xml.FieldHandlerDef> _fieldHandlerDefList;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
-+
-+ public MappingRoot() {
-+ super();
-+ this._includeList = new java.util.ArrayList<org.exolab.castor.mapping.xml.Include>();
-+ this._classMappingList = new java.util.ArrayList<org.exolab.castor.mapping.xml.ClassMapping>();
-+ this._keyGeneratorDefList = new java.util.ArrayList<org.exolab.castor.mapping.xml.KeyGeneratorDef>();
-+ this._fieldHandlerDefList = new java.util.ArrayList<org.exolab.castor.mapping.xml.FieldHandlerDef>();
++ public boolean hasDirect(
++ ) {
++ return this._has_direct;
+ }
+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
-+
+ /**
++ * Method hasRequired.
+ *
-+ *
-+ * @param vClassMapping
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @return true if at least one Required has been added
+ */
-+ public void addClassMapping(
-+ final org.exolab.castor.mapping.xml.ClassMapping vClassMapping)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._classMappingList.add(vClassMapping);
++ public boolean hasRequired(
++ ) {
++ return this._has_required;
+ }
+
+ /**
++ * Returns the value of field 'direct'.
+ *
-+ *
-+ * @param index
-+ * @param vClassMapping
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @return the value of field 'Direct'.
+ */
-+ public void addClassMapping(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.ClassMapping vClassMapping)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._classMappingList.add(index, vClassMapping);
++ public boolean isDirect(
++ ) {
++ return this._direct;
+ }
+
+ /**
++ * Returns the value of field 'required'.
+ *
-+ *
-+ * @param vFieldHandlerDef
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @return the value of field 'Required'.
+ */
-+ public void addFieldHandlerDef(
-+ final org.exolab.castor.mapping.xml.FieldHandlerDef vFieldHandlerDef)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._fieldHandlerDefList.add(vFieldHandlerDef);
++ public boolean isRequired(
++ ) {
++ return this._required;
+ }
+
+ /**
++ * Method isValid.
+ *
-+ *
-+ * @param index
-+ * @param vFieldHandlerDef
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @return true if this object is valid according to the schema
+ */
-+ public void addFieldHandlerDef(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.FieldHandlerDef vFieldHandlerDef)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._fieldHandlerDefList.add(index, vFieldHandlerDef);
++ public boolean isValid(
++ ) {
++ try {
++ validate();
++ } catch (org.exolab.castor.xml.ValidationException vex) {
++ return false;
++ }
++ return true;
+ }
+
+ /**
+ *
+ *
-+ * @param vInclude
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @param out
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
+ */
-+ public void addInclude(
-+ final org.exolab.castor.mapping.xml.Include vInclude)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._includeList.add(vInclude);
++ public void marshal(
++ final java.io.Writer out)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, out);
+ }
+
+ /**
+ *
+ *
-+ * @param index
-+ * @param vInclude
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @param handler
++ * @throws java.io.IOException if an IOException occurs during
++ * marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
+ */
-+ public void addInclude(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.Include vInclude)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._includeList.add(index, vInclude);
++ public void marshal(
++ final org.xml.sax.ContentHandler handler)
++ throws java.io.IOException, org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Marshaller.marshal(this, handler);
+ }
+
+ /**
++ * Sets the value of field 'createMethod'.
+ *
-+ *
-+ * @param vKeyGeneratorDef
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @param createMethod the value of field 'createMethod'.
+ */
-+ public void addKeyGeneratorDef(
-+ final org.exolab.castor.mapping.xml.KeyGeneratorDef vKeyGeneratorDef)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._keyGeneratorDefList.add(vKeyGeneratorDef);
++ public void setCreateMethod(
++ final java.lang.String createMethod) {
++ this._createMethod = createMethod;
+ }
+
+ /**
++ * Sets the value of field 'description'.
+ *
-+ *
-+ * @param index
-+ * @param vKeyGeneratorDef
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
++ * @param description the value of field 'description'.
+ */
-+ public void addKeyGeneratorDef(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.KeyGeneratorDef vKeyGeneratorDef)
-+ throws java.lang.IndexOutOfBoundsException {
-+ this._keyGeneratorDefList.add(index, vKeyGeneratorDef);
++ public void setDescription(
++ final java.lang.String description) {
++ this._description = description;
+ }
+
+ /**
-+ * Method enumerateClassMapping.
++ * Sets the value of field 'direct'.
+ *
-+ * @return an Enumeration over all possible elements of this
-+ * collection
++ * @param direct the value of field 'direct'.
+ */
-+ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.ClassMapping> enumerateClassMapping(
-+ ) {
-+ return java.util.Collections.enumeration(this._classMappingList);
++ public void setDirect(
++ final boolean direct) {
++ this._direct = direct;
++ this._has_direct = true;
+ }
+
+ /**
-+ * Method enumerateFieldHandlerDef.
++ * Sets the value of field 'fieldMapping'. The field
++ * 'fieldMapping' has the following description: The 'field'
++ * element is used to describe the property of a Java object.
++ *
+ *
-+ * @return an Enumeration over all possible elements of this
-+ * collection
++ * @param fieldMapping the value of field 'fieldMapping'.
+ */
-+ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.FieldHandlerDef> enumerateFieldHandlerDef(
-+ ) {
-+ return java.util.Collections.enumeration(this._fieldHandlerDefList);
++ public void setFieldMapping(
++ final org.exolab.castor.mapping.xml.FieldMapping fieldMapping) {
++ this._fieldMapping = fieldMapping;
+ }
+
+ /**
-+ * Method enumerateInclude.
++ * Sets the value of field 'getMethod'.
+ *
-+ * @return an Enumeration over all possible elements of this
-+ * collection
++ * @param getMethod the value of field 'getMethod'.
+ */
-+ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.Include> enumerateInclude(
-+ ) {
-+ return java.util.Collections.enumeration(this._includeList);
++ public void setGetMethod(
++ final java.lang.String getMethod) {
++ this._getMethod = getMethod;
+ }
+
+ /**
-+ * Method enumerateKeyGeneratorDef.
++ * Sets the value of field 'name'.
+ *
-+ * @return an Enumeration over all possible elements of this
-+ * collection
++ * @param name the value of field 'name'.
+ */
-+ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.KeyGeneratorDef> enumerateKeyGeneratorDef(
-+ ) {
-+ return java.util.Collections.enumeration(this._keyGeneratorDefList);
++ public void setName(
++ final java.lang.String name) {
++ this._name = name;
+ }
+
+ /**
-+ * Method getClassMapping.
++ * Sets the value of field 'required'.
+ *
-+ * @param index
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
-+ * @return the value of the
-+ * org.exolab.castor.mapping.xml.ClassMapping at the given index
++ * @param required the value of field 'required'.
+ */
-+ public org.exolab.castor.mapping.xml.ClassMapping getClassMapping(
-+ final int index)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._classMappingList.size()) {
-+ throw new IndexOutOfBoundsException("getClassMapping: Index value '" + index + "' not in range [0.." + (this._classMappingList.size() - 1) + "]");
-+ }
-+
-+ return (org.exolab.castor.mapping.xml.ClassMapping) _classMappingList.get(index);
++ public void setRequired(
++ final boolean required) {
++ this._required = required;
++ this._has_required = true;
+ }
+
+ /**
-+ * Method getClassMapping.Returns the contents of the
-+ * collection in an Array. <p>Note: Just in case the
-+ * collection contents are changing in another thread, we pass
-+ * a 0-length Array of the correct type into the API call.
-+ * This way we <i>know</i> that the Array returned is of
-+ * exactly the correct length.
++ * Sets the value of field 'setMethod'.
+ *
-+ * @return this collection as an Array
++ * @param setMethod the value of field 'setMethod'.
+ */
-+ public org.exolab.castor.mapping.xml.ClassMapping[] getClassMapping(
-+ ) {
-+ org.exolab.castor.mapping.xml.ClassMapping[] array = new org.exolab.castor.mapping.xml.ClassMapping[0];
-+ return (org.exolab.castor.mapping.xml.ClassMapping[]) this._classMappingList.toArray(array);
++ public void setSetMethod(
++ final java.lang.String setMethod) {
++ this._setMethod = setMethod;
+ }
+
+ /**
-+ * Method getClassMappingCount.
++ * Sets the value of field 'type'.
+ *
-+ * @return the size of this collection
++ * @param type the value of field 'type'.
+ */
-+ public int getClassMappingCount(
-+ ) {
-+ return this._classMappingList.size();
++ public void setType(
++ final java.lang.String type) {
++ this._type = type;
+ }
+
+ /**
-+ * Returns the value of field 'description'.
++ * Method unmarshal.
+ *
-+ * @return the value of field 'Description'.
++ * @param reader
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @return the unmarshaled
++ * org.exolab.castor.mapping.xml.Container
+ */
-+ public java.lang.String getDescription(
-+ ) {
-+ return this._description;
++ public static org.exolab.castor.mapping.xml.Container unmarshal(
++ final java.io.Reader reader)
++ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
++ return (org.exolab.castor.mapping.xml.Container) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.Container.class, reader);
+ }
+
+ /**
-+ * Method getFieldHandlerDef.
+ *
-+ * @param index
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
-+ * @return the value of the
-+ * org.exolab.castor.mapping.xml.FieldHandlerDef at the given
-+ * index
++ *
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
+ */
-+ public org.exolab.castor.mapping.xml.FieldHandlerDef getFieldHandlerDef(
-+ final int index)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._fieldHandlerDefList.size()) {
-+ throw new IndexOutOfBoundsException("getFieldHandlerDef: Index value '" + index + "' not in range [0.." + (this._fieldHandlerDefList.size() - 1) + "]");
-+ }
-+
-+ return (org.exolab.castor.mapping.xml.FieldHandlerDef) _fieldHandlerDefList.get(index);
++ public void validate(
++ )
++ throws org.exolab.castor.xml.ValidationException {
++ org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator();
++ validator.validate(this);
+ }
+
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/NamedQuery.java
+@@ -0,0 +1,331 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.exolab.castor.mapping.xml;
++
++/**
++ * Class NamedQuery.
++ *
++ * @version $Revision$ $Date$
++ */
++ at SuppressWarnings("serial")
++public class NamedQuery implements java.io.Serializable {
++
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
+ /**
-+ * Method getFieldHandlerDef.Returns the contents of the
-+ * collection in an Array. <p>Note: Just in case the
-+ * collection contents are changing in another thread, we pass
-+ * a 0-length Array of the correct type into the API call.
-+ * This way we <i>know</i> that the Array returned is of
-+ * exactly the correct length.
-+ *
-+ * @return this collection as an Array
++ * Field _name.
+ */
-+ public org.exolab.castor.mapping.xml.FieldHandlerDef[] getFieldHandlerDef(
-+ ) {
-+ org.exolab.castor.mapping.xml.FieldHandlerDef[] array = new org.exolab.castor.mapping.xml.FieldHandlerDef[0];
-+ return (org.exolab.castor.mapping.xml.FieldHandlerDef[]) this._fieldHandlerDefList.toArray(array);
++ private java.lang.String _name;
++
++ /**
++ * Field _query.
++ */
++ private java.lang.String _query;
++
++ /**
++ * Field _queryHintList.
++ */
++ private java.util.List<org.exolab.castor.mapping.xml.QueryHint> _queryHintList;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public NamedQuery() {
++ super();
++ this._queryHintList = new java.util.ArrayList<org.exolab.castor.mapping.xml.QueryHint>();
+ }
+
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
+ /**
-+ * Method getFieldHandlerDefCount.
+ *
-+ * @return the size of this collection
++ *
++ * @param vQueryHint
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public int getFieldHandlerDefCount(
-+ ) {
-+ return this._fieldHandlerDefList.size();
++ public void addQueryHint(
++ final org.exolab.castor.mapping.xml.QueryHint vQueryHint)
++ throws java.lang.IndexOutOfBoundsException {
++ this._queryHintList.add(vQueryHint);
+ }
+
+ /**
-+ * Method getInclude.
++ *
+ *
+ * @param index
++ * @param vQueryHint
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
-+ * @return the value of the
-+ * org.exolab.castor.mapping.xml.Include at the given index
+ */
-+ public org.exolab.castor.mapping.xml.Include getInclude(
-+ final int index)
++ public void addQueryHint(
++ final int index,
++ final org.exolab.castor.mapping.xml.QueryHint vQueryHint)
+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._includeList.size()) {
-+ throw new IndexOutOfBoundsException("getInclude: Index value '" + index + "' not in range [0.." + (this._includeList.size() - 1) + "]");
-+ }
-+
-+ return (org.exolab.castor.mapping.xml.Include) _includeList.get(index);
++ this._queryHintList.add(index, vQueryHint);
+ }
+
+ /**
-+ * Method getInclude.Returns the contents of the collection in
-+ * an Array. <p>Note: Just in case the collection contents
-+ * are changing in another thread, we pass a 0-length Array of
-+ * the correct type into the API call. This way we <i>know</i>
-+ * that the Array returned is of exactly the correct length.
++ * Method enumerateQueryHint.
+ *
-+ * @return this collection as an Array
++ * @return an Enumeration over all possible elements of this
++ * collection
+ */
-+ public org.exolab.castor.mapping.xml.Include[] getInclude(
++ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.QueryHint> enumerateQueryHint(
+ ) {
-+ org.exolab.castor.mapping.xml.Include[] array = new org.exolab.castor.mapping.xml.Include[0];
-+ return (org.exolab.castor.mapping.xml.Include[]) this._includeList.toArray(array);
++ return java.util.Collections.enumeration(this._queryHintList);
+ }
+
+ /**
-+ * Method getIncludeCount.
++ * Returns the value of field 'name'.
+ *
-+ * @return the size of this collection
++ * @return the value of field 'Name'.
+ */
-+ public int getIncludeCount(
++ public java.lang.String getName(
+ ) {
-+ return this._includeList.size();
++ return this._name;
+ }
+
+ /**
-+ * Method getKeyGeneratorDef.
++ * Returns the value of field 'query'.
++ *
++ * @return the value of field 'Query'.
++ */
++ public java.lang.String getQuery(
++ ) {
++ return this._query;
++ }
++
++ /**
++ * Method getQueryHint.
+ *
+ * @param index
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ * @return the value of the
-+ * org.exolab.castor.mapping.xml.KeyGeneratorDef at the given
-+ * index
++ * org.exolab.castor.mapping.xml.QueryHint at the given index
+ */
-+ public org.exolab.castor.mapping.xml.KeyGeneratorDef getKeyGeneratorDef(
++ public org.exolab.castor.mapping.xml.QueryHint getQueryHint(
+ final int index)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
-+ if (index < 0 || index >= this._keyGeneratorDefList.size()) {
-+ throw new IndexOutOfBoundsException("getKeyGeneratorDef: Index value '" + index + "' not in range [0.." + (this._keyGeneratorDefList.size() - 1) + "]");
++ if (index < 0 || index >= this._queryHintList.size()) {
++ throw new IndexOutOfBoundsException("getQueryHint: Index value '" + index + "' not in range [0.." + (this._queryHintList.size() - 1) + "]");
+ }
+
-+ return (org.exolab.castor.mapping.xml.KeyGeneratorDef) _keyGeneratorDefList.get(index);
++ return (org.exolab.castor.mapping.xml.QueryHint) _queryHintList.get(index);
+ }
+
+ /**
-+ * Method getKeyGeneratorDef.Returns the contents of the
-+ * collection in an Array. <p>Note: Just in case the
-+ * collection contents are changing in another thread, we pass
-+ * a 0-length Array of the correct type into the API call.
-+ * This way we <i>know</i> that the Array returned is of
-+ * exactly the correct length.
++ * Method getQueryHint.Returns the contents of the collection
++ * in an Array. <p>Note: Just in case the collection contents
++ * are changing in another thread, we pass a 0-length Array of
++ * the correct type into the API call. This way we <i>know</i>
++ * that the Array returned is of exactly the correct length.
+ *
+ * @return this collection as an Array
+ */
-+ public org.exolab.castor.mapping.xml.KeyGeneratorDef[] getKeyGeneratorDef(
++ public org.exolab.castor.mapping.xml.QueryHint[] getQueryHint(
+ ) {
-+ org.exolab.castor.mapping.xml.KeyGeneratorDef[] array = new org.exolab.castor.mapping.xml.KeyGeneratorDef[0];
-+ return (org.exolab.castor.mapping.xml.KeyGeneratorDef[]) this._keyGeneratorDefList.toArray(array);
++ org.exolab.castor.mapping.xml.QueryHint[] array = new org.exolab.castor.mapping.xml.QueryHint[0];
++ return (org.exolab.castor.mapping.xml.QueryHint[]) this._queryHintList.toArray(array);
+ }
+
+ /**
-+ * Method getKeyGeneratorDefCount.
++ * Method getQueryHintCount.
+ *
+ * @return the size of this collection
+ */
-+ public int getKeyGeneratorDefCount(
++ public int getQueryHintCount(
+ ) {
-+ return this._keyGeneratorDefList.size();
++ return this._queryHintList.size();
+ }
+
+ /**
@@ -7228,47 +7537,14 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Method iterateClassMapping.
-+ *
-+ * @return an Iterator over all possible elements in this
-+ * collection
-+ */
-+ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.ClassMapping> iterateClassMapping(
-+ ) {
-+ return this._classMappingList.iterator();
-+ }
-+
-+ /**
-+ * Method iterateFieldHandlerDef.
-+ *
-+ * @return an Iterator over all possible elements in this
-+ * collection
-+ */
-+ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.FieldHandlerDef> iterateFieldHandlerDef(
-+ ) {
-+ return this._fieldHandlerDefList.iterator();
-+ }
-+
-+ /**
-+ * Method iterateInclude.
-+ *
-+ * @return an Iterator over all possible elements in this
-+ * collection
-+ */
-+ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.Include> iterateInclude(
-+ ) {
-+ return this._includeList.iterator();
-+ }
-+
-+ /**
-+ * Method iterateKeyGeneratorDef.
++ * Method iterateQueryHint.
+ *
+ * @return an Iterator over all possible elements in this
+ * collection
+ */
-+ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.KeyGeneratorDef> iterateKeyGeneratorDef(
++ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.QueryHint> iterateQueryHint(
+ ) {
-+ return this._keyGeneratorDefList.iterator();
++ return this._queryHintList.iterator();
+ }
+
+ /**
@@ -7305,293 +7581,105 @@ Last-Update: 2010-06-27
+
+ /**
+ */
-+ public void removeAllClassMapping(
-+ ) {
-+ this._classMappingList.clear();
-+ }
-+
-+ /**
-+ */
-+ public void removeAllFieldHandlerDef(
-+ ) {
-+ this._fieldHandlerDefList.clear();
-+ }
-+
-+ /**
-+ */
-+ public void removeAllInclude(
-+ ) {
-+ this._includeList.clear();
-+ }
-+
-+ /**
-+ */
-+ public void removeAllKeyGeneratorDef(
++ public void removeAllQueryHint(
+ ) {
-+ this._keyGeneratorDefList.clear();
-+ }
-+
-+ /**
-+ * Method removeClassMapping.
-+ *
-+ * @param vClassMapping
-+ * @return true if the object was removed from the collection.
-+ */
-+ public boolean removeClassMapping(
-+ final org.exolab.castor.mapping.xml.ClassMapping vClassMapping) {
-+ boolean removed = _classMappingList.remove(vClassMapping);
-+ return removed;
-+ }
-+
-+ /**
-+ * Method removeClassMappingAt.
-+ *
-+ * @param index
-+ * @return the element removed from the collection
-+ */
-+ public org.exolab.castor.mapping.xml.ClassMapping removeClassMappingAt(
-+ final int index) {
-+ java.lang.Object obj = this._classMappingList.remove(index);
-+ return (org.exolab.castor.mapping.xml.ClassMapping) obj;
-+ }
-+
-+ /**
-+ * Method removeFieldHandlerDef.
-+ *
-+ * @param vFieldHandlerDef
-+ * @return true if the object was removed from the collection.
-+ */
-+ public boolean removeFieldHandlerDef(
-+ final org.exolab.castor.mapping.xml.FieldHandlerDef vFieldHandlerDef) {
-+ boolean removed = _fieldHandlerDefList.remove(vFieldHandlerDef);
-+ return removed;
-+ }
-+
-+ /**
-+ * Method removeFieldHandlerDefAt.
-+ *
-+ * @param index
-+ * @return the element removed from the collection
-+ */
-+ public org.exolab.castor.mapping.xml.FieldHandlerDef removeFieldHandlerDefAt(
-+ final int index) {
-+ java.lang.Object obj = this._fieldHandlerDefList.remove(index);
-+ return (org.exolab.castor.mapping.xml.FieldHandlerDef) obj;
++ this._queryHintList.clear();
+ }
+
+ /**
-+ * Method removeInclude.
++ * Method removeQueryHint.
+ *
-+ * @param vInclude
++ * @param vQueryHint
+ * @return true if the object was removed from the collection.
+ */
-+ public boolean removeInclude(
-+ final org.exolab.castor.mapping.xml.Include vInclude) {
-+ boolean removed = _includeList.remove(vInclude);
++ public boolean removeQueryHint(
++ final org.exolab.castor.mapping.xml.QueryHint vQueryHint) {
++ boolean removed = _queryHintList.remove(vQueryHint);
+ return removed;
+ }
+
+ /**
-+ * Method removeIncludeAt.
++ * Method removeQueryHintAt.
+ *
+ * @param index
+ * @return the element removed from the collection
+ */
-+ public org.exolab.castor.mapping.xml.Include removeIncludeAt(
++ public org.exolab.castor.mapping.xml.QueryHint removeQueryHintAt(
+ final int index) {
-+ java.lang.Object obj = this._includeList.remove(index);
-+ return (org.exolab.castor.mapping.xml.Include) obj;
++ java.lang.Object obj = this._queryHintList.remove(index);
++ return (org.exolab.castor.mapping.xml.QueryHint) obj;
+ }
+
+ /**
-+ * Method removeKeyGeneratorDef.
++ * Sets the value of field 'name'.
+ *
-+ * @param vKeyGeneratorDef
-+ * @return true if the object was removed from the collection.
++ * @param name the value of field 'name'.
+ */
-+ public boolean removeKeyGeneratorDef(
-+ final org.exolab.castor.mapping.xml.KeyGeneratorDef vKeyGeneratorDef) {
-+ boolean removed = _keyGeneratorDefList.remove(vKeyGeneratorDef);
-+ return removed;
++ public void setName(
++ final java.lang.String name) {
++ this._name = name;
+ }
+
+ /**
-+ * Method removeKeyGeneratorDefAt.
++ * Sets the value of field 'query'.
+ *
-+ * @param index
-+ * @return the element removed from the collection
++ * @param query the value of field 'query'.
+ */
-+ public org.exolab.castor.mapping.xml.KeyGeneratorDef removeKeyGeneratorDefAt(
-+ final int index) {
-+ java.lang.Object obj = this._keyGeneratorDefList.remove(index);
-+ return (org.exolab.castor.mapping.xml.KeyGeneratorDef) obj;
++ public void setQuery(
++ final java.lang.String query) {
++ this._query = query;
+ }
+
+ /**
+ *
+ *
+ * @param index
-+ * @param vClassMapping
++ * @param vQueryHint
+ * @throws java.lang.IndexOutOfBoundsException if the index
+ * given is outside the bounds of the collection
+ */
-+ public void setClassMapping(
++ public void setQueryHint(
+ final int index,
-+ final org.exolab.castor.mapping.xml.ClassMapping vClassMapping)
++ final org.exolab.castor.mapping.xml.QueryHint vQueryHint)
+ throws java.lang.IndexOutOfBoundsException {
+ // check bounds for index
-+ if (index < 0 || index >= this._classMappingList.size()) {
-+ throw new IndexOutOfBoundsException("setClassMapping: Index value '" + index + "' not in range [0.." + (this._classMappingList.size() - 1) + "]");
++ if (index < 0 || index >= this._queryHintList.size()) {
++ throw new IndexOutOfBoundsException("setQueryHint: Index value '" + index + "' not in range [0.." + (this._queryHintList.size() - 1) + "]");
+ }
+
-+ this._classMappingList.set(index, vClassMapping);
++ this._queryHintList.set(index, vQueryHint);
+ }
+
+ /**
+ *
+ *
-+ * @param vClassMappingArray
++ * @param vQueryHintArray
+ */
-+ public void setClassMapping(
-+ final org.exolab.castor.mapping.xml.ClassMapping[] vClassMappingArray) {
++ public void setQueryHint(
++ final org.exolab.castor.mapping.xml.QueryHint[] vQueryHintArray) {
+ //-- copy array
-+ _classMappingList.clear();
++ _queryHintList.clear();
+
-+ for (int i = 0; i < vClassMappingArray.length; i++) {
-+ this._classMappingList.add(vClassMappingArray[i]);
++ for (int i = 0; i < vQueryHintArray.length; i++) {
++ this._queryHintList.add(vQueryHintArray[i]);
+ }
+ }
+
+ /**
-+ * Sets the value of field 'description'.
++ * Method unmarshal.
+ *
-+ * @param description the value of field 'description'.
++ * @param reader
++ * @throws org.exolab.castor.xml.MarshalException if object is
++ * null or if any SAXException is thrown during marshaling
++ * @throws org.exolab.castor.xml.ValidationException if this
++ * object is an invalid instance according to the schema
++ * @return the unmarshaled
++ * org.exolab.castor.mapping.xml.NamedQuery
+ */
-+ public void setDescription(
-+ final java.lang.String description) {
-+ this._description = description;
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param index
-+ * @param vFieldHandlerDef
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
-+ */
-+ public void setFieldHandlerDef(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.FieldHandlerDef vFieldHandlerDef)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._fieldHandlerDefList.size()) {
-+ throw new IndexOutOfBoundsException("setFieldHandlerDef: Index value '" + index + "' not in range [0.." + (this._fieldHandlerDefList.size() - 1) + "]");
-+ }
-+
-+ this._fieldHandlerDefList.set(index, vFieldHandlerDef);
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param vFieldHandlerDefArray
-+ */
-+ public void setFieldHandlerDef(
-+ final org.exolab.castor.mapping.xml.FieldHandlerDef[] vFieldHandlerDefArray) {
-+ //-- copy array
-+ _fieldHandlerDefList.clear();
-+
-+ for (int i = 0; i < vFieldHandlerDefArray.length; i++) {
-+ this._fieldHandlerDefList.add(vFieldHandlerDefArray[i]);
-+ }
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param index
-+ * @param vInclude
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
-+ */
-+ public void setInclude(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.Include vInclude)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._includeList.size()) {
-+ throw new IndexOutOfBoundsException("setInclude: Index value '" + index + "' not in range [0.." + (this._includeList.size() - 1) + "]");
-+ }
-+
-+ this._includeList.set(index, vInclude);
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param vIncludeArray
-+ */
-+ public void setInclude(
-+ final org.exolab.castor.mapping.xml.Include[] vIncludeArray) {
-+ //-- copy array
-+ _includeList.clear();
-+
-+ for (int i = 0; i < vIncludeArray.length; i++) {
-+ this._includeList.add(vIncludeArray[i]);
-+ }
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param index
-+ * @param vKeyGeneratorDef
-+ * @throws java.lang.IndexOutOfBoundsException if the index
-+ * given is outside the bounds of the collection
-+ */
-+ public void setKeyGeneratorDef(
-+ final int index,
-+ final org.exolab.castor.mapping.xml.KeyGeneratorDef vKeyGeneratorDef)
-+ throws java.lang.IndexOutOfBoundsException {
-+ // check bounds for index
-+ if (index < 0 || index >= this._keyGeneratorDefList.size()) {
-+ throw new IndexOutOfBoundsException("setKeyGeneratorDef: Index value '" + index + "' not in range [0.." + (this._keyGeneratorDefList.size() - 1) + "]");
-+ }
-+
-+ this._keyGeneratorDefList.set(index, vKeyGeneratorDef);
-+ }
-+
-+ /**
-+ *
-+ *
-+ * @param vKeyGeneratorDefArray
-+ */
-+ public void setKeyGeneratorDef(
-+ final org.exolab.castor.mapping.xml.KeyGeneratorDef[] vKeyGeneratorDefArray) {
-+ //-- copy array
-+ _keyGeneratorDefList.clear();
-+
-+ for (int i = 0; i < vKeyGeneratorDefArray.length; i++) {
-+ this._keyGeneratorDefList.add(vKeyGeneratorDefArray[i]);
-+ }
-+ }
-+
-+ /**
-+ * Method unmarshal.
-+ *
-+ * @param reader
-+ * @throws org.exolab.castor.xml.MarshalException if object is
-+ * null or if any SAXException is thrown during marshaling
-+ * @throws org.exolab.castor.xml.ValidationException if this
-+ * object is an invalid instance according to the schema
-+ * @return the unmarshaled
-+ * org.exolab.castor.mapping.xml.MappingRoot
-+ */
-+ public static org.exolab.castor.mapping.xml.MappingRoot unmarshal(
++ public static org.exolab.castor.mapping.xml.NamedQuery unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.exolab.castor.mapping.xml.MappingRoot) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.MappingRoot.class, reader);
++ return (org.exolab.castor.mapping.xml.NamedQuery) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.NamedQuery.class, reader);
+ }
+
+ /**
@@ -7609,11 +7697,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/Container.java
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/CacheTypeMapping.java
@@ -0,0 +1,413 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -7621,12 +7709,12 @@ Last-Update: 2010-06-27
+package org.exolab.castor.mapping.xml;
+
+/**
-+ * Class Container.
++ * Class CacheTypeMapping.
+ *
+ * @version $Revision$ $Date$
+ */
+ at SuppressWarnings("serial")
-+public class Container implements java.io.Serializable {
++public class CacheTypeMapping implements java.io.Serializable {
+
+
+ //--------------------------/
@@ -7634,69 +7722,44 @@ Last-Update: 2010-06-27
+ //--------------------------/
+
+ /**
-+ * Field _name.
-+ */
-+ private java.lang.String _name;
-+
-+ /**
+ * Field _type.
+ */
-+ private java.lang.String _type;
-+
-+ /**
-+ * Field _required.
-+ */
-+ private boolean _required = false;
-+
-+ /**
-+ * keeps track of state for field: _required
-+ */
-+ private boolean _has_required;
-+
-+ /**
-+ * Field _direct.
-+ */
-+ private boolean _direct = false;
-+
-+ /**
-+ * keeps track of state for field: _direct
-+ */
-+ private boolean _has_direct;
++ private java.lang.String _type = "count-limited";
+
+ /**
-+ * Field _getMethod.
++ * Field _debug.
+ */
-+ private java.lang.String _getMethod;
++ private boolean _debug = false;
+
+ /**
-+ * Field _setMethod.
++ * keeps track of state for field: _debug
+ */
-+ private java.lang.String _setMethod;
++ private boolean _has_debug;
+
+ /**
-+ * Field _createMethod.
++ * Field _capacity.
+ */
-+ private java.lang.String _createMethod;
++ private long _capacity;
+
+ /**
-+ * Field _description.
++ * keeps track of state for field: _capacity
+ */
-+ private java.lang.String _description;
++ private boolean _has_capacity;
+
+ /**
-+ * The 'field' element is used to describe the property of a
-+ * Java object.
-+ *
++ * Field _paramList.
+ */
-+ private org.exolab.castor.mapping.xml.FieldMapping _fieldMapping;
++ private java.util.List<org.exolab.castor.mapping.xml.Param> _paramList;
+
+
+ //----------------/
+ //- Constructors -/
+ //----------------/
+
-+ public Container() {
++ public CacheTypeMapping() {
+ super();
++ setType("count-limited");
++ this._paramList = new java.util.ArrayList<org.exolab.castor.mapping.xml.Param>();
+ }
+
+
@@ -7705,100 +7768,121 @@ Last-Update: 2010-06-27
+ //-----------/
+
+ /**
++ *
++ *
++ * @param vParam
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public void deleteDirect(
-+ ) {
-+ this._has_direct= false;
++ public void addParam(
++ final org.exolab.castor.mapping.xml.Param vParam)
++ throws java.lang.IndexOutOfBoundsException {
++ this._paramList.add(vParam);
+ }
+
+ /**
++ *
++ *
++ * @param index
++ * @param vParam
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public void deleteRequired(
-+ ) {
-+ this._has_required= false;
++ public void addParam(
++ final int index,
++ final org.exolab.castor.mapping.xml.Param vParam)
++ throws java.lang.IndexOutOfBoundsException {
++ this._paramList.add(index, vParam);
+ }
+
+ /**
-+ * Returns the value of field 'createMethod'.
-+ *
-+ * @return the value of field 'CreateMethod'.
+ */
-+ public java.lang.String getCreateMethod(
++ public void deleteCapacity(
+ ) {
-+ return this._createMethod;
++ this._has_capacity= false;
+ }
+
+ /**
-+ * Returns the value of field 'description'.
-+ *
-+ * @return the value of field 'Description'.
+ */
-+ public java.lang.String getDescription(
++ public void deleteDebug(
+ ) {
-+ return this._description;
++ this._has_debug= false;
+ }
+
+ /**
-+ * Returns the value of field 'direct'.
++ * Method enumerateParam.
+ *
-+ * @return the value of field 'Direct'.
++ * @return an Enumeration over all possible elements of this
++ * collection
+ */
-+ public boolean getDirect(
++ public java.util.Enumeration<? extends org.exolab.castor.mapping.xml.Param> enumerateParam(
+ ) {
-+ return this._direct;
++ return java.util.Collections.enumeration(this._paramList);
+ }
+
+ /**
-+ * Returns the value of field 'fieldMapping'. The field
-+ * 'fieldMapping' has the following description: The 'field'
-+ * element is used to describe the property of a Java object.
-+ *
++ * Returns the value of field 'capacity'.
+ *
-+ * @return the value of field 'FieldMapping'.
++ * @return the value of field 'Capacity'.
+ */
-+ public org.exolab.castor.mapping.xml.FieldMapping getFieldMapping(
++ public long getCapacity(
+ ) {
-+ return this._fieldMapping;
++ return this._capacity;
+ }
+
+ /**
-+ * Returns the value of field 'getMethod'.
++ * Returns the value of field 'debug'.
+ *
-+ * @return the value of field 'GetMethod'.
++ * @return the value of field 'Debug'.
+ */
-+ public java.lang.String getGetMethod(
++ public boolean getDebug(
+ ) {
-+ return this._getMethod;
++ return this._debug;
+ }
+
+ /**
-+ * Returns the value of field 'name'.
++ * Method getParam.
+ *
-+ * @return the value of field 'Name'.
++ * @param index
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
++ * @return the value of the org.exolab.castor.mapping.xml.Param
++ * at the given index
+ */
-+ public java.lang.String getName(
-+ ) {
-+ return this._name;
++ public org.exolab.castor.mapping.xml.Param getParam(
++ final int index)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._paramList.size()) {
++ throw new IndexOutOfBoundsException("getParam: Index value '" + index + "' not in range [0.." + (this._paramList.size() - 1) + "]");
++ }
++
++ return (org.exolab.castor.mapping.xml.Param) _paramList.get(index);
+ }
+
+ /**
-+ * Returns the value of field 'required'.
++ * Method getParam.Returns the contents of the collection in an
++ * Array. <p>Note: Just in case the collection contents are
++ * changing in another thread, we pass a 0-length Array of the
++ * correct type into the API call. This way we <i>know</i>
++ * that the Array returned is of exactly the correct length.
+ *
-+ * @return the value of field 'Required'.
++ * @return this collection as an Array
+ */
-+ public boolean getRequired(
++ public org.exolab.castor.mapping.xml.Param[] getParam(
+ ) {
-+ return this._required;
++ org.exolab.castor.mapping.xml.Param[] array = new org.exolab.castor.mapping.xml.Param[0];
++ return (org.exolab.castor.mapping.xml.Param[]) this._paramList.toArray(array);
+ }
+
+ /**
-+ * Returns the value of field 'setMethod'.
++ * Method getParamCount.
+ *
-+ * @return the value of field 'SetMethod'.
++ * @return the size of this collection
+ */
-+ public java.lang.String getSetMethod(
++ public int getParamCount(
+ ) {
-+ return this._setMethod;
++ return this._paramList.size();
+ }
+
+ /**
@@ -7812,43 +7896,33 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Method hasDirect.
-+ *
-+ * @return true if at least one Direct has been added
-+ */
-+ public boolean hasDirect(
-+ ) {
-+ return this._has_direct;
-+ }
-+
-+ /**
-+ * Method hasRequired.
++ * Method hasCapacity.
+ *
-+ * @return true if at least one Required has been added
++ * @return true if at least one Capacity has been added
+ */
-+ public boolean hasRequired(
++ public boolean hasCapacity(
+ ) {
-+ return this._has_required;
++ return this._has_capacity;
+ }
+
+ /**
-+ * Returns the value of field 'direct'.
++ * Method hasDebug.
+ *
-+ * @return the value of field 'Direct'.
++ * @return true if at least one Debug has been added
+ */
-+ public boolean isDirect(
++ public boolean hasDebug(
+ ) {
-+ return this._direct;
++ return this._has_debug;
+ }
+
+ /**
-+ * Returns the value of field 'required'.
++ * Returns the value of field 'debug'.
+ *
-+ * @return the value of field 'Required'.
++ * @return the value of field 'Debug'.
+ */
-+ public boolean isRequired(
++ public boolean isDebug(
+ ) {
-+ return this._required;
++ return this._debug;
+ }
+
+ /**
@@ -7867,6 +7941,17 @@ Last-Update: 2010-06-27
+ }
+
+ /**
++ * Method iterateParam.
++ *
++ * @return an Iterator over all possible elements in this
++ * collection
++ */
++ public java.util.Iterator<? extends org.exolab.castor.mapping.xml.Param> iterateParam(
++ ) {
++ return this._paramList.iterator();
++ }
++
++ /**
+ *
+ *
+ * @param out
@@ -7899,88 +7984,91 @@ Last-Update: 2010-06-27
+ }
+
+ /**
-+ * Sets the value of field 'createMethod'.
-+ *
-+ * @param createMethod the value of field 'createMethod'.
+ */
-+ public void setCreateMethod(
-+ final java.lang.String createMethod) {
-+ this._createMethod = createMethod;
++ public void removeAllParam(
++ ) {
++ this._paramList.clear();
+ }
+
+ /**
-+ * Sets the value of field 'description'.
++ * Method removeParam.
+ *
-+ * @param description the value of field 'description'.
++ * @param vParam
++ * @return true if the object was removed from the collection.
+ */
-+ public void setDescription(
-+ final java.lang.String description) {
-+ this._description = description;
++ public boolean removeParam(
++ final org.exolab.castor.mapping.xml.Param vParam) {
++ boolean removed = _paramList.remove(vParam);
++ return removed;
+ }
+
+ /**
-+ * Sets the value of field 'direct'.
++ * Method removeParamAt.
+ *
-+ * @param direct the value of field 'direct'.
++ * @param index
++ * @return the element removed from the collection
+ */
-+ public void setDirect(
-+ final boolean direct) {
-+ this._direct = direct;
-+ this._has_direct = true;
++ public org.exolab.castor.mapping.xml.Param removeParamAt(
++ final int index) {
++ java.lang.Object obj = this._paramList.remove(index);
++ return (org.exolab.castor.mapping.xml.Param) obj;
+ }
+
+ /**
-+ * Sets the value of field 'fieldMapping'. The field
-+ * 'fieldMapping' has the following description: The 'field'
-+ * element is used to describe the property of a Java object.
-+ *
++ * Sets the value of field 'capacity'.
+ *
-+ * @param fieldMapping the value of field 'fieldMapping'.
++ * @param capacity the value of field 'capacity'.
+ */
-+ public void setFieldMapping(
-+ final org.exolab.castor.mapping.xml.FieldMapping fieldMapping) {
-+ this._fieldMapping = fieldMapping;
++ public void setCapacity(
++ final long capacity) {
++ this._capacity = capacity;
++ this._has_capacity = true;
+ }
+
+ /**
-+ * Sets the value of field 'getMethod'.
++ * Sets the value of field 'debug'.
+ *
-+ * @param getMethod the value of field 'getMethod'.
++ * @param debug the value of field 'debug'.
+ */
-+ public void setGetMethod(
-+ final java.lang.String getMethod) {
-+ this._getMethod = getMethod;
++ public void setDebug(
++ final boolean debug) {
++ this._debug = debug;
++ this._has_debug = true;
+ }
+
+ /**
-+ * Sets the value of field 'name'.
+ *
-+ * @param name the value of field 'name'.
-+ */
-+ public void setName(
-+ final java.lang.String name) {
-+ this._name = name;
-+ }
-+
-+ /**
-+ * Sets the value of field 'required'.
+ *
-+ * @param required the value of field 'required'.
++ * @param index
++ * @param vParam
++ * @throws java.lang.IndexOutOfBoundsException if the index
++ * given is outside the bounds of the collection
+ */
-+ public void setRequired(
-+ final boolean required) {
-+ this._required = required;
-+ this._has_required = true;
++ public void setParam(
++ final int index,
++ final org.exolab.castor.mapping.xml.Param vParam)
++ throws java.lang.IndexOutOfBoundsException {
++ // check bounds for index
++ if (index < 0 || index >= this._paramList.size()) {
++ throw new IndexOutOfBoundsException("setParam: Index value '" + index + "' not in range [0.." + (this._paramList.size() - 1) + "]");
++ }
++
++ this._paramList.set(index, vParam);
+ }
+
+ /**
-+ * Sets the value of field 'setMethod'.
+ *
-+ * @param setMethod the value of field 'setMethod'.
++ *
++ * @param vParamArray
+ */
-+ public void setSetMethod(
-+ final java.lang.String setMethod) {
-+ this._setMethod = setMethod;
++ public void setParam(
++ final org.exolab.castor.mapping.xml.Param[] vParamArray) {
++ //-- copy array
++ _paramList.clear();
++
++ for (int i = 0; i < vParamArray.length; i++) {
++ this._paramList.add(vParamArray[i]);
++ }
+ }
+
+ /**
@@ -8002,12 +8090,12 @@ Last-Update: 2010-06-27
+ * @throws org.exolab.castor.xml.ValidationException if this
+ * object is an invalid instance according to the schema
+ * @return the unmarshaled
-+ * org.exolab.castor.mapping.xml.Container
++ * org.exolab.castor.mapping.xml.CacheTypeMapping
+ */
-+ public static org.exolab.castor.mapping.xml.Container unmarshal(
++ public static org.exolab.castor.mapping.xml.CacheTypeMapping unmarshal(
+ final java.io.Reader reader)
+ throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
-+ return (org.exolab.castor.mapping.xml.Container) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.Container.class, reader);
++ return (org.exolab.castor.mapping.xml.CacheTypeMapping) org.exolab.castor.xml.Unmarshaller.unmarshal(org.exolab.castor.mapping.xml.CacheTypeMapping.class, reader);
+ }
+
+ /**
@@ -8025,24 +8113,29 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/types/SqlDirtyType.java
-@@ -0,0 +1,152 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/IncludeDescriptor.java
+@@ -0,0 +1,213 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
+
-+package org.exolab.castor.mapping.xml.types;
++package org.exolab.castor.mapping.xml.descriptors;
++
++ //---------------------------------/
++ //- Imported classes and packages -/
++//---------------------------------/
++
++import org.exolab.castor.mapping.xml.Include;
+
+/**
-+ * Class SqlDirtyType.
++ * Class IncludeDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+ at SuppressWarnings("serial")
-+public class SqlDirtyType implements java.io.Serializable {
++public class IncludeDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -8050,311 +8143,215 @@ Last-Update: 2010-06-27
+ //--------------------------/
+
+ /**
-+ * The check type
-+ */
-+ public static final int CHECK_TYPE = 0;
-+
-+ /**
-+ * The instance of the check type
-+ */
-+ public static final SqlDirtyType CHECK = new SqlDirtyType(CHECK_TYPE, "check");
-+
-+ /**
-+ * The ignore type
++ * Field _elementDefinition.
+ */
-+ public static final int IGNORE_TYPE = 1;
++ private boolean _elementDefinition;
+
+ /**
-+ * The instance of the ignore type
++ * Field _nsPrefix.
+ */
-+ public static final SqlDirtyType IGNORE = new SqlDirtyType(IGNORE_TYPE, "ignore");
++ private java.lang.String _nsPrefix;
+
+ /**
-+ * Field _memberTable.
++ * Field _nsURI.
+ */
-+ private static java.util.Hashtable<Object,Object> _memberTable = init();
++ private java.lang.String _nsURI;
+
+ /**
-+ * Field type.
++ * Field _xmlName.
+ */
-+ private final int type;
++ private java.lang.String _xmlName;
+
+ /**
-+ * Field stringValue.
++ * Field _identity.
+ */
-+ private java.lang.String stringValue = null;
++ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
+
+
+ //----------------/
+ //- Constructors -/
+ //----------------/
+
-+ private SqlDirtyType(final int type, final java.lang.String value) {
++ public IncludeDescriptor() {
+ super();
-+ this.type = type;
-+ this.stringValue = value;
-+ }
-+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
-+
-+ /**
-+ * Method enumerate.Returns an enumeration of all possible
-+ * instances of SqlDirtyType
-+ *
-+ * @return an Enumeration over all possible instances of
-+ * SqlDirtyType
-+ */
-+ public static java.util.Enumeration<? extends java.lang.Object> enumerate(
-+ ) {
-+ return _memberTable.elements();
-+ }
-+
-+ /**
-+ * Method getType.Returns the type of this SqlDirtyType
-+ *
-+ * @return the type of this SqlDirtyType
-+ */
-+ public int getType(
-+ ) {
-+ return this.type;
-+ }
-+
-+ /**
-+ * Method init.
-+ *
-+ * @return the initialized Hashtable for the member table
-+ */
-+ private static java.util.Hashtable<Object,Object> init(
-+ ) {
-+ java.util.Hashtable<Object, Object> members = new java.util.Hashtable<Object, Object>();
-+ members.put("check", CHECK);
-+ members.put("ignore", IGNORE);
-+ return members;
-+ }
-+
-+ /**
-+ * Method readResolve. will be called during deserialization to
-+ * replace the deserialized object with the correct constant
-+ * instance.
-+ *
-+ * @return this deserialized object
-+ */
-+ private java.lang.Object readResolve(
-+ ) {
-+ return valueOf(this.stringValue);
-+ }
++ _nsURI = "http://castor.exolab.org/";
++ _xmlName = "include";
++ _elementDefinition = true;
++ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
++ org.exolab.castor.mapping.FieldHandler handler = null;
++ org.exolab.castor.xml.FieldValidator fieldValidator = null;
++ //-- initialize attribute descriptors
+
-+ /**
-+ * Method toString.Returns the String representation of this
-+ * SqlDirtyType
-+ *
-+ * @return the String representation of this SqlDirtyType
-+ */
-+ public java.lang.String toString(
-+ ) {
-+ return this.stringValue;
-+ }
++ //-- _href
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_href", "href", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ Include target = (Include) object;
++ return target.getHref();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ Include target = (Include) object;
++ target.setHref( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setRequired(true);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+ /**
-+ * Method valueOf.Returns a new SqlDirtyType based on the given
-+ * String value.
-+ *
-+ * @param string
-+ * @return the SqlDirtyType value of parameter 'string'
-+ */
-+ public static org.exolab.castor.mapping.xml.types.SqlDirtyType valueOf(
-+ final java.lang.String string) {
-+ java.lang.Object obj = null;
-+ if (string != null) {
-+ obj = _memberTable.get(string);
-+ }
-+ if (obj == null) {
-+ String err = "" + string + " is not a valid SqlDirtyType";
-+ throw new IllegalArgumentException(err);
++ //-- validation code for: _href
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
+ }
-+ return (SqlDirtyType) obj;
-+ }
-+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/types/BindXmlAutoNamingType.java
-@@ -0,0 +1,154 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
-+
-+package org.exolab.castor.mapping.xml.types;
-+
-+/**
-+ * Class BindXmlAutoNamingType.
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+ at SuppressWarnings("serial")
-+public class BindXmlAutoNamingType implements java.io.Serializable {
-+
-+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
-+
-+ /**
-+ * The deriveByClass type
-+ */
-+ public static final int DERIVEBYCLASS_TYPE = 0;
-+
-+ /**
-+ * The instance of the deriveByClass type
-+ */
-+ public static final BindXmlAutoNamingType DERIVEBYCLASS = new BindXmlAutoNamingType(DERIVEBYCLASS_TYPE, "deriveByClass");
++ desc.setValidator(fieldValidator);
++ //-- initialize element descriptors
+
-+ /**
-+ * The deriveByField type
-+ */
-+ public static final int DERIVEBYFIELD_TYPE = 1;
++ }
+
-+ /**
-+ * The instance of the deriveByField type
-+ */
-+ public static final BindXmlAutoNamingType DERIVEBYFIELD = new BindXmlAutoNamingType(DERIVEBYFIELD_TYPE, "deriveByField");
+
-+ /**
-+ * Field _memberTable.
-+ */
-+ private static java.util.Hashtable<Object,Object> _memberTable = init();
++ //-----------/
++ //- Methods -/
++ //-----------/
+
+ /**
-+ * Field type.
++ * Method getAccessMode.
++ *
++ * @return the access mode specified for this class.
+ */
-+ private final int type;
++ @Override()
++ public org.exolab.castor.mapping.AccessMode getAccessMode(
++ ) {
++ return null;
++ }
+
+ /**
-+ * Field stringValue.
++ * Method getIdentity.
++ *
++ * @return the identity field, null if this class has no
++ * identity.
+ */
-+ private java.lang.String stringValue = null;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
-+
-+ private BindXmlAutoNamingType(final int type, final java.lang.String value) {
-+ super();
-+ this.type = type;
-+ this.stringValue = value;
++ @Override()
++ public org.exolab.castor.mapping.FieldDescriptor getIdentity(
++ ) {
++ return _identity;
+ }
+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
-+
+ /**
-+ * Method enumerate.Returns an enumeration of all possible
-+ * instances of BindXmlAutoNamingType
++ * Method getJavaClass.
+ *
-+ * @return an Enumeration over all possible instances of
-+ * BindXmlAutoNamingType
++ * @return the Java class represented by this descriptor.
+ */
-+ public static java.util.Enumeration<? extends java.lang.Object> enumerate(
++ @Override()
++ public java.lang.Class getJavaClass(
+ ) {
-+ return _memberTable.elements();
++ return org.exolab.castor.mapping.xml.Include.class;
+ }
+
+ /**
-+ * Method getType.Returns the type of this
-+ * BindXmlAutoNamingType
++ * Method getNameSpacePrefix.
+ *
-+ * @return the type of this BindXmlAutoNamingType
++ * @return the namespace prefix to use when marshaling as XML.
+ */
-+ public int getType(
++ @Override()
++ public java.lang.String getNameSpacePrefix(
+ ) {
-+ return this.type;
++ return _nsPrefix;
+ }
+
+ /**
-+ * Method init.
++ * Method getNameSpaceURI.
+ *
-+ * @return the initialized Hashtable for the member table
++ * @return the namespace URI used when marshaling and
++ * unmarshaling as XML.
+ */
-+ private static java.util.Hashtable<Object,Object> init(
++ @Override()
++ public java.lang.String getNameSpaceURI(
+ ) {
-+ java.util.Hashtable<Object, Object> members = new java.util.Hashtable<Object, Object>();
-+ members.put("deriveByClass", DERIVEBYCLASS);
-+ members.put("deriveByField", DERIVEBYFIELD);
-+ return members;
++ return _nsURI;
+ }
+
+ /**
-+ * Method readResolve. will be called during deserialization to
-+ * replace the deserialized object with the correct constant
-+ * instance.
++ * Method getValidator.
+ *
-+ * @return this deserialized object
++ * @return a specific validator for the class described by this
++ * ClassDescriptor.
+ */
-+ private java.lang.Object readResolve(
++ @Override()
++ public org.exolab.castor.xml.TypeValidator getValidator(
+ ) {
-+ return valueOf(this.stringValue);
++ return this;
+ }
+
+ /**
-+ * Method toString.Returns the String representation of this
-+ * BindXmlAutoNamingType
++ * Method getXMLName.
+ *
-+ * @return the String representation of this
-+ * BindXmlAutoNamingType
++ * @return the XML Name for the Class being described.
+ */
-+ public java.lang.String toString(
++ @Override()
++ public java.lang.String getXMLName(
+ ) {
-+ return this.stringValue;
++ return _xmlName;
+ }
+
+ /**
-+ * Method valueOf.Returns a new BindXmlAutoNamingType based on
-+ * the given String value.
++ * Method isElementDefinition.
+ *
-+ * @param string
-+ * @return the BindXmlAutoNamingType value of parameter 'string'
++ * @return true if XML schema definition of this Class is that
++ * of a global
++ * element or element with anonymous type definition.
+ */
-+ public static org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType valueOf(
-+ final java.lang.String string) {
-+ java.lang.Object obj = null;
-+ if (string != null) {
-+ obj = _memberTable.get(string);
-+ }
-+ if (obj == null) {
-+ String err = "" + string + " is not a valid BindXmlAutoNamingType";
-+ throw new IllegalArgumentException(err);
-+ }
-+ return (BindXmlAutoNamingType) obj;
++ public boolean isElementDefinition(
++ ) {
++ return _elementDefinition;
+ }
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/types/BindXmlNodeType.java
-@@ -0,0 +1,174 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/FieldMappingDescriptor.java
+@@ -0,0 +1,1031 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
+
-+package org.exolab.castor.mapping.xml.types;
++package org.exolab.castor.mapping.xml.descriptors;
++
++ //---------------------------------/
++ //- Imported classes and packages -/
++//---------------------------------/
++
++import org.exolab.castor.mapping.xml.FieldMapping;
+
+/**
-+ * Class BindXmlNodeType.
++ * Class FieldMappingDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+ at SuppressWarnings("serial")
-+public class BindXmlNodeType implements java.io.Serializable {
++public class FieldMappingDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -8362,1327 +8359,909 @@ Last-Update: 2010-06-27
+ //--------------------------/
+
+ /**
-+ * The attribute type
-+ */
-+ public static final int ATTRIBUTE_TYPE = 0;
-+
-+ /**
-+ * The instance of the attribute type
-+ */
-+ public static final BindXmlNodeType ATTRIBUTE = new BindXmlNodeType(ATTRIBUTE_TYPE, "attribute");
-+
-+ /**
-+ * The element type
-+ */
-+ public static final int ELEMENT_TYPE = 1;
-+
-+ /**
-+ * The instance of the element type
-+ */
-+ public static final BindXmlNodeType ELEMENT = new BindXmlNodeType(ELEMENT_TYPE, "element");
-+
-+ /**
-+ * The namespace type
-+ */
-+ public static final int NAMESPACE_TYPE = 2;
-+
-+ /**
-+ * The instance of the namespace type
-+ */
-+ public static final BindXmlNodeType NAMESPACE = new BindXmlNodeType(NAMESPACE_TYPE, "namespace");
-+
-+ /**
-+ * The text type
++ * Field _elementDefinition.
+ */
-+ public static final int TEXT_TYPE = 3;
++ private boolean _elementDefinition;
+
+ /**
-+ * The instance of the text type
++ * Field _nsPrefix.
+ */
-+ public static final BindXmlNodeType TEXT = new BindXmlNodeType(TEXT_TYPE, "text");
++ private java.lang.String _nsPrefix;
+
+ /**
-+ * Field _memberTable.
++ * Field _nsURI.
+ */
-+ private static java.util.Hashtable<Object,Object> _memberTable = init();
++ private java.lang.String _nsURI;
+
+ /**
-+ * Field type.
++ * Field _xmlName.
+ */
-+ private final int type;
++ private java.lang.String _xmlName;
+
+ /**
-+ * Field stringValue.
++ * Field _identity.
+ */
-+ private java.lang.String stringValue = null;
++ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
+
+
+ //----------------/
+ //- Constructors -/
+ //----------------/
+
-+ private BindXmlNodeType(final int type, final java.lang.String value) {
++ public FieldMappingDescriptor() {
+ super();
-+ this.type = type;
-+ this.stringValue = value;
-+ }
-+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
++ _nsURI = "http://castor.exolab.org/";
++ _xmlName = "field";
++ _elementDefinition = true;
+
-+ /**
-+ * Method enumerate.Returns an enumeration of all possible
-+ * instances of BindXmlNodeType
-+ *
-+ * @return an Enumeration over all possible instances of
-+ * BindXmlNodeType
-+ */
-+ public static java.util.Enumeration<? extends java.lang.Object> enumerate(
-+ ) {
-+ return _memberTable.elements();
-+ }
++ //-- set grouping compositor
++ setCompositorAsSequence();
++ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
++ org.exolab.castor.mapping.FieldHandler handler = null;
++ org.exolab.castor.xml.FieldValidator fieldValidator = null;
++ //-- initialize attribute descriptors
+
-+ /**
-+ * Method getType.Returns the type of this BindXmlNodeType
-+ *
-+ * @return the type of this BindXmlNodeType
-+ */
-+ public int getType(
-+ ) {
-+ return this.type;
-+ }
++ //-- _name
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ return target.getName();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ target.setName( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setRequired(true);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+ /**
-+ * Method init.
-+ *
-+ * @return the initialized Hashtable for the member table
-+ */
-+ private static java.util.Hashtable<Object,Object> init(
-+ ) {
-+ java.util.Hashtable<Object, Object> members = new java.util.Hashtable<Object, Object>();
-+ members.put("attribute", ATTRIBUTE);
-+ members.put("element", ELEMENT);
-+ members.put("namespace", NAMESPACE);
-+ members.put("text", TEXT);
-+ return members;
-+ }
-+
-+ /**
-+ * Method readResolve. will be called during deserialization to
-+ * replace the deserialized object with the correct constant
-+ * instance.
-+ *
-+ * @return this deserialized object
-+ */
-+ private java.lang.Object readResolve(
-+ ) {
-+ return valueOf(this.stringValue);
-+ }
-+
-+ /**
-+ * Method toString.Returns the String representation of this
-+ * BindXmlNodeType
-+ *
-+ * @return the String representation of this BindXmlNodeType
-+ */
-+ public java.lang.String toString(
-+ ) {
-+ return this.stringValue;
-+ }
-+
-+ /**
-+ * Method valueOf.Returns a new BindXmlNodeType based on the
-+ * given String value.
-+ *
-+ * @param string
-+ * @return the BindXmlNodeType value of parameter 'string'
-+ */
-+ public static org.exolab.castor.mapping.xml.types.BindXmlNodeType valueOf(
-+ final java.lang.String string) {
-+ java.lang.Object obj = null;
-+ if (string != null) {
-+ obj = _memberTable.get(string);
-+ }
-+ if (obj == null) {
-+ String err = "" + string + " is not a valid BindXmlNodeType";
-+ throw new IllegalArgumentException(err);
++ //-- validation code for: _name
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
+ }
-+ return (BindXmlNodeType) obj;
-+ }
++ desc.setValidator(fieldValidator);
++ //-- _type
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_type", "type", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ return target.getType();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ target.setType( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/types/ClassMappingAccessType.java
-@@ -0,0 +1,176 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
++ //-- validation code for: _type
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- _required
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_required", "required", org.exolab.castor.xml.NodeType.Attribute);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ if (!target.hasRequired()) { return null; }
++ return (target.getRequired() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ // if null, use delete method for optional primitives
++ if (value == null) {
++ target.deleteRequired();
++ return;
++ }
++ target.setRequired( ((java.lang.Boolean) value).booleanValue());
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("boolean");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+package org.exolab.castor.mapping.xml.types;
++ //-- validation code for: _required
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ fieldValidator.setValidator(typeValidator);
++ }
++ desc.setValidator(fieldValidator);
++ //-- _transient
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_transient", "transient", org.exolab.castor.xml.NodeType.Attribute);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ if (!target.hasTransient()) { return null; }
++ return (target.getTransient() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ // if null, use delete method for optional primitives
++ if (value == null) {
++ target.deleteTransient();
++ return;
++ }
++ target.setTransient( ((java.lang.Boolean) value).booleanValue());
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("boolean");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+/**
-+ * Class ClassMappingAccessType.
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+ at SuppressWarnings("serial")
-+public class ClassMappingAccessType implements java.io.Serializable {
++ //-- validation code for: _transient
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ fieldValidator.setValidator(typeValidator);
++ }
++ desc.setValidator(fieldValidator);
++ //-- _nillable
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_nillable", "nillable", org.exolab.castor.xml.NodeType.Attribute);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ if (!target.hasNillable()) { return null; }
++ return (target.getNillable() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ // if null, use delete method for optional primitives
++ if (value == null) {
++ target.deleteNillable();
++ return;
++ }
++ target.setNillable( ((java.lang.Boolean) value).booleanValue());
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("boolean");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
++ //-- validation code for: _nillable
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ fieldValidator.setValidator(typeValidator);
++ }
++ desc.setValidator(fieldValidator);
++ //-- _direct
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_direct", "direct", org.exolab.castor.xml.NodeType.Attribute);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ if (!target.hasDirect()) { return null; }
++ return (target.getDirect() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ // if null, use delete method for optional primitives
++ if (value == null) {
++ target.deleteDirect();
++ return;
++ }
++ target.setDirect( ((java.lang.Boolean) value).booleanValue());
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("boolean");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
-+
-+ /**
-+ * The read-only type
-+ */
-+ public static final int READ_ONLY_TYPE = 0;
-+
-+ /**
-+ * The instance of the read-only type
-+ */
-+ public static final ClassMappingAccessType READ_ONLY = new ClassMappingAccessType(READ_ONLY_TYPE, "read-only");
-+
-+ /**
-+ * The shared type
-+ */
-+ public static final int SHARED_TYPE = 1;
-+
-+ /**
-+ * The instance of the shared type
-+ */
-+ public static final ClassMappingAccessType SHARED = new ClassMappingAccessType(SHARED_TYPE, "shared");
-+
-+ /**
-+ * The exclusive type
-+ */
-+ public static final int EXCLUSIVE_TYPE = 2;
-+
-+ /**
-+ * The instance of the exclusive type
-+ */
-+ public static final ClassMappingAccessType EXCLUSIVE = new ClassMappingAccessType(EXCLUSIVE_TYPE, "exclusive");
-+
-+ /**
-+ * The db-locked type
-+ */
-+ public static final int DB_LOCKED_TYPE = 3;
-+
-+ /**
-+ * The instance of the db-locked type
-+ */
-+ public static final ClassMappingAccessType DB_LOCKED = new ClassMappingAccessType(DB_LOCKED_TYPE, "db-locked");
-+
-+ /**
-+ * Field _memberTable.
-+ */
-+ private static java.util.Hashtable<Object,Object> _memberTable = init();
-+
-+ /**
-+ * Field type.
-+ */
-+ private final int type;
-+
-+ /**
-+ * Field stringValue.
-+ */
-+ private java.lang.String stringValue = null;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
-+
-+ private ClassMappingAccessType(final int type, final java.lang.String value) {
-+ super();
-+ this.type = type;
-+ this.stringValue = value;
-+ }
-+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
-+
-+ /**
-+ * Method enumerate.Returns an enumeration of all possible
-+ * instances of ClassMappingAccessType
-+ *
-+ * @return an Enumeration over all possible instances of
-+ * ClassMappingAccessType
-+ */
-+ public static java.util.Enumeration<? extends java.lang.Object> enumerate(
-+ ) {
-+ return _memberTable.elements();
-+ }
-+
-+ /**
-+ * Method getType.Returns the type of this
-+ * ClassMappingAccessType
-+ *
-+ * @return the type of this ClassMappingAccessType
-+ */
-+ public int getType(
-+ ) {
-+ return this.type;
-+ }
-+
-+ /**
-+ * Method init.
-+ *
-+ * @return the initialized Hashtable for the member table
-+ */
-+ private static java.util.Hashtable<Object,Object> init(
-+ ) {
-+ java.util.Hashtable<Object, Object> members = new java.util.Hashtable<Object, Object>();
-+ members.put("read-only", READ_ONLY);
-+ members.put("shared", SHARED);
-+ members.put("exclusive", EXCLUSIVE);
-+ members.put("db-locked", DB_LOCKED);
-+ return members;
-+ }
-+
-+ /**
-+ * Method readResolve. will be called during deserialization to
-+ * replace the deserialized object with the correct constant
-+ * instance.
-+ *
-+ * @return this deserialized object
-+ */
-+ private java.lang.Object readResolve(
-+ ) {
-+ return valueOf(this.stringValue);
-+ }
-+
-+ /**
-+ * Method toString.Returns the String representation of this
-+ * ClassMappingAccessType
-+ *
-+ * @return the String representation of this
-+ * ClassMappingAccessType
-+ */
-+ public java.lang.String toString(
-+ ) {
-+ return this.stringValue;
-+ }
-+
-+ /**
-+ * Method valueOf.Returns a new ClassMappingAccessType based on
-+ * the given String value.
-+ *
-+ * @param string
-+ * @return the ClassMappingAccessType value of parameter 'string
-+ */
-+ public static org.exolab.castor.mapping.xml.types.ClassMappingAccessType valueOf(
-+ final java.lang.String string) {
-+ java.lang.Object obj = null;
-+ if (string != null) {
-+ obj = _memberTable.get(string);
-+ }
-+ if (obj == null) {
-+ String err = "" + string + " is not a valid ClassMappingAccessType";
-+ throw new IllegalArgumentException(err);
++ //-- validation code for: _direct
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ fieldValidator.setValidator(typeValidator);
+ }
-+ return (ClassMappingAccessType) obj;
-+ }
-+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/types/.castor.cdr
-@@ -0,0 +1,6 @@
-+#Fri Jun 11 21:09:46 VET 2010
-+org.exolab.castor.mapping.xml.types.SqlDirtyType=org.exolab.castor.mapping.xml.types.descriptors.SqlDirtyTypeDescriptor
-+org.exolab.castor.mapping.xml.types.FieldMappingCollectionType=org.exolab.castor.mapping.xml.types.descriptors.FieldMappingCollectionTypeDescriptor
-+org.exolab.castor.mapping.xml.types.ClassMappingAccessType=org.exolab.castor.mapping.xml.types.descriptors.ClassMappingAccessTypeDescriptor
-+org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType=org.exolab.castor.mapping.xml.types.descriptors.BindXmlAutoNamingTypeDescriptor
-+org.exolab.castor.mapping.xml.types.BindXmlNodeType=org.exolab.castor.mapping.xml.types.descriptors.BindXmlNodeTypeDescriptor
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/types/FieldMappingCollectionType.java
-@@ -0,0 +1,254 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
-+
-+package org.exolab.castor.mapping.xml.types;
-+
-+/**
-+ * Class FieldMappingCollectionType.
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+ at SuppressWarnings("serial")
-+public class FieldMappingCollectionType implements java.io.Serializable {
-+
-+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
-+
-+ /**
-+ * The array type
-+ */
-+ public static final int ARRAY_TYPE = 0;
-+
-+ /**
-+ * The instance of the array type
-+ */
-+ public static final FieldMappingCollectionType ARRAY = new FieldMappingCollectionType(ARRAY_TYPE, "array");
-+
-+ /**
-+ * The vector type
-+ */
-+ public static final int VECTOR_TYPE = 1;
++ desc.setValidator(fieldValidator);
++ //-- _lazy
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_lazy", "lazy", org.exolab.castor.xml.NodeType.Attribute);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ if (!target.hasLazy()) { return null; }
++ return (target.getLazy() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ // if null, use delete method for optional primitives
++ if (value == null) {
++ target.deleteLazy();
++ return;
++ }
++ target.setLazy( ((java.lang.Boolean) value).booleanValue());
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("boolean");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+ /**
-+ * The instance of the vector type
-+ */
-+ public static final FieldMappingCollectionType VECTOR = new FieldMappingCollectionType(VECTOR_TYPE, "vector");
++ //-- validation code for: _lazy
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ fieldValidator.setValidator(typeValidator);
++ }
++ desc.setValidator(fieldValidator);
++ //-- _container
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_container", "container", org.exolab.castor.xml.NodeType.Attribute);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ if (!target.hasContainer()) { return null; }
++ return (target.getContainer() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ // if null, use delete method for optional primitives
++ if (value == null) {
++ target.deleteContainer();
++ return;
++ }
++ target.setContainer( ((java.lang.Boolean) value).booleanValue());
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("boolean");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+ /**
-+ * The arraylist type
-+ */
-+ public static final int ARRAYLIST_TYPE = 2;
++ //-- validation code for: _container
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ fieldValidator.setValidator(typeValidator);
++ }
++ desc.setValidator(fieldValidator);
++ //-- _getMethod
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_getMethod", "get-method", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ return target.getGetMethod();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ target.setGetMethod( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+ /**
-+ * The instance of the arraylist type
-+ */
-+ public static final FieldMappingCollectionType ARRAYLIST = new FieldMappingCollectionType(ARRAYLIST_TYPE, "arraylist");
-+
-+ /**
-+ * The hashtable type
-+ */
-+ public static final int HASHTABLE_TYPE = 3;
-+
-+ /**
-+ * The instance of the hashtable type
-+ */
-+ public static final FieldMappingCollectionType HASHTABLE = new FieldMappingCollectionType(HASHTABLE_TYPE, "hashtable");
-+
-+ /**
-+ * The collection type
-+ */
-+ public static final int COLLECTION_TYPE = 4;
-+
-+ /**
-+ * The instance of the collection type
-+ */
-+ public static final FieldMappingCollectionType COLLECTION = new FieldMappingCollectionType(COLLECTION_TYPE, "collection");
-+
-+ /**
-+ * The set type
-+ */
-+ public static final int SET_TYPE = 5;
-+
-+ /**
-+ * The instance of the set type
-+ */
-+ public static final FieldMappingCollectionType SET = new FieldMappingCollectionType(SET_TYPE, "set");
-+
-+ /**
-+ * The map type
-+ */
-+ public static final int MAP_TYPE = 6;
-+
-+ /**
-+ * The instance of the map type
-+ */
-+ public static final FieldMappingCollectionType MAP = new FieldMappingCollectionType(MAP_TYPE, "map");
-+
-+ /**
-+ * The enumerate type
-+ */
-+ public static final int ENUMERATE_TYPE = 7;
-+
-+ /**
-+ * The instance of the enumerate type
-+ */
-+ public static final FieldMappingCollectionType ENUMERATE = new FieldMappingCollectionType(ENUMERATE_TYPE, "enumerate");
-+
-+ /**
-+ * The sortedset type
-+ */
-+ public static final int SORTEDSET_TYPE = 8;
-+
-+ /**
-+ * The instance of the sortedset type
-+ */
-+ public static final FieldMappingCollectionType SORTEDSET = new FieldMappingCollectionType(SORTEDSET_TYPE, "sortedset");
-+
-+ /**
-+ * The iterator type
-+ */
-+ public static final int ITERATOR_TYPE = 9;
-+
-+ /**
-+ * The instance of the iterator type
-+ */
-+ public static final FieldMappingCollectionType ITERATOR = new FieldMappingCollectionType(ITERATOR_TYPE, "iterator");
-+
-+ /**
-+ * The sortedmap type
-+ */
-+ public static final int SORTEDMAP_TYPE = 10;
-+
-+ /**
-+ * The instance of the sortedmap type
-+ */
-+ public static final FieldMappingCollectionType SORTEDMAP = new FieldMappingCollectionType(SORTEDMAP_TYPE, "sortedmap");
-+
-+ /**
-+ * Field _memberTable.
-+ */
-+ private static java.util.Hashtable<Object,Object> _memberTable = init();
-+
-+ /**
-+ * Field type.
-+ */
-+ private final int type;
-+
-+ /**
-+ * Field stringValue.
-+ */
-+ private java.lang.String stringValue = null;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
-+
-+ private FieldMappingCollectionType(final int type, final java.lang.String value) {
-+ super();
-+ this.type = type;
-+ this.stringValue = value;
-+ }
-+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
-+
-+ /**
-+ * Method enumerate.Returns an enumeration of all possible
-+ * instances of FieldMappingCollectionType
-+ *
-+ * @return an Enumeration over all possible instances of
-+ * FieldMappingCollectionType
-+ */
-+ public static java.util.Enumeration<? extends java.lang.Object> enumerate(
-+ ) {
-+ return _memberTable.elements();
-+ }
-+
-+ /**
-+ * Method getType.Returns the type of this
-+ * FieldMappingCollectionType
-+ *
-+ * @return the type of this FieldMappingCollectionType
-+ */
-+ public int getType(
-+ ) {
-+ return this.type;
-+ }
-+
-+ /**
-+ * Method init.
-+ *
-+ * @return the initialized Hashtable for the member table
-+ */
-+ private static java.util.Hashtable<Object,Object> init(
-+ ) {
-+ java.util.Hashtable<Object, Object> members = new java.util.Hashtable<Object, Object>();
-+ members.put("array", ARRAY);
-+ members.put("vector", VECTOR);
-+ members.put("arraylist", ARRAYLIST);
-+ members.put("hashtable", HASHTABLE);
-+ members.put("collection", COLLECTION);
-+ members.put("set", SET);
-+ members.put("map", MAP);
-+ members.put("enumerate", ENUMERATE);
-+ members.put("sortedset", SORTEDSET);
-+ members.put("iterator", ITERATOR);
-+ members.put("sortedmap", SORTEDMAP);
-+ return members;
-+ }
-+
-+ /**
-+ * Method readResolve. will be called during deserialization to
-+ * replace the deserialized object with the correct constant
-+ * instance.
-+ *
-+ * @return this deserialized object
-+ */
-+ private java.lang.Object readResolve(
-+ ) {
-+ return valueOf(this.stringValue);
-+ }
-+
-+ /**
-+ * Method toString.Returns the String representation of this
-+ * FieldMappingCollectionType
-+ *
-+ * @return the String representation of this
-+ * FieldMappingCollectionType
-+ */
-+ public java.lang.String toString(
-+ ) {
-+ return this.stringValue;
-+ }
-+
-+ /**
-+ * Method valueOf.Returns a new FieldMappingCollectionType
-+ * based on the given String value.
-+ *
-+ * @param string
-+ * @return the FieldMappingCollectionType value of parameter
-+ * 'string'
-+ */
-+ public static org.exolab.castor.mapping.xml.types.FieldMappingCollectionType valueOf(
-+ final java.lang.String string) {
-+ java.lang.Object obj = null;
-+ if (string != null) {
-+ obj = _memberTable.get(string);
-+ }
-+ if (obj == null) {
-+ String err = "" + string + " is not a valid FieldMappingCollectionType";
-+ throw new IllegalArgumentException(err);
++ //-- validation code for: _getMethod
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
+ }
-+ return (FieldMappingCollectionType) obj;
-+ }
-+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/types/descriptors/FieldMappingCollectionTypeDescriptor.java
-@@ -0,0 +1,162 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
-+
-+package org.exolab.castor.mapping.xml.types.descriptors;
-+
-+ //---------------------------------/
-+ //- Imported classes and packages -/
-+//---------------------------------/
-+
-+import org.exolab.castor.mapping.xml.types.FieldMappingCollectionType;
-+
-+/**
-+ * Class FieldMappingCollectionTypeDescriptor.
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+public class FieldMappingCollectionTypeDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
-+
-+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
-+
-+ /**
-+ * Field _elementDefinition.
-+ */
-+ private boolean _elementDefinition;
-+
-+ /**
-+ * Field _nsPrefix.
-+ */
-+ private java.lang.String _nsPrefix;
-+
-+ /**
-+ * Field _nsURI.
-+ */
-+ private java.lang.String _nsURI;
-+
-+ /**
-+ * Field _xmlName.
-+ */
-+ private java.lang.String _xmlName;
-+
-+ /**
-+ * Field _identity.
-+ */
-+ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
-+
-+ public FieldMappingCollectionTypeDescriptor() {
-+ super();
-+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "FieldMappingCollectionType";
-+ _elementDefinition = false;
-+ }
-+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
-+
-+ /**
-+ * Method getAccessMode.
-+ *
-+ * @return the access mode specified for this class.
-+ */
-+ @Override()
-+ public org.exolab.castor.mapping.AccessMode getAccessMode(
-+ ) {
-+ return null;
-+ }
-+
-+ /**
-+ * Method getIdentity.
-+ *
-+ * @return the identity field, null if this class has no
-+ * identity.
-+ */
-+ @Override()
-+ public org.exolab.castor.mapping.FieldDescriptor getIdentity(
-+ ) {
-+ return _identity;
-+ }
-+
-+ /**
-+ * Method getJavaClass.
-+ *
-+ * @return the Java class represented by this descriptor.
-+ */
-+ @Override()
-+ public java.lang.Class getJavaClass(
-+ ) {
-+ return org.exolab.castor.mapping.xml.types.FieldMappingCollectionType.class;
-+ }
-+
-+ /**
-+ * Method getNameSpacePrefix.
-+ *
-+ * @return the namespace prefix to use when marshaling as XML.
-+ */
-+ @Override()
-+ public java.lang.String getNameSpacePrefix(
-+ ) {
-+ return _nsPrefix;
-+ }
-+
-+ /**
-+ * Method getNameSpaceURI.
-+ *
-+ * @return the namespace URI used when marshaling and
-+ * unmarshaling as XML.
-+ */
-+ @Override()
-+ public java.lang.String getNameSpaceURI(
-+ ) {
-+ return _nsURI;
-+ }
-+
-+ /**
-+ * Method getValidator.
-+ *
-+ * @return a specific validator for the class described by this
-+ * ClassDescriptor.
-+ */
-+ @Override()
-+ public org.exolab.castor.xml.TypeValidator getValidator(
-+ ) {
-+ return this;
-+ }
-+
-+ /**
-+ * Method getXMLName.
-+ *
-+ * @return the XML Name for the Class being described.
-+ */
-+ @Override()
-+ public java.lang.String getXMLName(
-+ ) {
-+ return _xmlName;
-+ }
-+
-+ /**
-+ * Method isElementDefinition.
-+ *
-+ * @return true if XML schema definition of this Class is that
-+ * of a global
-+ * element or element with anonymous type definition.
-+ */
-+ public boolean isElementDefinition(
-+ ) {
-+ return _elementDefinition;
-+ }
-+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/types/descriptors/ClassMappingAccessTypeDescriptor.java
-@@ -0,0 +1,162 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
-+
-+package org.exolab.castor.mapping.xml.types.descriptors;
-+
-+ //---------------------------------/
-+ //- Imported classes and packages -/
-+//---------------------------------/
-+
-+import org.exolab.castor.mapping.xml.types.ClassMappingAccessType;
-+
-+/**
-+ * Class ClassMappingAccessTypeDescriptor.
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+public class ClassMappingAccessTypeDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
-+
-+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
-+
-+ /**
-+ * Field _elementDefinition.
-+ */
-+ private boolean _elementDefinition;
-+
-+ /**
-+ * Field _nsPrefix.
-+ */
-+ private java.lang.String _nsPrefix;
-+
-+ /**
-+ * Field _nsURI.
-+ */
-+ private java.lang.String _nsURI;
-+
-+ /**
-+ * Field _xmlName.
-+ */
-+ private java.lang.String _xmlName;
-+
-+ /**
-+ * Field _identity.
-+ */
-+ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
-+
-+ public ClassMappingAccessTypeDescriptor() {
-+ super();
-+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "ClassMappingAccessType";
-+ _elementDefinition = false;
-+ }
-+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
-+
-+ /**
-+ * Method getAccessMode.
-+ *
-+ * @return the access mode specified for this class.
-+ */
-+ @Override()
-+ public org.exolab.castor.mapping.AccessMode getAccessMode(
-+ ) {
-+ return null;
-+ }
-+
-+ /**
-+ * Method getIdentity.
-+ *
-+ * @return the identity field, null if this class has no
-+ * identity.
-+ */
-+ @Override()
-+ public org.exolab.castor.mapping.FieldDescriptor getIdentity(
-+ ) {
-+ return _identity;
-+ }
-+
-+ /**
-+ * Method getJavaClass.
-+ *
-+ * @return the Java class represented by this descriptor.
-+ */
-+ @Override()
-+ public java.lang.Class getJavaClass(
-+ ) {
-+ return org.exolab.castor.mapping.xml.types.ClassMappingAccessType.class;
-+ }
-+
-+ /**
-+ * Method getNameSpacePrefix.
-+ *
-+ * @return the namespace prefix to use when marshaling as XML.
-+ */
-+ @Override()
-+ public java.lang.String getNameSpacePrefix(
-+ ) {
-+ return _nsPrefix;
-+ }
-+
-+ /**
-+ * Method getNameSpaceURI.
-+ *
-+ * @return the namespace URI used when marshaling and
-+ * unmarshaling as XML.
-+ */
-+ @Override()
-+ public java.lang.String getNameSpaceURI(
-+ ) {
-+ return _nsURI;
-+ }
-+
-+ /**
-+ * Method getValidator.
-+ *
-+ * @return a specific validator for the class described by this
-+ * ClassDescriptor.
-+ */
-+ @Override()
-+ public org.exolab.castor.xml.TypeValidator getValidator(
-+ ) {
-+ return this;
-+ }
-+
-+ /**
-+ * Method getXMLName.
-+ *
-+ * @return the XML Name for the Class being described.
-+ */
-+ @Override()
-+ public java.lang.String getXMLName(
-+ ) {
-+ return _xmlName;
-+ }
-+
-+ /**
-+ * Method isElementDefinition.
-+ *
-+ * @return true if XML schema definition of this Class is that
-+ * of a global
-+ * element or element with anonymous type definition.
-+ */
-+ public boolean isElementDefinition(
-+ ) {
-+ return _elementDefinition;
-+ }
-+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/types/descriptors/BindXmlNodeTypeDescriptor.java
-@@ -0,0 +1,162 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
-+
-+package org.exolab.castor.mapping.xml.types.descriptors;
-+
-+ //---------------------------------/
-+ //- Imported classes and packages -/
-+//---------------------------------/
-+
-+import org.exolab.castor.mapping.xml.types.BindXmlNodeType;
-+
-+/**
-+ * Class BindXmlNodeTypeDescriptor.
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+public class BindXmlNodeTypeDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
-+
-+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
-+
-+ /**
-+ * Field _elementDefinition.
-+ */
-+ private boolean _elementDefinition;
-+
-+ /**
-+ * Field _nsPrefix.
-+ */
-+ private java.lang.String _nsPrefix;
-+
-+ /**
-+ * Field _nsURI.
-+ */
-+ private java.lang.String _nsURI;
-+
-+ /**
-+ * Field _xmlName.
-+ */
-+ private java.lang.String _xmlName;
-+
-+ /**
-+ * Field _identity.
-+ */
-+ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
-+
-+ public BindXmlNodeTypeDescriptor() {
-+ super();
-+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "BindXmlNodeType";
-+ _elementDefinition = false;
-+ }
-+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
-+
-+ /**
-+ * Method getAccessMode.
-+ *
-+ * @return the access mode specified for this class.
-+ */
-+ @Override()
-+ public org.exolab.castor.mapping.AccessMode getAccessMode(
-+ ) {
-+ return null;
-+ }
-+
-+ /**
-+ * Method getIdentity.
-+ *
-+ * @return the identity field, null if this class has no
-+ * identity.
-+ */
-+ @Override()
-+ public org.exolab.castor.mapping.FieldDescriptor getIdentity(
-+ ) {
-+ return _identity;
-+ }
-+
-+ /**
-+ * Method getJavaClass.
-+ *
-+ * @return the Java class represented by this descriptor.
-+ */
-+ @Override()
-+ public java.lang.Class getJavaClass(
-+ ) {
-+ return org.exolab.castor.mapping.xml.types.BindXmlNodeType.class;
-+ }
-+
-+ /**
-+ * Method getNameSpacePrefix.
-+ *
-+ * @return the namespace prefix to use when marshaling as XML.
-+ */
-+ @Override()
-+ public java.lang.String getNameSpacePrefix(
-+ ) {
-+ return _nsPrefix;
-+ }
-+
-+ /**
-+ * Method getNameSpaceURI.
-+ *
-+ * @return the namespace URI used when marshaling and
-+ * unmarshaling as XML.
-+ */
-+ @Override()
-+ public java.lang.String getNameSpaceURI(
-+ ) {
-+ return _nsURI;
-+ }
-+
-+ /**
-+ * Method getValidator.
-+ *
-+ * @return a specific validator for the class described by this
-+ * ClassDescriptor.
-+ */
-+ @Override()
-+ public org.exolab.castor.xml.TypeValidator getValidator(
-+ ) {
-+ return this;
-+ }
-+
-+ /**
-+ * Method getXMLName.
-+ *
-+ * @return the XML Name for the Class being described.
-+ */
-+ @Override()
-+ public java.lang.String getXMLName(
-+ ) {
-+ return _xmlName;
-+ }
-+
-+ /**
-+ * Method isElementDefinition.
-+ *
-+ * @return true if XML schema definition of this Class is that
-+ * of a global
-+ * element or element with anonymous type definition.
-+ */
-+ public boolean isElementDefinition(
-+ ) {
-+ return _elementDefinition;
-+ }
-+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/types/descriptors/BindXmlAutoNamingTypeDescriptor.java
-@@ -0,0 +1,162 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
-+
-+package org.exolab.castor.mapping.xml.types.descriptors;
-+
-+ //---------------------------------/
-+ //- Imported classes and packages -/
-+//---------------------------------/
-+
-+import org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType;
-+
-+/**
-+ * Class BindXmlAutoNamingTypeDescriptor.
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+public class BindXmlAutoNamingTypeDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
-+
-+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
-+
-+ /**
-+ * Field _elementDefinition.
-+ */
-+ private boolean _elementDefinition;
-+
-+ /**
-+ * Field _nsPrefix.
-+ */
-+ private java.lang.String _nsPrefix;
-+
-+ /**
-+ * Field _nsURI.
-+ */
-+ private java.lang.String _nsURI;
-+
-+ /**
-+ * Field _xmlName.
-+ */
-+ private java.lang.String _xmlName;
-+
-+ /**
-+ * Field _identity.
-+ */
-+ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
-+
-+ public BindXmlAutoNamingTypeDescriptor() {
-+ super();
-+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "BindXmlAutoNamingType";
-+ _elementDefinition = false;
-+ }
-+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
-+
-+ /**
-+ * Method getAccessMode.
-+ *
-+ * @return the access mode specified for this class.
-+ */
-+ @Override()
-+ public org.exolab.castor.mapping.AccessMode getAccessMode(
-+ ) {
-+ return null;
-+ }
-+
-+ /**
-+ * Method getIdentity.
-+ *
-+ * @return the identity field, null if this class has no
-+ * identity.
-+ */
-+ @Override()
-+ public org.exolab.castor.mapping.FieldDescriptor getIdentity(
-+ ) {
-+ return _identity;
-+ }
-+
-+ /**
-+ * Method getJavaClass.
-+ *
-+ * @return the Java class represented by this descriptor.
-+ */
-+ @Override()
-+ public java.lang.Class getJavaClass(
-+ ) {
-+ return org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType.class;
-+ }
-+
-+ /**
-+ * Method getNameSpacePrefix.
-+ *
-+ * @return the namespace prefix to use when marshaling as XML.
-+ */
-+ @Override()
-+ public java.lang.String getNameSpacePrefix(
-+ ) {
-+ return _nsPrefix;
-+ }
-+
-+ /**
-+ * Method getNameSpaceURI.
-+ *
-+ * @return the namespace URI used when marshaling and
-+ * unmarshaling as XML.
-+ */
-+ @Override()
-+ public java.lang.String getNameSpaceURI(
-+ ) {
-+ return _nsURI;
-+ }
-+
-+ /**
-+ * Method getValidator.
-+ *
-+ * @return a specific validator for the class described by this
-+ * ClassDescriptor.
-+ */
-+ @Override()
-+ public org.exolab.castor.xml.TypeValidator getValidator(
-+ ) {
-+ return this;
-+ }
-+
-+ /**
-+ * Method getXMLName.
-+ *
-+ * @return the XML Name for the Class being described.
-+ */
-+ @Override()
-+ public java.lang.String getXMLName(
-+ ) {
-+ return _xmlName;
-+ }
-+
-+ /**
-+ * Method isElementDefinition.
-+ *
-+ * @return true if XML schema definition of this Class is that
-+ * of a global
-+ * element or element with anonymous type definition.
-+ */
-+ public boolean isElementDefinition(
-+ ) {
-+ return _elementDefinition;
-+ }
-+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/types/descriptors/SqlDirtyTypeDescriptor.java
-@@ -0,0 +1,162 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
-+
-+package org.exolab.castor.mapping.xml.types.descriptors;
-+
-+ //---------------------------------/
-+ //- Imported classes and packages -/
-+//---------------------------------/
++ desc.setValidator(fieldValidator);
++ //-- _hasMethod
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_hasMethod", "has-method", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ return target.getHasMethod();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ target.setHasMethod( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+import org.exolab.castor.mapping.xml.types.SqlDirtyType;
++ //-- validation code for: _hasMethod
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- _setMethod
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_setMethod", "set-method", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ return target.getSetMethod();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ target.setSetMethod( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+/**
-+ * Class SqlDirtyTypeDescriptor.
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+public class SqlDirtyTypeDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++ //-- validation code for: _setMethod
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- _createMethod
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_createMethod", "create-method", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ return target.getCreateMethod();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ target.setCreateMethod( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
++ //-- validation code for: _createMethod
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- _handler
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_handler", "handler", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ return target.getHandler();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ target.setHandler( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
++ //-- validation code for: _handler
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- _collection
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.types.FieldMappingCollectionType.class, "_collection", "collection", org.exolab.castor.xml.NodeType.Attribute);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ return target.getCollection();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ target.setCollection( (org.exolab.castor.mapping.xml.types.FieldMappingCollectionType) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ handler = new org.exolab.castor.xml.handlers.EnumFieldHandler(org.exolab.castor.mapping.xml.types.FieldMappingCollectionType.class, handler);
++ desc.setImmutable(true);
++ desc.setSchemaType("FieldMappingCollectionType");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+ /**
-+ * Field _elementDefinition.
-+ */
-+ private boolean _elementDefinition;
++ //-- validation code for: _collection
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
++ //-- _comparator
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_comparator", "comparator", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ return target.getComparator();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ target.setComparator( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+ /**
-+ * Field _nsPrefix.
-+ */
-+ private java.lang.String _nsPrefix;
++ //-- validation code for: _comparator
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- _identity
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_identity", "identity", org.exolab.castor.xml.NodeType.Attribute);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ if (!target.hasIdentity()) { return null; }
++ return (target.getIdentity() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ // if null, use delete method for optional primitives
++ if (value == null) {
++ target.deleteIdentity();
++ return;
++ }
++ target.setIdentity( ((java.lang.Boolean) value).booleanValue());
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("boolean");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+ /**
-+ * Field _nsURI.
-+ */
-+ private java.lang.String _nsURI;
++ //-- validation code for: _identity
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ fieldValidator.setValidator(typeValidator);
++ }
++ desc.setValidator(fieldValidator);
++ //-- initialize element descriptors
+
-+ /**
-+ * Field _xmlName.
-+ */
-+ private java.lang.String _xmlName;
++ //-- _description
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_description", "description", org.exolab.castor.xml.NodeType.Element);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ return target.getDescription();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ target.setDescription( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
+
-+ /**
-+ * Field _identity.
-+ */
-+ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
++ //-- validation code for: _description
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- _sql
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.Sql.class, "_sql", "sql", org.exolab.castor.xml.NodeType.Element);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ return target.getSql();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ target.setSql( (org.exolab.castor.mapping.xml.Sql) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("org.exolab.castor.mapping.xml.Sql");
++ desc.setHandler(handler);
++ desc.setNameSpaceURI("http://castor.exolab.org/");
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
+
++ //-- validation code for: _sql
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
++ //-- _bindXml
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.BindXml.class, "_bindXml", "bind-xml", org.exolab.castor.xml.NodeType.Element);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ return target.getBindXml();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ target.setBindXml( (org.exolab.castor.mapping.xml.BindXml) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("org.exolab.castor.mapping.xml.BindXml");
++ desc.setHandler(handler);
++ desc.setNameSpaceURI("http://castor.exolab.org/");
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
++ //-- validation code for: _bindXml
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
++ //-- _ldap
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.Ldap.class, "_ldap", "ldap", org.exolab.castor.xml.NodeType.Element);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ FieldMapping target = (FieldMapping) object;
++ return target.getLdap();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ FieldMapping target = (FieldMapping) object;
++ target.setLdap( (org.exolab.castor.mapping.xml.Ldap) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("org.exolab.castor.mapping.xml.Ldap");
++ desc.setHandler(handler);
++ desc.setNameSpaceURI("http://castor.exolab.org/");
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
+
-+ public SqlDirtyTypeDescriptor() {
-+ super();
-+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "SqlDirtyType";
-+ _elementDefinition = false;
++ //-- validation code for: _ldap
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
+ }
+
+
@@ -9721,7 +9300,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.exolab.castor.mapping.xml.types.SqlDirtyType.class;
++ return org.exolab.castor.mapping.xml.FieldMapping.class;
+ }
+
+ /**
@@ -9784,11 +9363,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/MappingRootDescriptor.java
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/MappingRootDescriptor.java
@@ -0,0 +1,411 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -9950,15 +9529,15 @@ Last-Update: 2010-06-27
+ { //-- local scope
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _classMappingList
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.ClassMapping.class, "_classMappingList", "class", org.exolab.castor.xml.NodeType.Element);
++ //-- _fieldHandlerDefList
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.FieldHandlerDef.class, "_fieldHandlerDefList", "field-handler", org.exolab.castor.xml.NodeType.Element);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
+ MappingRoot target = (MappingRoot) object;
-+ return target.getClassMapping();
++ return target.getFieldHandlerDef();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
@@ -9966,7 +9545,7 @@ Last-Update: 2010-06-27
+ {
+ try {
+ MappingRoot target = (MappingRoot) object;
-+ target.addClassMapping( (org.exolab.castor.mapping.xml.ClassMapping) value);
++ target.addFieldHandlerDef( (org.exolab.castor.mapping.xml.FieldHandlerDef) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -9974,7 +9553,7 @@ Last-Update: 2010-06-27
+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
+ try {
+ MappingRoot target = (MappingRoot) object;
-+ target.removeAllClassMapping();
++ target.removeAllFieldHandlerDef();
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -9986,28 +9565,28 @@ Last-Update: 2010-06-27
+ }
+ };
+ desc.setSchemaType("list");
-+ desc.setComponentType("org.exolab.castor.mapping.xml.ClassMapping");
++ desc.setComponentType("org.exolab.castor.mapping.xml.FieldHandlerDef");
+ desc.setHandler(handler);
+ desc.setNameSpaceURI("http://castor.exolab.org/");
+ desc.setMultivalued(true);
+ addFieldDescriptor(desc);
+ addSequenceElement(desc);
+
-+ //-- validation code for: _classMappingList
++ //-- validation code for: _fieldHandlerDefList
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ fieldValidator.setMinOccurs(0);
+ { //-- local scope
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _keyGeneratorDefList
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.KeyGeneratorDef.class, "_keyGeneratorDefList", "key-generator", org.exolab.castor.xml.NodeType.Element);
++ //-- _classMappingList
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.ClassMapping.class, "_classMappingList", "class", org.exolab.castor.xml.NodeType.Element);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
+ MappingRoot target = (MappingRoot) object;
-+ return target.getKeyGeneratorDef();
++ return target.getClassMapping();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
@@ -10015,7 +9594,7 @@ Last-Update: 2010-06-27
+ {
+ try {
+ MappingRoot target = (MappingRoot) object;
-+ target.addKeyGeneratorDef( (org.exolab.castor.mapping.xml.KeyGeneratorDef) value);
++ target.addClassMapping( (org.exolab.castor.mapping.xml.ClassMapping) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -10023,7 +9602,7 @@ Last-Update: 2010-06-27
+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
+ try {
+ MappingRoot target = (MappingRoot) object;
-+ target.removeAllKeyGeneratorDef();
++ target.removeAllClassMapping();
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -10035,28 +9614,28 @@ Last-Update: 2010-06-27
+ }
+ };
+ desc.setSchemaType("list");
-+ desc.setComponentType("org.exolab.castor.mapping.xml.KeyGeneratorDef");
++ desc.setComponentType("org.exolab.castor.mapping.xml.ClassMapping");
+ desc.setHandler(handler);
+ desc.setNameSpaceURI("http://castor.exolab.org/");
+ desc.setMultivalued(true);
+ addFieldDescriptor(desc);
+ addSequenceElement(desc);
+
-+ //-- validation code for: _keyGeneratorDefList
++ //-- validation code for: _classMappingList
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ fieldValidator.setMinOccurs(0);
+ { //-- local scope
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _fieldHandlerDefList
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.FieldHandlerDef.class, "_fieldHandlerDefList", "field-handler", org.exolab.castor.xml.NodeType.Element);
++ //-- _keyGeneratorDefList
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.KeyGeneratorDef.class, "_keyGeneratorDefList", "key-generator", org.exolab.castor.xml.NodeType.Element);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
+ MappingRoot target = (MappingRoot) object;
-+ return target.getFieldHandlerDef();
++ return target.getKeyGeneratorDef();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
@@ -10064,7 +9643,7 @@ Last-Update: 2010-06-27
+ {
+ try {
+ MappingRoot target = (MappingRoot) object;
-+ target.addFieldHandlerDef( (org.exolab.castor.mapping.xml.FieldHandlerDef) value);
++ target.addKeyGeneratorDef( (org.exolab.castor.mapping.xml.KeyGeneratorDef) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -10072,7 +9651,7 @@ Last-Update: 2010-06-27
+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
+ try {
+ MappingRoot target = (MappingRoot) object;
-+ target.removeAllFieldHandlerDef();
++ target.removeAllKeyGeneratorDef();
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -10084,14 +9663,14 @@ Last-Update: 2010-06-27
+ }
+ };
+ desc.setSchemaType("list");
-+ desc.setComponentType("org.exolab.castor.mapping.xml.FieldHandlerDef");
++ desc.setComponentType("org.exolab.castor.mapping.xml.KeyGeneratorDef");
+ desc.setHandler(handler);
+ desc.setNameSpaceURI("http://castor.exolab.org/");
+ desc.setMultivalued(true);
+ addFieldDescriptor(desc);
+ addSequenceElement(desc);
+
-+ //-- validation code for: _fieldHandlerDefList
++ //-- validation code for: _keyGeneratorDefList
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ fieldValidator.setMinOccurs(0);
+ { //-- local scope
@@ -10198,11 +9777,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/QueryHintDescriptor.java
-@@ -0,0 +1,257 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/NamedQueryDescriptor.java
+@@ -0,0 +1,310 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -10213,14 +9792,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.exolab.castor.mapping.xml.QueryHint;
++import org.exolab.castor.mapping.xml.NamedQuery;
+
+/**
-+ * Class QueryHintDescriptor.
++ * Class NamedQueryDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class QueryHintDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class NamedQueryDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -10257,11 +9836,14 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public QueryHintDescriptor() {
++ public NamedQueryDescriptor() {
+ super();
+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "query-hint";
++ _xmlName = "named-query";
+ _elementDefinition = true;
++
++ //-- set grouping compositor
++ setCompositorAsSequence();
+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
+ org.exolab.castor.mapping.FieldHandler handler = null;
+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
@@ -10275,7 +9857,7 @@ Last-Update: 2010-06-27
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ QueryHint target = (QueryHint) object;
++ NamedQuery target = (NamedQuery) object;
+ return target.getName();
+ }
+ @Override
@@ -10283,7 +9865,7 @@ Last-Update: 2010-06-27
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ QueryHint target = (QueryHint) object;
++ NamedQuery target = (NamedQuery) object;
+ target.setName( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
@@ -10311,24 +9893,26 @@ Last-Update: 2010-06-27
+ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _value
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_value", "value", org.exolab.castor.xml.NodeType.Attribute);
++ //-- initialize element descriptors
++
++ //-- _query
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_query", "query", org.exolab.castor.xml.NodeType.Element);
+ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ QueryHint target = (QueryHint) object;
-+ return target.getValue();
++ NamedQuery target = (NamedQuery) object;
++ return target.getQuery();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ QueryHint target = (QueryHint) object;
-+ target.setValue( (java.lang.String) value);
++ NamedQuery target = (NamedQuery) object;
++ target.setQuery( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -10344,8 +9928,9 @@ Last-Update: 2010-06-27
+ desc.setRequired(true);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
++ addSequenceElement(desc);
+
-+ //-- validation code for: _value
++ //-- validation code for: _query
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ fieldValidator.setMinOccurs(1);
+ { //-- local scope
@@ -10355,8 +9940,55 @@ Last-Update: 2010-06-27
+ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- initialize element descriptors
++ //-- _queryHintList
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.QueryHint.class, "_queryHintList", "query-hint", org.exolab.castor.xml.NodeType.Element);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ NamedQuery target = (NamedQuery) object;
++ return target.getQueryHint();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ NamedQuery target = (NamedQuery) object;
++ target.addQueryHint( (org.exolab.castor.mapping.xml.QueryHint) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
++ try {
++ NamedQuery target = (NamedQuery) object;
++ target.removeAllQueryHint();
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("list");
++ desc.setComponentType("org.exolab.castor.mapping.xml.QueryHint");
++ desc.setHandler(handler);
++ desc.setNameSpaceURI("http://castor.exolab.org/");
++ desc.setMultivalued(true);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
+
++ //-- validation code for: _queryHintList
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(0);
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
+ }
+
+
@@ -10395,7 +10027,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.exolab.castor.mapping.xml.QueryHint.class;
++ return org.exolab.castor.mapping.xml.NamedQuery.class;
+ }
+
+ /**
@@ -10458,11 +10090,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/CacheTypeMappingDescriptor.java
-@@ -0,0 +1,355 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/ContainerDescriptor.java
+@@ -0,0 +1,560 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -10473,14 +10105,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.exolab.castor.mapping.xml.CacheTypeMapping;
++import org.exolab.castor.mapping.xml.Container;
+
+/**
-+ * Class CacheTypeMappingDescriptor.
++ * Class ContainerDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class CacheTypeMappingDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class ContainerDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -10517,10 +10149,10 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public CacheTypeMappingDescriptor() {
++ public ContainerDescriptor() {
+ super();
+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "cache-type";
++ _xmlName = "container";
+ _elementDefinition = true;
+
+ //-- set grouping compositor
@@ -10530,15 +10162,58 @@ Last-Update: 2010-06-27
+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
+ //-- initialize attribute descriptors
+
++ //-- _name
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ Container target = (Container) object;
++ return target.getName();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ Container target = (Container) object;
++ target.setName( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return new java.lang.String();
++ }
++ };
++ desc.setSchemaType("NMTOKEN");
++ desc.setHandler(handler);
++ desc.setRequired(true);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++
++ //-- validation code for: _name
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
++ { //-- local scope
++ org.exolab.castor.xml.validators.NameValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
++ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.addPattern("[\\w-._:]+");
++ }
++ desc.setValidator(fieldValidator);
+ //-- _type
+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_type", "type", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ CacheTypeMapping target = (CacheTypeMapping) object;
++ Container target = (Container) object;
+ return target.getType();
+ }
+ @Override
@@ -10546,7 +10221,7 @@ Last-Update: 2010-06-27
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ CacheTypeMapping target = (CacheTypeMapping) object;
++ Container target = (Container) object;
+ target.setType( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
@@ -10555,10 +10230,10 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
++ return new java.lang.String();
+ }
+ };
-+ desc.setSchemaType("string");
++ desc.setSchemaType("NMTOKEN");
+ desc.setHandler(handler);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
@@ -10566,35 +10241,36 @@ Last-Update: 2010-06-27
+ //-- validation code for: _type
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ org.exolab.castor.xml.validators.NameValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
++ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
++ typeValidator.addPattern("[\\w-._:]+");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _debug
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_debug", "debug", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _required
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_required", "required", org.exolab.castor.xml.NodeType.Attribute);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ CacheTypeMapping target = (CacheTypeMapping) object;
-+ if (!target.hasDebug()) { return null; }
-+ return (target.getDebug() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
++ Container target = (Container) object;
++ if (!target.hasRequired()) { return null; }
++ return (target.getRequired() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ CacheTypeMapping target = (CacheTypeMapping) object;
++ Container target = (Container) object;
+ // if null, use delete method for optional primitives
+ if (value == null) {
-+ target.deleteDebug();
++ target.deleteRequired();
+ return;
+ }
-+ target.setDebug( ((java.lang.Boolean) value).booleanValue());
++ target.setRequired( ((java.lang.Boolean) value).booleanValue());
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -10610,37 +10286,119 @@ Last-Update: 2010-06-27
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _debug
++ //-- validation code for: _required
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ fieldValidator.setValidator(typeValidator);
++ }
++ desc.setValidator(fieldValidator);
++ //-- _direct
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_direct", "direct", org.exolab.castor.xml.NodeType.Attribute);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ Container target = (Container) object;
++ if (!target.hasDirect()) { return null; }
++ return (target.getDirect() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ Container target = (Container) object;
++ // if null, use delete method for optional primitives
++ if (value == null) {
++ target.deleteDirect();
++ return;
++ }
++ target.setDirect( ((java.lang.Boolean) value).booleanValue());
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("boolean");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++
++ //-- validation code for: _direct
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ fieldValidator.setValidator(typeValidator);
++ }
++ desc.setValidator(fieldValidator);
++ //-- _getMethod
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_getMethod", "get-method", org.exolab.castor.xml.NodeType.Attribute);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ Container target = (Container) object;
++ return target.getGetMethod();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ Container target = (Container) object;
++ target.setGetMethod( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return new java.lang.String();
++ }
++ };
++ desc.setSchemaType("NMTOKEN");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++
++ //-- validation code for: _getMethod
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ { //-- local scope
-+ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ org.exolab.castor.xml.validators.NameValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
++ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
+ fieldValidator.setValidator(typeValidator);
++ typeValidator.addPattern("[\\w-._:]+");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _capacity
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Long.TYPE, "_capacity", "capacity", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _setMethod
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_setMethod", "set-method", org.exolab.castor.xml.NodeType.Attribute);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ CacheTypeMapping target = (CacheTypeMapping) object;
-+ if (!target.hasCapacity()) { return null; }
-+ return new java.lang.Long(target.getCapacity());
++ Container target = (Container) object;
++ return target.getSetMethod();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ CacheTypeMapping target = (CacheTypeMapping) object;
-+ // if null, use delete method for optional primitives
-+ if (value == null) {
-+ target.deleteCapacity();
-+ return;
-+ }
-+ target.setCapacity( ((java.lang.Long) value).longValue());
++ Container target = (Container) object;
++ target.setSetMethod( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -10648,49 +10406,41 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
++ return new java.lang.String();
+ }
+ };
-+ desc.setSchemaType("integer");
++ desc.setSchemaType("NMTOKEN");
+ desc.setHandler(handler);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _capacity
++ //-- validation code for: _setMethod
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ { //-- local scope
-+ org.exolab.castor.xml.validators.LongValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.LongValidator();
++ org.exolab.castor.xml.validators.NameValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
++ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
+ fieldValidator.setValidator(typeValidator);
++ typeValidator.addPattern("[\\w-._:]+");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- initialize element descriptors
-+
-+ //-- _paramList
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.Param.class, "_paramList", "param", org.exolab.castor.xml.NodeType.Element);
++ //-- _createMethod
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_createMethod", "create-method", org.exolab.castor.xml.NodeType.Attribute);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ CacheTypeMapping target = (CacheTypeMapping) object;
-+ return target.getParam();
++ Container target = (Container) object;
++ return target.getCreateMethod();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ CacheTypeMapping target = (CacheTypeMapping) object;
-+ target.addParam( (org.exolab.castor.mapping.xml.Param) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
-+ try {
-+ CacheTypeMapping target = (CacheTypeMapping) object;
-+ target.removeAllParam();
++ Container target = (Container) object;
++ target.setCreateMethod( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -10698,211 +10448,86 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
++ return new java.lang.String();
+ }
+ };
-+ desc.setSchemaType("list");
-+ desc.setComponentType("org.exolab.castor.mapping.xml.Param");
++ desc.setSchemaType("NMTOKEN");
+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.exolab.org/");
-+ desc.setMultivalued(true);
++ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
+
-+ //-- validation code for: _paramList
++ //-- validation code for: _createMethod
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(0);
+ { //-- local scope
++ org.exolab.castor.xml.validators.NameValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
++ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.addPattern("[\\w-._:]+");
+ }
+ desc.setValidator(fieldValidator);
-+ }
-+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
-+
-+ /**
-+ * Method getAccessMode.
-+ *
-+ * @return the access mode specified for this class.
-+ */
-+ @Override()
-+ public org.exolab.castor.mapping.AccessMode getAccessMode(
-+ ) {
-+ return null;
-+ }
-+
-+ /**
-+ * Method getIdentity.
-+ *
-+ * @return the identity field, null if this class has no
-+ * identity.
-+ */
-+ @Override()
-+ public org.exolab.castor.mapping.FieldDescriptor getIdentity(
-+ ) {
-+ return _identity;
-+ }
-+
-+ /**
-+ * Method getJavaClass.
-+ *
-+ * @return the Java class represented by this descriptor.
-+ */
-+ @Override()
-+ public java.lang.Class getJavaClass(
-+ ) {
-+ return org.exolab.castor.mapping.xml.CacheTypeMapping.class;
-+ }
-+
-+ /**
-+ * Method getNameSpacePrefix.
-+ *
-+ * @return the namespace prefix to use when marshaling as XML.
-+ */
-+ @Override()
-+ public java.lang.String getNameSpacePrefix(
-+ ) {
-+ return _nsPrefix;
-+ }
-+
-+ /**
-+ * Method getNameSpaceURI.
-+ *
-+ * @return the namespace URI used when marshaling and
-+ * unmarshaling as XML.
-+ */
-+ @Override()
-+ public java.lang.String getNameSpaceURI(
-+ ) {
-+ return _nsURI;
-+ }
-+
-+ /**
-+ * Method getValidator.
-+ *
-+ * @return a specific validator for the class described by this
-+ * ClassDescriptor.
-+ */
-+ @Override()
-+ public org.exolab.castor.xml.TypeValidator getValidator(
-+ ) {
-+ return this;
-+ }
-+
-+ /**
-+ * Method getXMLName.
-+ *
-+ * @return the XML Name for the Class being described.
-+ */
-+ @Override()
-+ public java.lang.String getXMLName(
-+ ) {
-+ return _xmlName;
-+ }
-+
-+ /**
-+ * Method isElementDefinition.
-+ *
-+ * @return true if XML schema definition of this Class is that
-+ * of a global
-+ * element or element with anonymous type definition.
-+ */
-+ public boolean isElementDefinition(
-+ ) {
-+ return _elementDefinition;
-+ }
-+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/IncludeDescriptor.java
-@@ -0,0 +1,213 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
-+
-+package org.exolab.castor.mapping.xml.descriptors;
-+
-+ //---------------------------------/
-+ //- Imported classes and packages -/
-+//---------------------------------/
-+
-+import org.exolab.castor.mapping.xml.Include;
-+
-+/**
-+ * Class IncludeDescriptor.
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+public class IncludeDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
-+
-+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
-+
-+ /**
-+ * Field _elementDefinition.
-+ */
-+ private boolean _elementDefinition;
-+
-+ /**
-+ * Field _nsPrefix.
-+ */
-+ private java.lang.String _nsPrefix;
-+
-+ /**
-+ * Field _nsURI.
-+ */
-+ private java.lang.String _nsURI;
-+
-+ /**
-+ * Field _xmlName.
-+ */
-+ private java.lang.String _xmlName;
-+
-+ /**
-+ * Field _identity.
-+ */
-+ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
++ //-- initialize element descriptors
+
-+ public IncludeDescriptor() {
-+ super();
-+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "include";
-+ _elementDefinition = true;
-+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
-+ org.exolab.castor.mapping.FieldHandler handler = null;
-+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
-+ //-- initialize attribute descriptors
++ //-- _description
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_description", "description", org.exolab.castor.xml.NodeType.Element);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ Container target = (Container) object;
++ return target.getDescription();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ Container target = (Container) object;
++ target.setDescription( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
+
-+ //-- _href
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_href", "href", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
++ //-- validation code for: _description
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- _fieldMapping
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.FieldMapping.class, "_fieldMapping", "field", org.exolab.castor.xml.NodeType.Element);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ Include target = (Include) object;
-+ return target.getHref();
++ Container target = (Container) object;
++ return target.getFieldMapping();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ Include target = (Include) object;
-+ target.setHref( (java.lang.String) value);
++ Container target = (Container) object;
++ target.setFieldMapping( (org.exolab.castor.mapping.xml.FieldMapping) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -10913,24 +10538,20 @@ Last-Update: 2010-06-27
+ return null;
+ }
+ };
-+ desc.setSchemaType("string");
++ desc.setSchemaType("org.exolab.castor.mapping.xml.FieldMapping");
+ desc.setHandler(handler);
++ desc.setNameSpaceURI("http://castor.exolab.org/");
+ desc.setRequired(true);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
++ addSequenceElement(desc);
+
-+ //-- validation code for: _href
++ //-- validation code for: _fieldMapping
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ fieldValidator.setMinOccurs(1);
+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- initialize element descriptors
-+
+ }
+
+
@@ -10969,7 +10590,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.exolab.castor.mapping.xml.Include.class;
++ return org.exolab.castor.mapping.xml.Container.class;
+ }
+
+ /**
@@ -11032,11 +10653,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/PropertyTypeDescriptor.java
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/PropertyTypeDescriptor.java
@@ -0,0 +1,262 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -11297,11 +10918,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/LdapDescriptor.java
-@@ -0,0 +1,211 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/NamedNativeQueryDescriptor.java
+@@ -0,0 +1,394 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -11312,14 +10933,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.exolab.castor.mapping.xml.Ldap;
++import org.exolab.castor.mapping.xml.NamedNativeQuery;
+
+/**
-+ * Class LdapDescriptor.
++ * Class NamedNativeQueryDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class LdapDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class NamedNativeQueryDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -11356,11 +10977,14 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public LdapDescriptor() {
++ public NamedNativeQueryDescriptor() {
+ super();
+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "ldap";
++ _xmlName = "named-native-query";
+ _elementDefinition = true;
++
++ //-- set grouping compositor
++ setCompositorAsSequence();
+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
+ org.exolab.castor.mapping.FieldHandler handler = null;
+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
@@ -11368,12 +10992,13 @@ Last-Update: 2010-06-27
+
+ //-- _name
+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ Ldap target = (Ldap) object;
++ NamedNativeQuery target = (NamedNativeQuery) object;
+ return target.getName();
+ }
+ @Override
@@ -11381,7 +11006,7 @@ Last-Update: 2010-06-27
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ Ldap target = (Ldap) object;
++ NamedNativeQuery target = (NamedNativeQuery) object;
+ target.setName( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
@@ -11390,26 +11015,205 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new java.lang.String();
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setRequired(true);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++
++ //-- validation code for: _name
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- _resultClass
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_resultClass", "result-class", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ NamedNativeQuery target = (NamedNativeQuery) object;
++ return target.getResultClass();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ NamedNativeQuery target = (NamedNativeQuery) object;
++ target.setResultClass( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++
++ //-- validation code for: _resultClass
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- _resultSetMapping
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_resultSetMapping", "result-set-mapping", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ NamedNativeQuery target = (NamedNativeQuery) object;
++ return target.getResultSetMapping();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ NamedNativeQuery target = (NamedNativeQuery) object;
++ target.setResultSetMapping( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++
++ //-- validation code for: _resultSetMapping
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- initialize element descriptors
++
++ //-- _query
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_query", "query", org.exolab.castor.xml.NodeType.Element);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ NamedNativeQuery target = (NamedNativeQuery) object;
++ return target.getQuery();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ NamedNativeQuery target = (NamedNativeQuery) object;
++ target.setQuery( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setRequired(true);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
++
++ //-- validation code for: _query
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- _queryHintList
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.QueryHint.class, "_queryHintList", "query-hint", org.exolab.castor.xml.NodeType.Element);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ NamedNativeQuery target = (NamedNativeQuery) object;
++ return target.getQueryHint();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ NamedNativeQuery target = (NamedNativeQuery) object;
++ target.addQueryHint( (org.exolab.castor.mapping.xml.QueryHint) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
++ try {
++ NamedNativeQuery target = (NamedNativeQuery) object;
++ target.removeAllQueryHint();
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
+ }
+ };
-+ desc.setSchemaType("NMTOKEN");
++ desc.setSchemaType("list");
++ desc.setComponentType("org.exolab.castor.mapping.xml.QueryHint");
+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
++ desc.setNameSpaceURI("http://castor.exolab.org/");
++ desc.setMultivalued(true);
+ addFieldDescriptor(desc);
++ addSequenceElement(desc);
+
-+ //-- validation code for: _name
++ //-- validation code for: _queryHintList
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(0);
+ { //-- local scope
-+ org.exolab.castor.xml.validators.NameValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
-+ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.addPattern("[\\w-._:]+");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- initialize element descriptors
-+
+ }
+
+
@@ -11448,7 +11252,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.exolab.castor.mapping.xml.Ldap.class;
++ return org.exolab.castor.mapping.xml.NamedNativeQuery.class;
+ }
+
+ /**
@@ -11511,11 +11315,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/MapToDescriptor.java
-@@ -0,0 +1,467 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/ParamDescriptor.java
+@@ -0,0 +1,257 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -11526,14 +11330,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.exolab.castor.mapping.xml.MapTo;
++import org.exolab.castor.mapping.xml.Param;
+
+/**
-+ * Class MapToDescriptor.
++ * Class ParamDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class MapToDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class ParamDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -11560,258 +11364,44 @@ Last-Update: 2010-06-27
+ */
+ private java.lang.String _xmlName;
+
-+ /**
-+ * Field _identity.
-+ */
-+ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
-+
-+ public MapToDescriptor() {
-+ super();
-+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "map-to";
-+ _elementDefinition = true;
-+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
-+ org.exolab.castor.mapping.FieldHandler handler = null;
-+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
-+ //-- initialize attribute descriptors
-+
-+ //-- _table
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_table", "table", org.exolab.castor.xml.NodeType.Attribute);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ MapTo target = (MapTo) object;
-+ return target.getTable();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ MapTo target = (MapTo) object;
-+ target.setTable( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new java.lang.String();
-+ }
-+ };
-+ desc.setSchemaType("NMTOKEN");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+
-+ //-- validation code for: _table
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.NameValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
-+ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.addPattern("[\\w-._:]+");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _xml
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_xml", "xml", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ MapTo target = (MapTo) object;
-+ return target.getXml();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ MapTo target = (MapTo) object;
-+ target.setXml( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("string");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+
-+ //-- validation code for: _xml
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _nsUri
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_nsUri", "ns-uri", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ MapTo target = (MapTo) object;
-+ return target.getNsUri();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ MapTo target = (MapTo) object;
-+ target.setNsUri( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("string");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+
-+ //-- validation code for: _nsUri
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _nsPrefix
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_nsPrefix", "ns-prefix", org.exolab.castor.xml.NodeType.Attribute);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ MapTo target = (MapTo) object;
-+ return target.getNsPrefix();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ MapTo target = (MapTo) object;
-+ target.setNsPrefix( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new java.lang.String();
-+ }
-+ };
-+ desc.setSchemaType("NMTOKEN");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+
-+ //-- validation code for: _nsPrefix
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.NameValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
-+ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.addPattern("[\\w-._:]+");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _elementDefinition
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_elementDefinition", "element-definition", org.exolab.castor.xml.NodeType.Attribute);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ MapTo target = (MapTo) object;
-+ if (!target.hasElementDefinition()) { return null; }
-+ return (target.getElementDefinition() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ MapTo target = (MapTo) object;
-+ // if null, use delete method for optional primitives
-+ if (value == null) {
-+ target.deleteElementDefinition();
-+ return;
-+ }
-+ target.setElementDefinition( ((java.lang.Boolean) value).booleanValue());
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("boolean");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+
-+ //-- validation code for: _elementDefinition
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _ldapDn
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_ldapDn", "ldap-dn", org.exolab.castor.xml.NodeType.Attribute);
++ /**
++ * Field _identity.
++ */
++ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public ParamDescriptor() {
++ super();
++ _nsURI = "http://castor.exolab.org/";
++ _xmlName = "param";
++ _elementDefinition = true;
++ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
++ org.exolab.castor.mapping.FieldHandler handler = null;
++ org.exolab.castor.xml.FieldValidator fieldValidator = null;
++ //-- initialize attribute descriptors
++
++ //-- _name
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
+ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ MapTo target = (MapTo) object;
-+ return target.getLdapDn();
++ Param target = (Param) object;
++ return target.getName();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ MapTo target = (MapTo) object;
-+ target.setLdapDn( (java.lang.String) value);
++ Param target = (Param) object;
++ target.setName( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -11824,11 +11414,13 @@ Last-Update: 2010-06-27
+ };
+ desc.setSchemaType("string");
+ desc.setHandler(handler);
++ desc.setRequired(true);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _ldapDn
++ //-- validation code for: _name
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
+ { //-- local scope
+ org.exolab.castor.xml.validators.StringValidator typeValidator;
+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
@@ -11836,24 +11428,24 @@ Last-Update: 2010-06-27
+ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _ldapOc
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_ldapOc", "ldap-oc", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _value
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_value", "value", org.exolab.castor.xml.NodeType.Attribute);
+ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ MapTo target = (MapTo) object;
-+ return target.getLdapOc();
++ Param target = (Param) object;
++ return target.getValue();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ MapTo target = (MapTo) object;
-+ target.setLdapOc( (java.lang.String) value);
++ Param target = (Param) object;
++ target.setValue( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -11866,11 +11458,13 @@ Last-Update: 2010-06-27
+ };
+ desc.setSchemaType("string");
+ desc.setHandler(handler);
++ desc.setRequired(true);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _ldapOc
++ //-- validation code for: _value
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
+ { //-- local scope
+ org.exolab.castor.xml.validators.StringValidator typeValidator;
+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
@@ -11918,7 +11512,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.exolab.castor.mapping.xml.MapTo.class;
++ return org.exolab.castor.mapping.xml.Param.class;
+ }
+
+ /**
@@ -11981,11 +11575,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/ContainerDescriptor.java
-@@ -0,0 +1,560 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/ClassMappingDescriptor.java
+@@ -0,0 +1,820 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -11996,14 +11590,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.exolab.castor.mapping.xml.Container;
++import org.exolab.castor.mapping.xml.ClassMapping;
+
+/**
-+ * Class ContainerDescriptor.
++ * Class ClassMappingDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class ContainerDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class ClassMappingDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -12040,10 +11634,10 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public ContainerDescriptor() {
++ public ClassMappingDescriptor() {
+ super();
+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "container";
++ _xmlName = "class";
+ _elementDefinition = true;
+
+ //-- set grouping compositor
@@ -12055,12 +11649,13 @@ Last-Update: 2010-06-27
+
+ //-- _name
+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
++ this._identity = desc;
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ Container target = (Container) object;
++ ClassMapping target = (ClassMapping) object;
+ return target.getName();
+ }
+ @Override
@@ -12068,7 +11663,7 @@ Last-Update: 2010-06-27
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ Container target = (Container) object;
++ ClassMapping target = (ClassMapping) object;
+ target.setName( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
@@ -12080,7 +11675,7 @@ Last-Update: 2010-06-27
+ return new java.lang.String();
+ }
+ };
-+ desc.setSchemaType("NMTOKEN");
++ desc.setSchemaType("ID");
+ desc.setHandler(handler);
+ desc.setRequired(true);
+ desc.setMultivalued(false);
@@ -12090,78 +11685,29 @@ Last-Update: 2010-06-27
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ fieldValidator.setMinOccurs(1);
+ { //-- local scope
-+ org.exolab.castor.xml.validators.NameValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
-+ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.addPattern("[\\w-._:]+");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _type
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_type", "type", org.exolab.castor.xml.NodeType.Attribute);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ Container target = (Container) object;
-+ return target.getType();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ Container target = (Container) object;
-+ target.setType( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new java.lang.String();
-+ }
-+ };
-+ desc.setSchemaType("NMTOKEN");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+
-+ //-- validation code for: _type
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.NameValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
-+ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
++ org.exolab.castor.xml.validators.IdValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.IdValidator();
+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.addPattern("[\\w-._:]+");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _required
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_required", "required", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _extends
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Object.class, "_extends", "extends", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setReference(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ Container target = (Container) object;
-+ if (!target.hasRequired()) { return null; }
-+ return (target.getRequired() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
++ ClassMapping target = (ClassMapping) object;
++ return target.getExtends();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ Container target = (Container) object;
-+ // if null, use delete method for optional primitives
-+ if (value == null) {
-+ target.deleteRequired();
-+ return;
-+ }
-+ target.setRequired( ((java.lang.Boolean) value).booleanValue());
++ ClassMapping target = (ClassMapping) object;
++ target.setExtends( (java.lang.Object) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -12169,45 +11715,40 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
++ return new java.lang.Object();
+ }
+ };
-+ desc.setSchemaType("boolean");
++ desc.setSchemaType("IDREF");
+ desc.setHandler(handler);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _required
++ //-- validation code for: _extends
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ { //-- local scope
-+ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ org.exolab.castor.xml.validators.IdRefValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.IdRefValidator();
+ fieldValidator.setValidator(typeValidator);
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _direct
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_direct", "direct", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _depends
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Object.class, "_depends", "depends", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setReference(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ Container target = (Container) object;
-+ if (!target.hasDirect()) { return null; }
-+ return (target.getDirect() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
++ ClassMapping target = (ClassMapping) object;
++ return target.getDepends();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ Container target = (Container) object;
-+ // if null, use delete method for optional primitives
-+ if (value == null) {
-+ target.deleteDirect();
-+ return;
-+ }
-+ target.setDirect( ((java.lang.Boolean) value).booleanValue());
++ ClassMapping target = (ClassMapping) object;
++ target.setDepends( (java.lang.Object) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -12215,81 +11756,47 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
++ return new java.lang.Object();
+ }
+ };
-+ desc.setSchemaType("boolean");
++ desc.setSchemaType("IDREF");
+ desc.setHandler(handler);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _direct
++ //-- validation code for: _depends
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ { //-- local scope
-+ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ org.exolab.castor.xml.validators.IdRefValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.IdRefValidator();
+ fieldValidator.setValidator(typeValidator);
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _getMethod
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_getMethod", "get-method", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _identity
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_identity", "identity", org.exolab.castor.xml.NodeType.Attribute);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ Container target = (Container) object;
-+ return target.getGetMethod();
++ ClassMapping target = (ClassMapping) object;
++ return target.getIdentity();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ Container target = (Container) object;
-+ target.setGetMethod( (java.lang.String) value);
++ ClassMapping target = (ClassMapping) object;
++ target.addIdentity( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new java.lang.String();
-+ }
-+ };
-+ desc.setSchemaType("NMTOKEN");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+
-+ //-- validation code for: _getMethod
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.NameValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
-+ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.addPattern("[\\w-._:]+");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _setMethod
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_setMethod", "set-method", org.exolab.castor.xml.NodeType.Attribute);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ Container target = (Container) object;
-+ return target.getSetMethod();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
++ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
+ try {
-+ Container target = (Container) object;
-+ target.setSetMethod( (java.lang.String) value);
++ ClassMapping target = (ClassMapping) object;
++ target.removeAllIdentity();
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -12300,38 +11807,36 @@ Last-Update: 2010-06-27
+ return new java.lang.String();
+ }
+ };
-+ desc.setSchemaType("NMTOKEN");
++ handler = new org.exolab.castor.xml.handlers.CollectionFieldHandler(handler, new org.exolab.castor.xml.validators.NameValidator(org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN));
++ desc.setSchemaType("list");
++ desc.setComponentType("NMTOKEN");
+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
++ desc.setMultivalued(true);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _setMethod
++ //-- validation code for: _identity
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(0);
+ { //-- local scope
-+ org.exolab.castor.xml.validators.NameValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
-+ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.addPattern("[\\w-._:]+");
+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _createMethod
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_createMethod", "create-method", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setValidator(fieldValidator);
++ //-- _access
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.types.ClassMappingAccessType.class, "_access", "access", org.exolab.castor.xml.NodeType.Attribute);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ Container target = (Container) object;
-+ return target.getCreateMethod();
++ ClassMapping target = (ClassMapping) object;
++ return target.getAccess();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ Container target = (Container) object;
-+ target.setCreateMethod( (java.lang.String) value);
++ ClassMapping target = (ClassMapping) object;
++ target.setAccess( (org.exolab.castor.mapping.xml.types.ClassMappingAccessType) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -12339,44 +11844,39 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new java.lang.String();
++ return null;
+ }
+ };
-+ desc.setSchemaType("NMTOKEN");
++ handler = new org.exolab.castor.xml.handlers.EnumFieldHandler(org.exolab.castor.mapping.xml.types.ClassMappingAccessType.class, handler);
++ desc.setImmutable(true);
++ desc.setSchemaType("ClassMappingAccessType");
+ desc.setHandler(handler);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _createMethod
++ //-- validation code for: _access
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ { //-- local scope
-+ org.exolab.castor.xml.validators.NameValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
-+ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.addPattern("[\\w-._:]+");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- initialize element descriptors
-+
-+ //-- _description
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_description", "description", org.exolab.castor.xml.NodeType.Element);
++ //-- _keyGenerator
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_keyGenerator", "key-generator", org.exolab.castor.xml.NodeType.Attribute);
+ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ Container target = (Container) object;
-+ return target.getDescription();
++ ClassMapping target = (ClassMapping) object;
++ return target.getKeyGenerator();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ Container target = (Container) object;
-+ target.setDescription( (java.lang.String) value);
++ ClassMapping target = (ClassMapping) object;
++ target.setKeyGenerator( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -12391,9 +11891,8 @@ Last-Update: 2010-06-27
+ desc.setHandler(handler);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
+
-+ //-- validation code for: _description
++ //-- validation code for: _keyGenerator
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ { //-- local scope
+ org.exolab.castor.xml.validators.StringValidator typeValidator;
@@ -12402,23 +11901,29 @@ Last-Update: 2010-06-27
+ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _fieldMapping
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.FieldMapping.class, "_fieldMapping", "field", org.exolab.castor.xml.NodeType.Element);
++ //-- _autoComplete
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_autoComplete", "auto-complete", org.exolab.castor.xml.NodeType.Attribute);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ Container target = (Container) object;
-+ return target.getFieldMapping();
++ ClassMapping target = (ClassMapping) object;
++ if (!target.hasAutoComplete()) { return null; }
++ return (target.getAutoComplete() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ Container target = (Container) object;
-+ target.setFieldMapping( (org.exolab.castor.mapping.xml.FieldMapping) value);
++ ClassMapping target = (ClassMapping) object;
++ // if null, use delete method for optional primitives
++ if (value == null) {
++ target.deleteAutoComplete();
++ return;
++ }
++ target.setAutoComplete( ((java.lang.Boolean) value).booleanValue());
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -12429,211 +11934,83 @@ Last-Update: 2010-06-27
+ return null;
+ }
+ };
-+ desc.setSchemaType("org.exolab.castor.mapping.xml.FieldMapping");
++ desc.setSchemaType("boolean");
+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.exolab.org/");
-+ desc.setRequired(true);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
+
-+ //-- validation code for: _fieldMapping
++ //-- validation code for: _autoComplete
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(1);
+ { //-- local scope
++ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ fieldValidator.setValidator(typeValidator);
+ }
+ desc.setValidator(fieldValidator);
-+ }
-+
-+
-+ //-----------/
-+ //- Methods -/
-+ //-----------/
-+
-+ /**
-+ * Method getAccessMode.
-+ *
-+ * @return the access mode specified for this class.
-+ */
-+ @Override()
-+ public org.exolab.castor.mapping.AccessMode getAccessMode(
-+ ) {
-+ return null;
-+ }
-+
-+ /**
-+ * Method getIdentity.
-+ *
-+ * @return the identity field, null if this class has no
-+ * identity.
-+ */
-+ @Override()
-+ public org.exolab.castor.mapping.FieldDescriptor getIdentity(
-+ ) {
-+ return _identity;
-+ }
-+
-+ /**
-+ * Method getJavaClass.
-+ *
-+ * @return the Java class represented by this descriptor.
-+ */
-+ @Override()
-+ public java.lang.Class getJavaClass(
-+ ) {
-+ return org.exolab.castor.mapping.xml.Container.class;
-+ }
-+
-+ /**
-+ * Method getNameSpacePrefix.
-+ *
-+ * @return the namespace prefix to use when marshaling as XML.
-+ */
-+ @Override()
-+ public java.lang.String getNameSpacePrefix(
-+ ) {
-+ return _nsPrefix;
-+ }
-+
-+ /**
-+ * Method getNameSpaceURI.
-+ *
-+ * @return the namespace URI used when marshaling and
-+ * unmarshaling as XML.
-+ */
-+ @Override()
-+ public java.lang.String getNameSpaceURI(
-+ ) {
-+ return _nsURI;
-+ }
-+
-+ /**
-+ * Method getValidator.
-+ *
-+ * @return a specific validator for the class described by this
-+ * ClassDescriptor.
-+ */
-+ @Override()
-+ public org.exolab.castor.xml.TypeValidator getValidator(
-+ ) {
-+ return this;
-+ }
-+
-+ /**
-+ * Method getXMLName.
-+ *
-+ * @return the XML Name for the Class being described.
-+ */
-+ @Override()
-+ public java.lang.String getXMLName(
-+ ) {
-+ return _xmlName;
-+ }
-+
-+ /**
-+ * Method isElementDefinition.
-+ *
-+ * @return true if XML schema definition of this Class is that
-+ * of a global
-+ * element or element with anonymous type definition.
-+ */
-+ public boolean isElementDefinition(
-+ ) {
-+ return _elementDefinition;
-+ }
-+
-+}
---- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/NamedNativeQueryDescriptor.java
-@@ -0,0 +1,394 @@
-+/*
-+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
-+ * Schema.
-+ * $Id$
-+ */
-+
-+package org.exolab.castor.mapping.xml.descriptors;
-+
-+ //---------------------------------/
-+ //- Imported classes and packages -/
-+//---------------------------------/
-+
-+import org.exolab.castor.mapping.xml.NamedNativeQuery;
-+
-+/**
-+ * Class NamedNativeQueryDescriptor.
-+ *
-+ * @version $Revision$ $Date$
-+ */
-+public class NamedNativeQueryDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
-+
-+
-+ //--------------------------/
-+ //- Class/Member Variables -/
-+ //--------------------------/
-+
-+ /**
-+ * Field _elementDefinition.
-+ */
-+ private boolean _elementDefinition;
-+
-+ /**
-+ * Field _nsPrefix.
-+ */
-+ private java.lang.String _nsPrefix;
-+
-+ /**
-+ * Field _nsURI.
-+ */
-+ private java.lang.String _nsURI;
-+
-+ /**
-+ * Field _xmlName.
-+ */
-+ private java.lang.String _xmlName;
-+
-+ /**
-+ * Field _identity.
-+ */
-+ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
-+
-+ public NamedNativeQueryDescriptor() {
-+ super();
-+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "named-native-query";
-+ _elementDefinition = true;
-+
-+ //-- set grouping compositor
-+ setCompositorAsSequence();
-+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
-+ org.exolab.castor.mapping.FieldHandler handler = null;
-+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
-+ //-- initialize attribute descriptors
++ //-- _verifyConstructable
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_verifyConstructable", "verify-constructable", org.exolab.castor.xml.NodeType.Attribute);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ ClassMapping target = (ClassMapping) object;
++ if (!target.hasVerifyConstructable()) { return null; }
++ return (target.getVerifyConstructable() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ ClassMapping target = (ClassMapping) object;
++ // if null, use delete method for optional primitives
++ if (value == null) {
++ target.deleteVerifyConstructable();
++ return;
++ }
++ target.setVerifyConstructable( ((java.lang.Boolean) value).booleanValue());
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("boolean");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+ //-- _name
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
++ //-- validation code for: _verifyConstructable
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ fieldValidator.setValidator(typeValidator);
++ }
++ desc.setValidator(fieldValidator);
++ //-- _version
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_version", "version", org.exolab.castor.xml.NodeType.Attribute);
+ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ NamedNativeQuery target = (NamedNativeQuery) object;
-+ return target.getName();
++ ClassMapping target = (ClassMapping) object;
++ return target.getVersion();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ NamedNativeQuery target = (NamedNativeQuery) object;
-+ target.setName( (java.lang.String) value);
++ ClassMapping target = (ClassMapping) object;
++ target.setVersion( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -12646,13 +12023,11 @@ Last-Update: 2010-06-27
+ };
+ desc.setSchemaType("string");
+ desc.setHandler(handler);
-+ desc.setRequired(true);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _name
++ //-- validation code for: _version
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(1);
+ { //-- local scope
+ org.exolab.castor.xml.validators.StringValidator typeValidator;
+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
@@ -12660,24 +12035,26 @@ Last-Update: 2010-06-27
+ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _resultClass
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_resultClass", "result-class", org.exolab.castor.xml.NodeType.Attribute);
++ //-- initialize element descriptors
++
++ //-- _description
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_description", "description", org.exolab.castor.xml.NodeType.Element);
+ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ NamedNativeQuery target = (NamedNativeQuery) object;
-+ return target.getResultClass();
++ ClassMapping target = (ClassMapping) object;
++ return target.getDescription();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ NamedNativeQuery target = (NamedNativeQuery) object;
-+ target.setResultClass( (java.lang.String) value);
++ ClassMapping target = (ClassMapping) object;
++ target.setDescription( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -12692,8 +12069,9 @@ Last-Update: 2010-06-27
+ desc.setHandler(handler);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
++ addSequenceElement(desc);
+
-+ //-- validation code for: _resultClass
++ //-- validation code for: _description
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ { //-- local scope
+ org.exolab.castor.xml.validators.StringValidator typeValidator;
@@ -12702,24 +12080,23 @@ Last-Update: 2010-06-27
+ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _resultSetMapping
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_resultSetMapping", "result-set-mapping", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
++ //-- _cacheTypeMapping
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.CacheTypeMapping.class, "_cacheTypeMapping", "cache-type", org.exolab.castor.xml.NodeType.Element);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ NamedNativeQuery target = (NamedNativeQuery) object;
-+ return target.getResultSetMapping();
++ ClassMapping target = (ClassMapping) object;
++ return target.getCacheTypeMapping();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ NamedNativeQuery target = (NamedNativeQuery) object;
-+ target.setResultSetMapping( (java.lang.String) value);
++ ClassMapping target = (ClassMapping) object;
++ target.setCacheTypeMapping( (org.exolab.castor.mapping.xml.CacheTypeMapping) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -12730,40 +12107,35 @@ Last-Update: 2010-06-27
+ return null;
+ }
+ };
-+ desc.setSchemaType("string");
++ desc.setSchemaType("org.exolab.castor.mapping.xml.CacheTypeMapping");
+ desc.setHandler(handler);
++ desc.setNameSpaceURI("http://castor.exolab.org/");
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
++ addSequenceElement(desc);
+
-+ //-- validation code for: _resultSetMapping
++ //-- validation code for: _cacheTypeMapping
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- initialize element descriptors
-+
-+ //-- _query
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_query", "query", org.exolab.castor.xml.NodeType.Element);
-+ desc.setImmutable(true);
++ //-- _mapTo
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.MapTo.class, "_mapTo", "map-to", org.exolab.castor.xml.NodeType.Element);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ NamedNativeQuery target = (NamedNativeQuery) object;
-+ return target.getQuery();
++ ClassMapping target = (ClassMapping) object;
++ return target.getMapTo();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ NamedNativeQuery target = (NamedNativeQuery) object;
-+ target.setQuery( (java.lang.String) value);
++ ClassMapping target = (ClassMapping) object;
++ target.setMapTo( (org.exolab.castor.mapping.xml.MapTo) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -12774,48 +12146,43 @@ Last-Update: 2010-06-27
+ return null;
+ }
+ };
-+ desc.setSchemaType("string");
++ desc.setSchemaType("org.exolab.castor.mapping.xml.MapTo");
+ desc.setHandler(handler);
-+ desc.setRequired(true);
++ desc.setNameSpaceURI("http://castor.exolab.org/");
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+ addSequenceElement(desc);
+
-+ //-- validation code for: _query
++ //-- validation code for: _mapTo
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(1);
+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _queryHintList
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.QueryHint.class, "_queryHintList", "query-hint", org.exolab.castor.xml.NodeType.Element);
++ //-- _namedQueryList
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.NamedQuery.class, "_namedQueryList", "named-query", org.exolab.castor.xml.NodeType.Element);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ NamedNativeQuery target = (NamedNativeQuery) object;
-+ return target.getQueryHint();
++ ClassMapping target = (ClassMapping) object;
++ return target.getNamedQuery();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ NamedNativeQuery target = (NamedNativeQuery) object;
-+ target.addQueryHint( (org.exolab.castor.mapping.xml.QueryHint) value);
++ ClassMapping target = (ClassMapping) object;
++ target.addNamedQuery( (org.exolab.castor.mapping.xml.NamedQuery) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
+ }
+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
+ try {
-+ NamedNativeQuery target = (NamedNativeQuery) object;
-+ target.removeAllQueryHint();
++ ClassMapping target = (ClassMapping) object;
++ target.removeAllNamedQuery();
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -12827,19 +12194,109 @@ Last-Update: 2010-06-27
+ }
+ };
+ desc.setSchemaType("list");
-+ desc.setComponentType("org.exolab.castor.mapping.xml.QueryHint");
++ desc.setComponentType("org.exolab.castor.mapping.xml.NamedQuery");
+ desc.setHandler(handler);
+ desc.setNameSpaceURI("http://castor.exolab.org/");
+ desc.setMultivalued(true);
+ addFieldDescriptor(desc);
+ addSequenceElement(desc);
+
-+ //-- validation code for: _queryHintList
++ //-- validation code for: _namedQueryList
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(0);
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
++ //-- _namedNativeQueryList
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.NamedNativeQuery.class, "_namedNativeQueryList", "named-native-query", org.exolab.castor.xml.NodeType.Element);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ ClassMapping target = (ClassMapping) object;
++ return target.getNamedNativeQuery();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ ClassMapping target = (ClassMapping) object;
++ target.addNamedNativeQuery( (org.exolab.castor.mapping.xml.NamedNativeQuery) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
++ try {
++ ClassMapping target = (ClassMapping) object;
++ target.removeAllNamedNativeQuery();
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("list");
++ desc.setComponentType("org.exolab.castor.mapping.xml.NamedNativeQuery");
++ desc.setHandler(handler);
++ desc.setNameSpaceURI("http://castor.exolab.org/");
++ desc.setMultivalued(true);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
++
++ //-- validation code for: _namedNativeQueryList
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ fieldValidator.setMinOccurs(0);
+ { //-- local scope
+ }
+ desc.setValidator(fieldValidator);
++ //-- _classChoice
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.ClassChoice.class, "_classChoice", "-error-if-this-is-used-", org.exolab.castor.xml.NodeType.Element);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ ClassMapping target = (ClassMapping) object;
++ return target.getClassChoice();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ ClassMapping target = (ClassMapping) object;
++ target.setClassChoice( (org.exolab.castor.mapping.xml.ClassChoice) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return new org.exolab.castor.mapping.xml.ClassChoice();
++ }
++ };
++ desc.setSchemaType("org.exolab.castor.mapping.xml.ClassChoice");
++ desc.setHandler(handler);
++ desc.setContainer(true);
++ desc.setClassDescriptor(new org.exolab.castor.mapping.xml.descriptors.ClassChoiceDescriptor());
++ desc.setNameSpaceURI("http://castor.exolab.org/");
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
++
++ //-- validation code for: _classChoice
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
+ }
+
+
@@ -12878,7 +12335,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.exolab.castor.mapping.xml.NamedNativeQuery.class;
++ return org.exolab.castor.mapping.xml.ClassMapping.class;
+ }
+
+ /**
@@ -12941,11 +12398,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/SqlDescriptor.java
-@@ -0,0 +1,480 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/SqlDescriptor.java
+@@ -0,0 +1,522 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -13163,10 +12620,51 @@ Last-Update: 2010-06-27
+ throw new IllegalStateException(ex.toString());
+ }
+ }
-+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
++ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
++ try {
++ Sql target = (Sql) object;
++ target.removeAllManyKey();
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return new java.lang.String();
++ }
++ };
++ handler = new org.exolab.castor.xml.handlers.CollectionFieldHandler(handler, new org.exolab.castor.xml.validators.NameValidator(org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN));
++ desc.setSchemaType("list");
++ desc.setComponentType("NMTOKEN");
++ desc.setHandler(handler);
++ desc.setMultivalued(true);
++ addFieldDescriptor(desc);
++
++ //-- validation code for: _manyKey
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(0);
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
++ //-- _cascading
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_cascading", "cascading", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ Sql target = (Sql) object;
++ return target.getCascading();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
+ try {
+ Sql target = (Sql) object;
-+ target.removeAllManyKey();
++ target.setCascading( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -13174,20 +12672,21 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new java.lang.String();
++ return null;
+ }
+ };
-+ handler = new org.exolab.castor.xml.handlers.CollectionFieldHandler(handler, new org.exolab.castor.xml.validators.NameValidator(org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN));
-+ desc.setSchemaType("list");
-+ desc.setComponentType("NMTOKEN");
++ desc.setSchemaType("string");
+ desc.setHandler(handler);
-+ desc.setMultivalued(true);
++ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _manyKey
++ //-- validation code for: _cascading
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(0);
+ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
+ //-- _readOnly
@@ -13424,11 +12923,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/KeyGeneratorDefDescriptor.java
-@@ -0,0 +1,306 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/FieldHandlerDefDescriptor.java
+@@ -0,0 +1,308 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -13439,14 +12938,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.exolab.castor.mapping.xml.KeyGeneratorDef;
++import org.exolab.castor.mapping.xml.FieldHandlerDef;
+
+/**
-+ * Class KeyGeneratorDefDescriptor.
++ * Class FieldHandlerDefDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class KeyGeneratorDefDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class FieldHandlerDefDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -13483,10 +12982,10 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public KeyGeneratorDefDescriptor() {
++ public FieldHandlerDefDescriptor() {
+ super();
+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "key-generator";
++ _xmlName = "field-handler";
+ _elementDefinition = true;
+
+ //-- set grouping compositor
@@ -13504,7 +13003,7 @@ Last-Update: 2010-06-27
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ KeyGeneratorDef target = (KeyGeneratorDef) object;
++ FieldHandlerDef target = (FieldHandlerDef) object;
+ return target.getName();
+ }
+ @Override
@@ -13512,7 +13011,7 @@ Last-Update: 2010-06-27
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ KeyGeneratorDef target = (KeyGeneratorDef) object;
++ FieldHandlerDef target = (FieldHandlerDef) object;
+ target.setName( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
@@ -13539,24 +13038,24 @@ Last-Update: 2010-06-27
+ fieldValidator.setValidator(typeValidator);
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _alias
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_alias", "alias", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _clazz
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_clazz", "class", org.exolab.castor.xml.NodeType.Attribute);
+ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ KeyGeneratorDef target = (KeyGeneratorDef) object;
-+ return target.getAlias();
++ FieldHandlerDef target = (FieldHandlerDef) object;
++ return target.getClazz();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ KeyGeneratorDef target = (KeyGeneratorDef) object;
-+ target.setAlias( (java.lang.String) value);
++ FieldHandlerDef target = (FieldHandlerDef) object;
++ target.setClazz( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -13569,11 +13068,13 @@ Last-Update: 2010-06-27
+ };
+ desc.setSchemaType("string");
+ desc.setHandler(handler);
++ desc.setRequired(true);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _alias
++ //-- validation code for: _clazz
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
+ { //-- local scope
+ org.exolab.castor.xml.validators.StringValidator typeValidator;
+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
@@ -13590,7 +13091,7 @@ Last-Update: 2010-06-27
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ KeyGeneratorDef target = (KeyGeneratorDef) object;
++ FieldHandlerDef target = (FieldHandlerDef) object;
+ return target.getParam();
+ }
+ @Override
@@ -13598,7 +13099,7 @@ Last-Update: 2010-06-27
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ KeyGeneratorDef target = (KeyGeneratorDef) object;
++ FieldHandlerDef target = (FieldHandlerDef) object;
+ target.addParam( (org.exolab.castor.mapping.xml.Param) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
@@ -13606,7 +13107,7 @@ Last-Update: 2010-06-27
+ }
+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
+ try {
-+ KeyGeneratorDef target = (KeyGeneratorDef) object;
++ FieldHandlerDef target = (FieldHandlerDef) object;
+ target.removeAllParam();
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
@@ -13670,7 +13171,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.exolab.castor.mapping.xml.KeyGeneratorDef.class;
++ return org.exolab.castor.mapping.xml.FieldHandlerDef.class;
+ }
+
+ /**
@@ -13733,11 +13234,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/ClassMappingDescriptor.java
-@@ -0,0 +1,820 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/CacheTypeMappingDescriptor.java
+@@ -0,0 +1,355 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -13748,14 +13249,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.exolab.castor.mapping.xml.ClassMapping;
++import org.exolab.castor.mapping.xml.CacheTypeMapping;
+
+/**
-+ * Class ClassMappingDescriptor.
++ * Class CacheTypeMappingDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class ClassMappingDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class CacheTypeMappingDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -13792,10 +13293,10 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public ClassMappingDescriptor() {
++ public CacheTypeMappingDescriptor() {
+ super();
+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "class";
++ _xmlName = "cache-type";
+ _elementDefinition = true;
+
+ //-- set grouping compositor
@@ -13805,24 +13306,24 @@ Last-Update: 2010-06-27
+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
+ //-- initialize attribute descriptors
+
-+ //-- _name
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
-+ this._identity = desc;
++ //-- _type
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_type", "type", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ ClassMapping target = (ClassMapping) object;
-+ return target.getName();
++ CacheTypeMapping target = (CacheTypeMapping) object;
++ return target.getType();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ target.setName( (java.lang.String) value);
++ CacheTypeMapping target = (CacheTypeMapping) object;
++ target.setType( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -13830,42 +13331,46 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new java.lang.String();
++ return null;
+ }
+ };
-+ desc.setSchemaType("ID");
++ desc.setSchemaType("string");
+ desc.setHandler(handler);
-+ desc.setRequired(true);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _name
++ //-- validation code for: _type
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(1);
+ { //-- local scope
-+ org.exolab.castor.xml.validators.IdValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.IdValidator();
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
+ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _extends
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Object.class, "_extends", "extends", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setReference(true);
++ //-- _debug
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_debug", "debug", org.exolab.castor.xml.NodeType.Attribute);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ ClassMapping target = (ClassMapping) object;
-+ return target.getExtends();
++ CacheTypeMapping target = (CacheTypeMapping) object;
++ if (!target.hasDebug()) { return null; }
++ return (target.getDebug() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ target.setExtends( (java.lang.Object) value);
++ CacheTypeMapping target = (CacheTypeMapping) object;
++ // if null, use delete method for optional primitives
++ if (value == null) {
++ target.deleteDebug();
++ return;
++ }
++ target.setDebug( ((java.lang.Boolean) value).booleanValue());
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -13873,40 +13378,45 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new java.lang.Object();
++ return null;
+ }
+ };
-+ desc.setSchemaType("IDREF");
++ desc.setSchemaType("boolean");
+ desc.setHandler(handler);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _extends
++ //-- validation code for: _debug
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ { //-- local scope
-+ org.exolab.castor.xml.validators.IdRefValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.IdRefValidator();
++ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
+ fieldValidator.setValidator(typeValidator);
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _depends
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Object.class, "_depends", "depends", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setReference(true);
++ //-- _capacity
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Long.TYPE, "_capacity", "capacity", org.exolab.castor.xml.NodeType.Attribute);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ ClassMapping target = (ClassMapping) object;
-+ return target.getDepends();
++ CacheTypeMapping target = (CacheTypeMapping) object;
++ if (!target.hasCapacity()) { return null; }
++ return new java.lang.Long(target.getCapacity());
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ target.setDepends( (java.lang.Object) value);
++ CacheTypeMapping target = (CacheTypeMapping) object;
++ // if null, use delete method for optional primitives
++ if (value == null) {
++ target.deleteCapacity();
++ return;
++ }
++ target.setCapacity( ((java.lang.Long) value).longValue());
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -13914,127 +13424,49 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new java.lang.Object();
++ return null;
+ }
+ };
-+ desc.setSchemaType("IDREF");
++ desc.setSchemaType("integer");
+ desc.setHandler(handler);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _depends
++ //-- validation code for: _capacity
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ { //-- local scope
-+ org.exolab.castor.xml.validators.IdRefValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.IdRefValidator();
++ org.exolab.castor.xml.validators.LongValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.LongValidator();
+ fieldValidator.setValidator(typeValidator);
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _identity
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_identity", "identity", org.exolab.castor.xml.NodeType.Attribute);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ ClassMapping target = (ClassMapping) object;
-+ return target.getIdentity();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ target.addIdentity( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
-+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ target.removeAllIdentity();
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new java.lang.String();
-+ }
-+ };
-+ handler = new org.exolab.castor.xml.handlers.CollectionFieldHandler(handler, new org.exolab.castor.xml.validators.NameValidator(org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN));
-+ desc.setSchemaType("list");
-+ desc.setComponentType("NMTOKEN");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(true);
-+ addFieldDescriptor(desc);
++ //-- initialize element descriptors
+
-+ //-- validation code for: _identity
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(0);
-+ { //-- local scope
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _access
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.types.ClassMappingAccessType.class, "_access", "access", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _paramList
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.Param.class, "_paramList", "param", org.exolab.castor.xml.NodeType.Element);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ ClassMapping target = (ClassMapping) object;
-+ return target.getAccess();
++ CacheTypeMapping target = (CacheTypeMapping) object;
++ return target.getParam();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ target.setAccess( (org.exolab.castor.mapping.xml.types.ClassMappingAccessType) value);
++ CacheTypeMapping target = (CacheTypeMapping) object;
++ target.addParam( (org.exolab.castor.mapping.xml.Param) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ handler = new org.exolab.castor.xml.handlers.EnumFieldHandler(org.exolab.castor.mapping.xml.types.ClassMappingAccessType.class, handler);
-+ desc.setImmutable(true);
-+ desc.setSchemaType("ClassMappingAccessType");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+
-+ //-- validation code for: _access
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _keyGenerator
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_keyGenerator", "key-generator", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ ClassMapping target = (ClassMapping) object;
-+ return target.getKeyGenerator();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ target.setKeyGenerator( (java.lang.String) value);
++ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
++ try {
++ CacheTypeMapping target = (CacheTypeMapping) object;
++ target.removeAllParam();
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -14045,43 +13477,207 @@ Last-Update: 2010-06-27
+ return null;
+ }
+ };
-+ desc.setSchemaType("string");
++ desc.setSchemaType("list");
++ desc.setComponentType("org.exolab.castor.mapping.xml.Param");
+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
++ desc.setNameSpaceURI("http://castor.exolab.org/");
++ desc.setMultivalued(true);
+ addFieldDescriptor(desc);
++ addSequenceElement(desc);
+
-+ //-- validation code for: _keyGenerator
++ //-- validation code for: _paramList
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(0);
+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _autoComplete
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_autoComplete", "auto-complete", org.exolab.castor.xml.NodeType.Attribute);
++ }
++
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
++ /**
++ * Method getAccessMode.
++ *
++ * @return the access mode specified for this class.
++ */
++ @Override()
++ public org.exolab.castor.mapping.AccessMode getAccessMode(
++ ) {
++ return null;
++ }
++
++ /**
++ * Method getIdentity.
++ *
++ * @return the identity field, null if this class has no
++ * identity.
++ */
++ @Override()
++ public org.exolab.castor.mapping.FieldDescriptor getIdentity(
++ ) {
++ return _identity;
++ }
++
++ /**
++ * Method getJavaClass.
++ *
++ * @return the Java class represented by this descriptor.
++ */
++ @Override()
++ public java.lang.Class getJavaClass(
++ ) {
++ return org.exolab.castor.mapping.xml.CacheTypeMapping.class;
++ }
++
++ /**
++ * Method getNameSpacePrefix.
++ *
++ * @return the namespace prefix to use when marshaling as XML.
++ */
++ @Override()
++ public java.lang.String getNameSpacePrefix(
++ ) {
++ return _nsPrefix;
++ }
++
++ /**
++ * Method getNameSpaceURI.
++ *
++ * @return the namespace URI used when marshaling and
++ * unmarshaling as XML.
++ */
++ @Override()
++ public java.lang.String getNameSpaceURI(
++ ) {
++ return _nsURI;
++ }
++
++ /**
++ * Method getValidator.
++ *
++ * @return a specific validator for the class described by this
++ * ClassDescriptor.
++ */
++ @Override()
++ public org.exolab.castor.xml.TypeValidator getValidator(
++ ) {
++ return this;
++ }
++
++ /**
++ * Method getXMLName.
++ *
++ * @return the XML Name for the Class being described.
++ */
++ @Override()
++ public java.lang.String getXMLName(
++ ) {
++ return _xmlName;
++ }
++
++ /**
++ * Method isElementDefinition.
++ *
++ * @return true if XML schema definition of this Class is that
++ * of a global
++ * element or element with anonymous type definition.
++ */
++ public boolean isElementDefinition(
++ ) {
++ return _elementDefinition;
++ }
++
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/MapToDescriptor.java
+@@ -0,0 +1,467 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.exolab.castor.mapping.xml.descriptors;
++
++ //---------------------------------/
++ //- Imported classes and packages -/
++//---------------------------------/
++
++import org.exolab.castor.mapping.xml.MapTo;
++
++/**
++ * Class MapToDescriptor.
++ *
++ * @version $Revision$ $Date$
++ */
++public class MapToDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
++ /**
++ * Field _elementDefinition.
++ */
++ private boolean _elementDefinition;
++
++ /**
++ * Field _nsPrefix.
++ */
++ private java.lang.String _nsPrefix;
++
++ /**
++ * Field _nsURI.
++ */
++ private java.lang.String _nsURI;
++
++ /**
++ * Field _xmlName.
++ */
++ private java.lang.String _xmlName;
++
++ /**
++ * Field _identity.
++ */
++ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public MapToDescriptor() {
++ super();
++ _nsURI = "http://castor.exolab.org/";
++ _xmlName = "map-to";
++ _elementDefinition = true;
++ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
++ org.exolab.castor.mapping.FieldHandler handler = null;
++ org.exolab.castor.xml.FieldValidator fieldValidator = null;
++ //-- initialize attribute descriptors
++
++ //-- _table
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_table", "table", org.exolab.castor.xml.NodeType.Attribute);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ ClassMapping target = (ClassMapping) object;
-+ if (!target.hasAutoComplete()) { return null; }
-+ return (target.getAutoComplete() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
++ MapTo target = (MapTo) object;
++ return target.getTable();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ // if null, use delete method for optional primitives
-+ if (value == null) {
-+ target.deleteAutoComplete();
-+ return;
-+ }
-+ target.setAutoComplete( ((java.lang.Boolean) value).booleanValue());
++ MapTo target = (MapTo) object;
++ target.setTable( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -14089,45 +13685,42 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
++ return new java.lang.String();
+ }
+ };
-+ desc.setSchemaType("boolean");
++ desc.setSchemaType("NMTOKEN");
+ desc.setHandler(handler);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _autoComplete
++ //-- validation code for: _table
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ { //-- local scope
-+ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ org.exolab.castor.xml.validators.NameValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
++ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
+ fieldValidator.setValidator(typeValidator);
++ typeValidator.addPattern("[\\w-._:]+");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _verifyConstructable
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_verifyConstructable", "verify-constructable", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _xml
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_xml", "xml", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ ClassMapping target = (ClassMapping) object;
-+ if (!target.hasVerifyConstructable()) { return null; }
-+ return (target.getVerifyConstructable() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
++ MapTo target = (MapTo) object;
++ return target.getXml();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ // if null, use delete method for optional primitives
-+ if (value == null) {
-+ target.deleteVerifyConstructable();
-+ return;
-+ }
-+ target.setVerifyConstructable( ((java.lang.Boolean) value).booleanValue());
++ MapTo target = (MapTo) object;
++ target.setXml( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -14138,37 +13731,38 @@ Last-Update: 2010-06-27
+ return null;
+ }
+ };
-+ desc.setSchemaType("boolean");
++ desc.setSchemaType("string");
+ desc.setHandler(handler);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _verifyConstructable
++ //-- validation code for: _xml
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ { //-- local scope
-+ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
+ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _version
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_version", "version", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _nsUri
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_nsUri", "ns-uri", org.exolab.castor.xml.NodeType.Attribute);
+ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ ClassMapping target = (ClassMapping) object;
-+ return target.getVersion();
++ MapTo target = (MapTo) object;
++ return target.getNsUri();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ target.setVersion( (java.lang.String) value);
++ MapTo target = (MapTo) object;
++ target.setNsUri( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -14184,7 +13778,7 @@ Last-Update: 2010-06-27
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _version
++ //-- validation code for: _nsUri
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ { //-- local scope
+ org.exolab.castor.xml.validators.StringValidator typeValidator;
@@ -14193,26 +13787,23 @@ Last-Update: 2010-06-27
+ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- initialize element descriptors
-+
-+ //-- _description
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_description", "description", org.exolab.castor.xml.NodeType.Element);
-+ desc.setImmutable(true);
++ //-- _nsPrefix
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_nsPrefix", "ns-prefix", org.exolab.castor.xml.NodeType.Attribute);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ ClassMapping target = (ClassMapping) object;
-+ return target.getDescription();
++ MapTo target = (MapTo) object;
++ return target.getNsPrefix();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ target.setDescription( (java.lang.String) value);
++ MapTo target = (MapTo) object;
++ target.setNsPrefix( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -14220,41 +13811,47 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
++ return new java.lang.String();
+ }
+ };
-+ desc.setSchemaType("string");
++ desc.setSchemaType("NMTOKEN");
+ desc.setHandler(handler);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
+
-+ //-- validation code for: _description
++ //-- validation code for: _nsPrefix
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ org.exolab.castor.xml.validators.NameValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
++ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
++ typeValidator.addPattern("[\\w-._:]+");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _cacheTypeMapping
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.CacheTypeMapping.class, "_cacheTypeMapping", "cache-type", org.exolab.castor.xml.NodeType.Element);
++ //-- _elementDefinition
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_elementDefinition", "element-definition", org.exolab.castor.xml.NodeType.Attribute);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ ClassMapping target = (ClassMapping) object;
-+ return target.getCacheTypeMapping();
++ MapTo target = (MapTo) object;
++ if (!target.hasElementDefinition()) { return null; }
++ return (target.getElementDefinition() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ target.setCacheTypeMapping( (org.exolab.castor.mapping.xml.CacheTypeMapping) value);
++ MapTo target = (MapTo) object;
++ // if null, use delete method for optional primitives
++ if (value == null) {
++ target.deleteElementDefinition();
++ return;
++ }
++ target.setElementDefinition( ((java.lang.Boolean) value).booleanValue());
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -14265,35 +13862,37 @@ Last-Update: 2010-06-27
+ return null;
+ }
+ };
-+ desc.setSchemaType("org.exolab.castor.mapping.xml.CacheTypeMapping");
++ desc.setSchemaType("boolean");
+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.exolab.org/");
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
+
-+ //-- validation code for: _cacheTypeMapping
++ //-- validation code for: _elementDefinition
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ { //-- local scope
++ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ fieldValidator.setValidator(typeValidator);
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _mapTo
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.MapTo.class, "_mapTo", "map-to", org.exolab.castor.xml.NodeType.Element);
++ //-- _ldapDn
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_ldapDn", "ldap-dn", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ ClassMapping target = (ClassMapping) object;
-+ return target.getMapTo();
++ MapTo target = (MapTo) object;
++ return target.getLdapDn();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ target.setMapTo( (org.exolab.castor.mapping.xml.MapTo) value);
++ MapTo target = (MapTo) object;
++ target.setLdapDn( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -14304,43 +13903,38 @@ Last-Update: 2010-06-27
+ return null;
+ }
+ };
-+ desc.setSchemaType("org.exolab.castor.mapping.xml.MapTo");
++ desc.setSchemaType("string");
+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.exolab.org/");
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
+
-+ //-- validation code for: _mapTo
++ //-- validation code for: _ldapDn
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _namedQueryList
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.NamedQuery.class, "_namedQueryList", "named-query", org.exolab.castor.xml.NodeType.Element);
++ //-- _ldapOc
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_ldapOc", "ldap-oc", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ ClassMapping target = (ClassMapping) object;
-+ return target.getNamedQuery();
++ MapTo target = (MapTo) object;
++ return target.getLdapOc();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ target.addNamedQuery( (org.exolab.castor.mapping.xml.NamedQuery) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
-+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ target.removeAllNamedQuery();
++ MapTo target = (MapTo) object;
++ target.setLdapOc( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -14351,110 +13945,187 @@ Last-Update: 2010-06-27
+ return null;
+ }
+ };
-+ desc.setSchemaType("list");
-+ desc.setComponentType("org.exolab.castor.mapping.xml.NamedQuery");
++ desc.setSchemaType("string");
+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.exolab.org/");
-+ desc.setMultivalued(true);
++ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
+
-+ //-- validation code for: _namedQueryList
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(0);
-+ { //-- local scope
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _namedNativeQueryList
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.NamedNativeQuery.class, "_namedNativeQueryList", "named-native-query", org.exolab.castor.xml.NodeType.Element);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ ClassMapping target = (ClassMapping) object;
-+ return target.getNamedNativeQuery();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ target.addNamedNativeQuery( (org.exolab.castor.mapping.xml.NamedNativeQuery) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
-+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ target.removeAllNamedNativeQuery();
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("list");
-+ desc.setComponentType("org.exolab.castor.mapping.xml.NamedNativeQuery");
-+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.exolab.org/");
-+ desc.setMultivalued(true);
-+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
++ //-- validation code for: _ldapOc
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- initialize element descriptors
++
++ }
++
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
++ /**
++ * Method getAccessMode.
++ *
++ * @return the access mode specified for this class.
++ */
++ @Override()
++ public org.exolab.castor.mapping.AccessMode getAccessMode(
++ ) {
++ return null;
++ }
++
++ /**
++ * Method getIdentity.
++ *
++ * @return the identity field, null if this class has no
++ * identity.
++ */
++ @Override()
++ public org.exolab.castor.mapping.FieldDescriptor getIdentity(
++ ) {
++ return _identity;
++ }
++
++ /**
++ * Method getJavaClass.
++ *
++ * @return the Java class represented by this descriptor.
++ */
++ @Override()
++ public java.lang.Class getJavaClass(
++ ) {
++ return org.exolab.castor.mapping.xml.MapTo.class;
++ }
++
++ /**
++ * Method getNameSpacePrefix.
++ *
++ * @return the namespace prefix to use when marshaling as XML.
++ */
++ @Override()
++ public java.lang.String getNameSpacePrefix(
++ ) {
++ return _nsPrefix;
++ }
++
++ /**
++ * Method getNameSpaceURI.
++ *
++ * @return the namespace URI used when marshaling and
++ * unmarshaling as XML.
++ */
++ @Override()
++ public java.lang.String getNameSpaceURI(
++ ) {
++ return _nsURI;
++ }
++
++ /**
++ * Method getValidator.
++ *
++ * @return a specific validator for the class described by this
++ * ClassDescriptor.
++ */
++ @Override()
++ public org.exolab.castor.xml.TypeValidator getValidator(
++ ) {
++ return this;
++ }
++
++ /**
++ * Method getXMLName.
++ *
++ * @return the XML Name for the Class being described.
++ */
++ @Override()
++ public java.lang.String getXMLName(
++ ) {
++ return _xmlName;
++ }
++
++ /**
++ * Method isElementDefinition.
++ *
++ * @return true if XML schema definition of this Class is that
++ * of a global
++ * element or element with anonymous type definition.
++ */
++ public boolean isElementDefinition(
++ ) {
++ return _elementDefinition;
++ }
++
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/PropertyDescriptor.java
+@@ -0,0 +1,165 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.exolab.castor.mapping.xml.descriptors;
++
++ //---------------------------------/
++ //- Imported classes and packages -/
++//---------------------------------/
++
++import org.exolab.castor.mapping.xml.Property;
++
++/**
++ * Class PropertyDescriptor.
++ *
++ * @version $Revision$ $Date$
++ */
++public class PropertyDescriptor extends org.exolab.castor.mapping.xml.descriptors.PropertyTypeDescriptor {
++
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
++ /**
++ * Field _elementDefinition.
++ */
++ private boolean _elementDefinition;
++
++ /**
++ * Field _nsPrefix.
++ */
++ private java.lang.String _nsPrefix;
++
++ /**
++ * Field _nsURI.
++ */
++ private java.lang.String _nsURI;
+
-+ //-- validation code for: _namedNativeQueryList
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(0);
-+ { //-- local scope
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _classChoice
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.ClassChoice.class, "_classChoice", "-error-if-this-is-used-", org.exolab.castor.xml.NodeType.Element);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ ClassMapping target = (ClassMapping) object;
-+ return target.getClassChoice();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ ClassMapping target = (ClassMapping) object;
-+ target.setClassChoice( (org.exolab.castor.mapping.xml.ClassChoice) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new org.exolab.castor.mapping.xml.ClassChoice();
-+ }
-+ };
-+ desc.setSchemaType("org.exolab.castor.mapping.xml.ClassChoice");
-+ desc.setHandler(handler);
-+ desc.setContainer(true);
-+ desc.setClassDescriptor(new org.exolab.castor.mapping.xml.descriptors.ClassChoiceDescriptor());
-+ desc.setNameSpaceURI("http://castor.exolab.org/");
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
++ /**
++ * Field _xmlName.
++ */
++ private java.lang.String _xmlName;
+
-+ //-- validation code for: _classChoice
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ }
-+ desc.setValidator(fieldValidator);
++ /**
++ * Field _identity.
++ */
++ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public PropertyDescriptor() {
++ super();
++ setExtendsWithoutFlatten(new org.exolab.castor.mapping.xml.descriptors.PropertyTypeDescriptor());
++ _xmlName = "property";
++ _elementDefinition = true;
+ }
+
+
@@ -14482,6 +14153,9 @@ Last-Update: 2010-06-27
+ @Override()
+ public org.exolab.castor.mapping.FieldDescriptor getIdentity(
+ ) {
++ if (_identity == null) {
++ return super.getIdentity();
++ }
+ return _identity;
+ }
+
@@ -14493,7 +14167,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.exolab.castor.mapping.xml.ClassMapping.class;
++ return org.exolab.castor.mapping.xml.Property.class;
+ }
+
+ /**
@@ -14556,11 +14230,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/ClassChoiceDescriptor.java
-@@ -0,0 +1,269 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/KeyGeneratorDefDescriptor.java
+@@ -0,0 +1,306 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -14571,14 +14245,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.exolab.castor.mapping.xml.ClassChoice;
++import org.exolab.castor.mapping.xml.KeyGeneratorDef;
+
+/**
-+ * Class ClassChoiceDescriptor.
++ * Class KeyGeneratorDefDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class ClassChoiceDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class KeyGeneratorDefDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -14615,45 +14289,80 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public ClassChoiceDescriptor() {
++ public KeyGeneratorDefDescriptor() {
+ super();
+ _nsURI = "http://castor.exolab.org/";
-+ _elementDefinition = false;
++ _xmlName = "key-generator";
++ _elementDefinition = true;
+
+ //-- set grouping compositor
-+ setCompositorAsChoice();
++ setCompositorAsSequence();
+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
+ org.exolab.castor.mapping.FieldHandler handler = null;
+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
+ //-- initialize attribute descriptors
+
-+ //-- initialize element descriptors
-+
-+ //-- _fieldMappingList
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.FieldMapping.class, "_fieldMappingList", "field", org.exolab.castor.xml.NodeType.Element);
++ //-- _name
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
++ this._identity = desc;
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ ClassChoice target = (ClassChoice) object;
-+ return target.getFieldMapping();
++ KeyGeneratorDef target = (KeyGeneratorDef) object;
++ return target.getName();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ ClassChoice target = (ClassChoice) object;
-+ target.addFieldMapping( (org.exolab.castor.mapping.xml.FieldMapping) value);
++ KeyGeneratorDef target = (KeyGeneratorDef) object;
++ target.setName( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
+ }
-+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return new java.lang.String();
++ }
++ };
++ desc.setSchemaType("ID");
++ desc.setHandler(handler);
++ desc.setRequired(true);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++
++ //-- validation code for: _name
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
++ { //-- local scope
++ org.exolab.castor.xml.validators.IdValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.IdValidator();
++ fieldValidator.setValidator(typeValidator);
++ }
++ desc.setValidator(fieldValidator);
++ //-- _alias
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_alias", "alias", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ KeyGeneratorDef target = (KeyGeneratorDef) object;
++ return target.getAlias();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
+ try {
-+ ClassChoice target = (ClassChoice) object;
-+ target.removeAllFieldMapping();
++ KeyGeneratorDef target = (KeyGeneratorDef) object;
++ target.setAlias( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -14664,45 +14373,47 @@ Last-Update: 2010-06-27
+ return null;
+ }
+ };
-+ desc.setSchemaType("list");
-+ desc.setComponentType("org.exolab.castor.mapping.xml.FieldMapping");
++ desc.setSchemaType("string");
+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.exolab.org/");
-+ desc.setMultivalued(true);
++ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
+
-+ //-- validation code for: _fieldMappingList
++ //-- validation code for: _alias
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(0);
+ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _containerList
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.Container.class, "_containerList", "container", org.exolab.castor.xml.NodeType.Element);
++ //-- initialize element descriptors
++
++ //-- _paramList
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.Param.class, "_paramList", "param", org.exolab.castor.xml.NodeType.Element);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ ClassChoice target = (ClassChoice) object;
-+ return target.getContainer();
++ KeyGeneratorDef target = (KeyGeneratorDef) object;
++ return target.getParam();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ ClassChoice target = (ClassChoice) object;
-+ target.addContainer( (org.exolab.castor.mapping.xml.Container) value);
++ KeyGeneratorDef target = (KeyGeneratorDef) object;
++ target.addParam( (org.exolab.castor.mapping.xml.Param) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
+ }
+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
+ try {
-+ ClassChoice target = (ClassChoice) object;
-+ target.removeAllContainer();
++ KeyGeneratorDef target = (KeyGeneratorDef) object;
++ target.removeAllParam();
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -14714,14 +14425,14 @@ Last-Update: 2010-06-27
+ }
+ };
+ desc.setSchemaType("list");
-+ desc.setComponentType("org.exolab.castor.mapping.xml.Container");
++ desc.setComponentType("org.exolab.castor.mapping.xml.Param");
+ desc.setHandler(handler);
+ desc.setNameSpaceURI("http://castor.exolab.org/");
+ desc.setMultivalued(true);
+ addFieldDescriptor(desc);
+ addSequenceElement(desc);
+
-+ //-- validation code for: _containerList
++ //-- validation code for: _paramList
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ fieldValidator.setMinOccurs(0);
+ { //-- local scope
@@ -14765,7 +14476,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.exolab.castor.mapping.xml.ClassChoice.class;
++ return org.exolab.castor.mapping.xml.KeyGeneratorDef.class;
+ }
+
+ /**
@@ -14828,11 +14539,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/PropertyDescriptor.java
-@@ -0,0 +1,165 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/ClassChoiceDescriptor.java
+@@ -0,0 +1,269 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -14843,14 +14554,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.exolab.castor.mapping.xml.Property;
++import org.exolab.castor.mapping.xml.ClassChoice;
+
+/**
-+ * Class PropertyDescriptor.
++ * Class ClassChoiceDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class PropertyDescriptor extends org.exolab.castor.mapping.xml.descriptors.PropertyTypeDescriptor {
++public class ClassChoiceDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -14883,15 +14594,122 @@ Last-Update: 2010-06-27
+ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
+
+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public ClassChoiceDescriptor() {
++ super();
++ _nsURI = "http://castor.exolab.org/";
++ _elementDefinition = false;
++
++ //-- set grouping compositor
++ setCompositorAsChoice();
++ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
++ org.exolab.castor.mapping.FieldHandler handler = null;
++ org.exolab.castor.xml.FieldValidator fieldValidator = null;
++ //-- initialize attribute descriptors
++
++ //-- initialize element descriptors
++
++ //-- _fieldMappingList
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.FieldMapping.class, "_fieldMappingList", "field", org.exolab.castor.xml.NodeType.Element);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ ClassChoice target = (ClassChoice) object;
++ return target.getFieldMapping();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ ClassChoice target = (ClassChoice) object;
++ target.addFieldMapping( (org.exolab.castor.mapping.xml.FieldMapping) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
++ try {
++ ClassChoice target = (ClassChoice) object;
++ target.removeAllFieldMapping();
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("list");
++ desc.setComponentType("org.exolab.castor.mapping.xml.FieldMapping");
++ desc.setHandler(handler);
++ desc.setNameSpaceURI("http://castor.exolab.org/");
++ desc.setMultivalued(true);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
+
-+ public PropertyDescriptor() {
-+ super();
-+ setExtendsWithoutFlatten(new org.exolab.castor.mapping.xml.descriptors.PropertyTypeDescriptor());
-+ _xmlName = "property";
-+ _elementDefinition = true;
++ //-- validation code for: _fieldMappingList
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(0);
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
++ //-- _containerList
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.Container.class, "_containerList", "container", org.exolab.castor.xml.NodeType.Element);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ ClassChoice target = (ClassChoice) object;
++ return target.getContainer();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ ClassChoice target = (ClassChoice) object;
++ target.addContainer( (org.exolab.castor.mapping.xml.Container) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
++ try {
++ ClassChoice target = (ClassChoice) object;
++ target.removeAllContainer();
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("list");
++ desc.setComponentType("org.exolab.castor.mapping.xml.Container");
++ desc.setHandler(handler);
++ desc.setNameSpaceURI("http://castor.exolab.org/");
++ desc.setMultivalued(true);
++ addFieldDescriptor(desc);
++ addSequenceElement(desc);
++
++ //-- validation code for: _containerList
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(0);
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
+ }
+
+
@@ -14919,9 +14737,6 @@ Last-Update: 2010-06-27
+ @Override()
+ public org.exolab.castor.mapping.FieldDescriptor getIdentity(
+ ) {
-+ if (_identity == null) {
-+ return super.getIdentity();
-+ }
+ return _identity;
+ }
+
@@ -14933,7 +14748,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.exolab.castor.mapping.xml.Property.class;
++ return org.exolab.castor.mapping.xml.ClassChoice.class;
+ }
+
+ /**
@@ -14996,11 +14811,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/NamedQueryDescriptor.java
-@@ -0,0 +1,310 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/BindXmlDescriptor.java
+@@ -0,0 +1,639 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -15011,14 +14826,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.exolab.castor.mapping.xml.NamedQuery;
++import org.exolab.castor.mapping.xml.BindXml;
+
+/**
-+ * Class NamedQueryDescriptor.
++ * Class BindXmlDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class NamedQueryDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class BindXmlDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -15045,47 +14860,386 @@ Last-Update: 2010-06-27
+ */
+ private java.lang.String _xmlName;
+
-+ /**
-+ * Field _identity.
-+ */
-+ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
++ /**
++ * Field _identity.
++ */
++ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public BindXmlDescriptor() {
++ super();
++ _nsURI = "http://castor.exolab.org/";
++ _xmlName = "bind-xml";
++ _elementDefinition = true;
++
++ //-- set grouping compositor
++ setCompositorAsSequence();
++ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
++ org.exolab.castor.mapping.FieldHandler handler = null;
++ org.exolab.castor.xml.FieldValidator fieldValidator = null;
++ //-- initialize attribute descriptors
++
++ //-- _name
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setSchemaType("QName");
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ BindXml target = (BindXml) object;
++ return target.getName();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ BindXml target = (BindXml) object;
++ target.setName( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return new java.lang.String();
++ }
++ };
++ desc.setSchemaType("QName");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++
++ //-- validation code for: _name
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.NameValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
++ org.exolab.castor.xml.XMLConstants.NAME_TYPE_QNAME);
++ fieldValidator.setValidator(typeValidator);
++ }
++ desc.setValidator(fieldValidator);
++ //-- _type
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_type", "type", org.exolab.castor.xml.NodeType.Attribute);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ BindXml target = (BindXml) object;
++ return target.getType();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ BindXml target = (BindXml) object;
++ target.setType( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return new java.lang.String();
++ }
++ };
++ desc.setSchemaType("NMTOKEN");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++
++ //-- validation code for: _type
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.NameValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
++ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.addPattern("[\\w-._:]+");
++ }
++ desc.setValidator(fieldValidator);
++ //-- _autoNaming
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType.class, "_autoNaming", "auto-naming", org.exolab.castor.xml.NodeType.Attribute);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ BindXml target = (BindXml) object;
++ return target.getAutoNaming();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ BindXml target = (BindXml) object;
++ target.setAutoNaming( (org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ handler = new org.exolab.castor.xml.handlers.EnumFieldHandler(org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType.class, handler);
++ desc.setImmutable(true);
++ desc.setSchemaType("BindXmlAutoNamingType");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
++
++ //-- validation code for: _autoNaming
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
++ //-- _location
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_location", "location", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ BindXml target = (BindXml) object;
++ return target.getLocation();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ BindXml target = (BindXml) object;
++ target.setLocation( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
++ //-- validation code for: _location
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- _matches
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_matches", "matches", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ BindXml target = (BindXml) object;
++ return target.getMatches();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ BindXml target = (BindXml) object;
++ target.setMatches( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("string");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
++ //-- validation code for: _matches
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
++ }
++ desc.setValidator(fieldValidator);
++ //-- _reference
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_reference", "reference", org.exolab.castor.xml.NodeType.Attribute);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ BindXml target = (BindXml) object;
++ if (!target.hasReference()) { return null; }
++ return (target.getReference() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ BindXml target = (BindXml) object;
++ // if null, use delete method for optional primitives
++ if (value == null) {
++ target.deleteReference();
++ return;
++ }
++ target.setReference( ((java.lang.Boolean) value).booleanValue());
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ desc.setSchemaType("boolean");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+ public NamedQueryDescriptor() {
-+ super();
-+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "named-query";
-+ _elementDefinition = true;
++ //-- validation code for: _reference
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ fieldValidator.setValidator(typeValidator);
++ }
++ desc.setValidator(fieldValidator);
++ //-- _node
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.types.BindXmlNodeType.class, "_node", "node", org.exolab.castor.xml.NodeType.Attribute);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ BindXml target = (BindXml) object;
++ return target.getNode();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ BindXml target = (BindXml) object;
++ target.setNode( (org.exolab.castor.mapping.xml.types.BindXmlNodeType) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return null;
++ }
++ };
++ handler = new org.exolab.castor.xml.handlers.EnumFieldHandler(org.exolab.castor.mapping.xml.types.BindXmlNodeType.class, handler);
++ desc.setImmutable(true);
++ desc.setSchemaType("BindXmlNodeType");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+ //-- set grouping compositor
-+ setCompositorAsSequence();
-+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
-+ org.exolab.castor.mapping.FieldHandler handler = null;
-+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
-+ //-- initialize attribute descriptors
++ //-- validation code for: _node
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ }
++ desc.setValidator(fieldValidator);
++ //-- _QNamePrefix
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_QNamePrefix", "QName-prefix", org.exolab.castor.xml.NodeType.Attribute);
++ handler = new org.exolab.castor.xml.XMLFieldHandler() {
++ @Override
++ public java.lang.Object getValue( java.lang.Object object )
++ throws IllegalStateException
++ {
++ BindXml target = (BindXml) object;
++ return target.getQNamePrefix();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ BindXml target = (BindXml) object;
++ target.setQNamePrefix( (java.lang.String) value);
++ } catch (java.lang.Exception ex) {
++ throw new IllegalStateException(ex.toString());
++ }
++ }
++ @Override
++ @SuppressWarnings("unused")
++ public java.lang.Object newInstance(java.lang.Object parent) {
++ return new java.lang.String();
++ }
++ };
++ desc.setSchemaType("NMTOKEN");
++ desc.setHandler(handler);
++ desc.setMultivalued(false);
++ addFieldDescriptor(desc);
+
-+ //-- _name
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
++ //-- validation code for: _QNamePrefix
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.NameValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
++ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.addPattern("[\\w-._:]+");
++ }
++ desc.setValidator(fieldValidator);
++ //-- _transient
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_transient", "transient", org.exolab.castor.xml.NodeType.Attribute);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ NamedQuery target = (NamedQuery) object;
-+ return target.getName();
++ BindXml target = (BindXml) object;
++ if (!target.hasTransient()) { return null; }
++ return (target.getTransient() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ NamedQuery target = (NamedQuery) object;
-+ target.setName( (java.lang.String) value);
++ BindXml target = (BindXml) object;
++ // if null, use delete method for optional primitives
++ if (value == null) {
++ target.deleteTransient();
++ return;
++ }
++ target.setTransient( ((java.lang.Boolean) value).booleanValue());
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -15096,42 +15250,38 @@ Last-Update: 2010-06-27
+ return null;
+ }
+ };
-+ desc.setSchemaType("string");
++ desc.setSchemaType("boolean");
+ desc.setHandler(handler);
-+ desc.setRequired(true);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _name
++ //-- validation code for: _transient
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(1);
+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
++ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
+ //-- initialize element descriptors
+
-+ //-- _query
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_query", "query", org.exolab.castor.xml.NodeType.Element);
-+ desc.setImmutable(true);
++ //-- _classMapping
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.ClassMapping.class, "_classMapping", "class", org.exolab.castor.xml.NodeType.Element);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ NamedQuery target = (NamedQuery) object;
-+ return target.getQuery();
++ BindXml target = (BindXml) object;
++ return target.getClassMapping();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ NamedQuery target = (NamedQuery) object;
-+ target.setQuery( (java.lang.String) value);
++ BindXml target = (BindXml) object;
++ target.setClassMapping( (org.exolab.castor.mapping.xml.ClassMapping) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -15142,48 +15292,43 @@ Last-Update: 2010-06-27
+ return null;
+ }
+ };
-+ desc.setSchemaType("string");
++ desc.setSchemaType("org.exolab.castor.mapping.xml.ClassMapping");
+ desc.setHandler(handler);
-+ desc.setRequired(true);
++ desc.setNameSpaceURI("http://castor.exolab.org/");
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+ addSequenceElement(desc);
+
-+ //-- validation code for: _query
++ //-- validation code for: _classMapping
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(1);
+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _queryHintList
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.QueryHint.class, "_queryHintList", "query-hint", org.exolab.castor.xml.NodeType.Element);
++ //-- _propertyList
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.Property.class, "_propertyList", "property", org.exolab.castor.xml.NodeType.Element);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ NamedQuery target = (NamedQuery) object;
-+ return target.getQueryHint();
++ BindXml target = (BindXml) object;
++ return target.getProperty();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ NamedQuery target = (NamedQuery) object;
-+ target.addQueryHint( (org.exolab.castor.mapping.xml.QueryHint) value);
++ BindXml target = (BindXml) object;
++ target.addProperty( (org.exolab.castor.mapping.xml.Property) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
+ }
+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
+ try {
-+ NamedQuery target = (NamedQuery) object;
-+ target.removeAllQueryHint();
++ BindXml target = (BindXml) object;
++ target.removeAllProperty();
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -15195,14 +15340,13 @@ Last-Update: 2010-06-27
+ }
+ };
+ desc.setSchemaType("list");
-+ desc.setComponentType("org.exolab.castor.mapping.xml.QueryHint");
++ desc.setComponentType("org.exolab.castor.mapping.xml.Property");
+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.exolab.org/");
+ desc.setMultivalued(true);
+ addFieldDescriptor(desc);
+ addSequenceElement(desc);
+
-+ //-- validation code for: _queryHintList
++ //-- validation code for: _propertyList
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
+ fieldValidator.setMinOccurs(0);
+ { //-- local scope
@@ -15246,7 +15390,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.exolab.castor.mapping.xml.NamedQuery.class;
++ return org.exolab.castor.mapping.xml.BindXml.class;
+ }
+
+ /**
@@ -15309,11 +15453,11 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/FieldMappingDescriptor.java
-@@ -0,0 +1,1031 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/QueryHintDescriptor.java
+@@ -0,0 +1,257 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
@@ -15324,14 +15468,14 @@ Last-Update: 2010-06-27
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.exolab.castor.mapping.xml.FieldMapping;
++import org.exolab.castor.mapping.xml.QueryHint;
+
+/**
-+ * Class FieldMappingDescriptor.
++ * Class QueryHintDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class FieldMappingDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class QueryHintDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -15368,220 +15512,34 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public FieldMappingDescriptor() {
++ public QueryHintDescriptor() {
+ super();
+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "field";
-+ _elementDefinition = true;
-+
-+ //-- set grouping compositor
-+ setCompositorAsSequence();
-+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
-+ org.exolab.castor.mapping.FieldHandler handler = null;
-+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
-+ //-- initialize attribute descriptors
-+
-+ //-- _name
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldMapping target = (FieldMapping) object;
-+ return target.getName();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ target.setName( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("string");
-+ desc.setHandler(handler);
-+ desc.setRequired(true);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+
-+ //-- validation code for: _name
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(1);
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _type
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_type", "type", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldMapping target = (FieldMapping) object;
-+ return target.getType();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ target.setType( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("string");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+
-+ //-- validation code for: _type
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _required
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_required", "required", org.exolab.castor.xml.NodeType.Attribute);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldMapping target = (FieldMapping) object;
-+ if (!target.hasRequired()) { return null; }
-+ return (target.getRequired() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ // if null, use delete method for optional primitives
-+ if (value == null) {
-+ target.deleteRequired();
-+ return;
-+ }
-+ target.setRequired( ((java.lang.Boolean) value).booleanValue());
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("boolean");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+
-+ //-- validation code for: _required
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _transient
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_transient", "transient", org.exolab.castor.xml.NodeType.Attribute);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldMapping target = (FieldMapping) object;
-+ if (!target.hasTransient()) { return null; }
-+ return (target.getTransient() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ // if null, use delete method for optional primitives
-+ if (value == null) {
-+ target.deleteTransient();
-+ return;
-+ }
-+ target.setTransient( ((java.lang.Boolean) value).booleanValue());
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("boolean");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+
-+ //-- validation code for: _transient
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _nillable
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_nillable", "nillable", org.exolab.castor.xml.NodeType.Attribute);
++ _xmlName = "query-hint";
++ _elementDefinition = true;
++ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
++ org.exolab.castor.mapping.FieldHandler handler = null;
++ org.exolab.castor.xml.FieldValidator fieldValidator = null;
++ //-- initialize attribute descriptors
++
++ //-- _name
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ FieldMapping target = (FieldMapping) object;
-+ if (!target.hasNillable()) { return null; }
-+ return (target.getNillable() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
++ QueryHint target = (QueryHint) object;
++ return target.getName();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ // if null, use delete method for optional primitives
-+ if (value == null) {
-+ target.deleteNillable();
-+ return;
-+ }
-+ target.setNillable( ((java.lang.Boolean) value).booleanValue());
++ QueryHint target = (QueryHint) object;
++ target.setName( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -15592,42 +15550,40 @@ Last-Update: 2010-06-27
+ return null;
+ }
+ };
-+ desc.setSchemaType("boolean");
++ desc.setSchemaType("string");
+ desc.setHandler(handler);
++ desc.setRequired(true);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _nillable
++ //-- validation code for: _name
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
+ { //-- local scope
-+ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
+ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _direct
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_direct", "direct", org.exolab.castor.xml.NodeType.Attribute);
++ //-- _value
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_value", "value", org.exolab.castor.xml.NodeType.Attribute);
++ desc.setImmutable(true);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ FieldMapping target = (FieldMapping) object;
-+ if (!target.hasDirect()) { return null; }
-+ return (target.getDirect() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
++ QueryHint target = (QueryHint) object;
++ return target.getValue();
+ }
+ @Override
+ public void setValue( java.lang.Object object, java.lang.Object value)
+ throws IllegalStateException, IllegalArgumentException
+ {
+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ // if null, use delete method for optional primitives
-+ if (value == null) {
-+ target.deleteDirect();
-+ return;
-+ }
-+ target.setDirect( ((java.lang.Boolean) value).booleanValue());
++ QueryHint target = (QueryHint) object;
++ target.setValue( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -15638,42 +15594,211 @@ Last-Update: 2010-06-27
+ return null;
+ }
+ };
-+ desc.setSchemaType("boolean");
++ desc.setSchemaType("string");
+ desc.setHandler(handler);
++ desc.setRequired(true);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _direct
++ //-- validation code for: _value
+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ fieldValidator.setMinOccurs(1);
+ { //-- local scope
-+ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
++ org.exolab.castor.xml.validators.StringValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
+ fieldValidator.setValidator(typeValidator);
++ typeValidator.setWhiteSpace("preserve");
+ }
+ desc.setValidator(fieldValidator);
-+ //-- _lazy
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_lazy", "lazy", org.exolab.castor.xml.NodeType.Attribute);
++ //-- initialize element descriptors
++
++ }
++
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
++ /**
++ * Method getAccessMode.
++ *
++ * @return the access mode specified for this class.
++ */
++ @Override()
++ public org.exolab.castor.mapping.AccessMode getAccessMode(
++ ) {
++ return null;
++ }
++
++ /**
++ * Method getIdentity.
++ *
++ * @return the identity field, null if this class has no
++ * identity.
++ */
++ @Override()
++ public org.exolab.castor.mapping.FieldDescriptor getIdentity(
++ ) {
++ return _identity;
++ }
++
++ /**
++ * Method getJavaClass.
++ *
++ * @return the Java class represented by this descriptor.
++ */
++ @Override()
++ public java.lang.Class getJavaClass(
++ ) {
++ return org.exolab.castor.mapping.xml.QueryHint.class;
++ }
++
++ /**
++ * Method getNameSpacePrefix.
++ *
++ * @return the namespace prefix to use when marshaling as XML.
++ */
++ @Override()
++ public java.lang.String getNameSpacePrefix(
++ ) {
++ return _nsPrefix;
++ }
++
++ /**
++ * Method getNameSpaceURI.
++ *
++ * @return the namespace URI used when marshaling and
++ * unmarshaling as XML.
++ */
++ @Override()
++ public java.lang.String getNameSpaceURI(
++ ) {
++ return _nsURI;
++ }
++
++ /**
++ * Method getValidator.
++ *
++ * @return a specific validator for the class described by this
++ * ClassDescriptor.
++ */
++ @Override()
++ public org.exolab.castor.xml.TypeValidator getValidator(
++ ) {
++ return this;
++ }
++
++ /**
++ * Method getXMLName.
++ *
++ * @return the XML Name for the Class being described.
++ */
++ @Override()
++ public java.lang.String getXMLName(
++ ) {
++ return _xmlName;
++ }
++
++ /**
++ * Method isElementDefinition.
++ *
++ * @return true if XML schema definition of this Class is that
++ * of a global
++ * element or element with anonymous type definition.
++ */
++ public boolean isElementDefinition(
++ ) {
++ return _elementDefinition;
++ }
++
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/LdapDescriptor.java
+@@ -0,0 +1,211 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.exolab.castor.mapping.xml.descriptors;
++
++ //---------------------------------/
++ //- Imported classes and packages -/
++//---------------------------------/
++
++import org.exolab.castor.mapping.xml.Ldap;
++
++/**
++ * Class LdapDescriptor.
++ *
++ * @version $Revision$ $Date$
++ */
++public class LdapDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
++ /**
++ * Field _elementDefinition.
++ */
++ private boolean _elementDefinition;
++
++ /**
++ * Field _nsPrefix.
++ */
++ private java.lang.String _nsPrefix;
++
++ /**
++ * Field _nsURI.
++ */
++ private java.lang.String _nsURI;
++
++ /**
++ * Field _xmlName.
++ */
++ private java.lang.String _xmlName;
++
++ /**
++ * Field _identity.
++ */
++ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public LdapDescriptor() {
++ super();
++ _nsURI = "http://castor.exolab.org/";
++ _xmlName = "ldap";
++ _elementDefinition = true;
++ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
++ org.exolab.castor.mapping.FieldHandler handler = null;
++ org.exolab.castor.xml.FieldValidator fieldValidator = null;
++ //-- initialize attribute descriptors
++
++ //-- _name
++ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
+ @Override
+ public java.lang.Object getValue( java.lang.Object object )
+ throws IllegalStateException
+ {
-+ FieldMapping target = (FieldMapping) object;
-+ if (!target.hasLazy()) { return null; }
-+ return (target.getLazy() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ // if null, use delete method for optional primitives
-+ if (value == null) {
-+ target.deleteLazy();
-+ return;
-+ }
-+ target.setLazy( ((java.lang.Boolean) value).booleanValue());
++ Ldap target = (Ldap) object;
++ return target.getName();
++ }
++ @Override
++ public void setValue( java.lang.Object object, java.lang.Object value)
++ throws IllegalStateException, IllegalArgumentException
++ {
++ try {
++ Ldap target = (Ldap) object;
++ target.setName( (java.lang.String) value);
+ } catch (java.lang.Exception ex) {
+ throw new IllegalStateException(ex.toString());
+ }
@@ -15681,567 +15806,822 @@ Last-Update: 2010-06-27
+ @Override
+ @SuppressWarnings("unused")
+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
++ return new java.lang.String();
+ }
+ };
-+ desc.setSchemaType("boolean");
++ desc.setSchemaType("NMTOKEN");
+ desc.setHandler(handler);
+ desc.setMultivalued(false);
+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _lazy
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _container
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_container", "container", org.exolab.castor.xml.NodeType.Attribute);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldMapping target = (FieldMapping) object;
-+ if (!target.hasContainer()) { return null; }
-+ return (target.getContainer() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ // if null, use delete method for optional primitives
-+ if (value == null) {
-+ target.deleteContainer();
-+ return;
-+ }
-+ target.setContainer( ((java.lang.Boolean) value).booleanValue());
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("boolean");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
++ //-- validation code for: _name
++ fieldValidator = new org.exolab.castor.xml.FieldValidator();
++ { //-- local scope
++ org.exolab.castor.xml.validators.NameValidator typeValidator;
++ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
++ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
++ fieldValidator.setValidator(typeValidator);
++ typeValidator.addPattern("[\\w-._:]+");
++ }
++ desc.setValidator(fieldValidator);
++ //-- initialize element descriptors
++
++ }
++
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
++ /**
++ * Method getAccessMode.
++ *
++ * @return the access mode specified for this class.
++ */
++ @Override()
++ public org.exolab.castor.mapping.AccessMode getAccessMode(
++ ) {
++ return null;
++ }
++
++ /**
++ * Method getIdentity.
++ *
++ * @return the identity field, null if this class has no
++ * identity.
++ */
++ @Override()
++ public org.exolab.castor.mapping.FieldDescriptor getIdentity(
++ ) {
++ return _identity;
++ }
++
++ /**
++ * Method getJavaClass.
++ *
++ * @return the Java class represented by this descriptor.
++ */
++ @Override()
++ public java.lang.Class getJavaClass(
++ ) {
++ return org.exolab.castor.mapping.xml.Ldap.class;
++ }
++
++ /**
++ * Method getNameSpacePrefix.
++ *
++ * @return the namespace prefix to use when marshaling as XML.
++ */
++ @Override()
++ public java.lang.String getNameSpacePrefix(
++ ) {
++ return _nsPrefix;
++ }
++
++ /**
++ * Method getNameSpaceURI.
++ *
++ * @return the namespace URI used when marshaling and
++ * unmarshaling as XML.
++ */
++ @Override()
++ public java.lang.String getNameSpaceURI(
++ ) {
++ return _nsURI;
++ }
++
++ /**
++ * Method getValidator.
++ *
++ * @return a specific validator for the class described by this
++ * ClassDescriptor.
++ */
++ @Override()
++ public org.exolab.castor.xml.TypeValidator getValidator(
++ ) {
++ return this;
++ }
++
++ /**
++ * Method getXMLName.
++ *
++ * @return the XML Name for the Class being described.
++ */
++ @Override()
++ public java.lang.String getXMLName(
++ ) {
++ return _xmlName;
++ }
++
++ /**
++ * Method isElementDefinition.
++ *
++ * @return true if XML schema definition of this Class is that
++ * of a global
++ * element or element with anonymous type definition.
++ */
++ public boolean isElementDefinition(
++ ) {
++ return _elementDefinition;
++ }
++
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/types/.castor.cdr
+@@ -0,0 +1,6 @@
++#Sun Jan 22 02:11:58 UTC 2012
++org.exolab.castor.mapping.xml.types.SqlDirtyType=org.exolab.castor.mapping.xml.types.descriptors.SqlDirtyTypeDescriptor
++org.exolab.castor.mapping.xml.types.FieldMappingCollectionType=org.exolab.castor.mapping.xml.types.descriptors.FieldMappingCollectionTypeDescriptor
++org.exolab.castor.mapping.xml.types.ClassMappingAccessType=org.exolab.castor.mapping.xml.types.descriptors.ClassMappingAccessTypeDescriptor
++org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType=org.exolab.castor.mapping.xml.types.descriptors.BindXmlAutoNamingTypeDescriptor
++org.exolab.castor.mapping.xml.types.BindXmlNodeType=org.exolab.castor.mapping.xml.types.descriptors.BindXmlNodeTypeDescriptor
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/types/SqlDirtyType.java
+@@ -0,0 +1,111 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.exolab.castor.mapping.xml.types;
++
++/**
++ * Enumeration SqlDirtyType.
++ *
++ * @version $Revision$ $Date$
++ */
++public enum SqlDirtyType {
++
++
++ //------------------/
++ //- Enum Constants -/
++ //------------------/
++
++ /**
++ * Constant CHECK
++ */
++ CHECK("check"),
++ /**
++ * Constant IGNORE
++ */
++ IGNORE("ignore");
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
++ /**
++ * Field value.
++ */
++ private final java.lang.String value;
++
++ /**
++ * Field enumConstants.
++ */
++ private static final java.util.Map<java.lang.String, SqlDirtyType> enumConstants = new java.util.HashMap<java.lang.String, SqlDirtyType>();
++
++
++ static {
++ for (SqlDirtyType c: SqlDirtyType.values()) {
++ SqlDirtyType.enumConstants.put(c.value, c);
++ }
++
++ };
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ private SqlDirtyType(final java.lang.String value) {
++ this.value = value;
++ }
++
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
++ /**
++ * Method fromValue.
++ *
++ * @param value
++ * @return the constant for this value
++ */
++ public static org.exolab.castor.mapping.xml.types.SqlDirtyType fromValue(
++ final java.lang.String value) {
++ SqlDirtyType c = SqlDirtyType.enumConstants.get(value);
++ if (c != null) {
++ return c;
++ }
++ throw new IllegalArgumentException(value);
++ }
++
++ /**
++ *
++ *
++ * @param value
++ */
++ public void setValue(
++ final java.lang.String value) {
++ }
++
++ /**
++ * Method toString.
++ *
++ * @return the value of this constant
++ */
++ public java.lang.String toString(
++ ) {
++ return this.value;
++ }
++
++ /**
++ * Method value.
++ *
++ * @return the value of this constant
++ */
++ public java.lang.String value(
++ ) {
++ return this.value;
++ }
++
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/types/FieldMappingCollectionType.java
+@@ -0,0 +1,147 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.exolab.castor.mapping.xml.types;
++
++/**
++ * Enumeration FieldMappingCollectionType.
++ *
++ * @version $Revision$ $Date$
++ */
++public enum FieldMappingCollectionType {
++
++
++ //------------------/
++ //- Enum Constants -/
++ //------------------/
++
++ /**
++ * Constant ARRAY
++ */
++ ARRAY("array"),
++ /**
++ * Constant VECTOR
++ */
++ VECTOR("vector"),
++ /**
++ * Constant ARRAYLIST
++ */
++ ARRAYLIST("arraylist"),
++ /**
++ * Constant HASHTABLE
++ */
++ HASHTABLE("hashtable"),
++ /**
++ * Constant COLLECTION
++ */
++ COLLECTION("collection"),
++ /**
++ * Constant SET
++ */
++ SET("set"),
++ /**
++ * Constant MAP
++ */
++ MAP("map"),
++ /**
++ * Constant ENUMERATE
++ */
++ ENUMERATE("enumerate"),
++ /**
++ * Constant SORTEDSET
++ */
++ SORTEDSET("sortedset"),
++ /**
++ * Constant ITERATOR
++ */
++ ITERATOR("iterator"),
++ /**
++ * Constant SORTEDMAP
++ */
++ SORTEDMAP("sortedmap");
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
++ /**
++ * Field value.
++ */
++ private final java.lang.String value;
++
++ /**
++ * Field enumConstants.
++ */
++ private static final java.util.Map<java.lang.String, FieldMappingCollectionType> enumConstants = new java.util.HashMap<java.lang.String, FieldMappingCollectionType>();
++
+
-+ //-- validation code for: _container
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
-+ fieldValidator.setValidator(typeValidator);
++ static {
++ for (FieldMappingCollectionType c: FieldMappingCollectionType.values()) {
++ FieldMappingCollectionType.enumConstants.put(c.value, c);
+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _getMethod
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_getMethod", "get-method", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldMapping target = (FieldMapping) object;
-+ return target.getGetMethod();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ target.setGetMethod( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("string");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _getMethod
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _hasMethod
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_hasMethod", "has-method", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldMapping target = (FieldMapping) object;
-+ return target.getHasMethod();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ target.setHasMethod( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("string");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
++ };
+
-+ //-- validation code for: _hasMethod
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _setMethod
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_setMethod", "set-method", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldMapping target = (FieldMapping) object;
-+ return target.getSetMethod();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ target.setSetMethod( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("string");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _setMethod
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _createMethod
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_createMethod", "create-method", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldMapping target = (FieldMapping) object;
-+ return target.getCreateMethod();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ target.setCreateMethod( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("string");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
++ //----------------/
++ //- Constructors -/
++ //----------------/
+
-+ //-- validation code for: _createMethod
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _handler
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_handler", "handler", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldMapping target = (FieldMapping) object;
-+ return target.getHandler();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ target.setHandler( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("string");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
++ private FieldMappingCollectionType(final java.lang.String value) {
++ this.value = value;
++ }
++
++
++ //-----------/
++ //- Methods -/
++ //-----------/
+
-+ //-- validation code for: _handler
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
++ /**
++ * Method fromValue.
++ *
++ * @param value
++ * @return the constant for this value
++ */
++ public static org.exolab.castor.mapping.xml.types.FieldMappingCollectionType fromValue(
++ final java.lang.String value) {
++ FieldMappingCollectionType c = FieldMappingCollectionType.enumConstants.get(value);
++ if (c != null) {
++ return c;
+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _collection
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.types.FieldMappingCollectionType.class, "_collection", "collection", org.exolab.castor.xml.NodeType.Attribute);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldMapping target = (FieldMapping) object;
-+ return target.getCollection();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ target.setCollection( (org.exolab.castor.mapping.xml.types.FieldMappingCollectionType) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ handler = new org.exolab.castor.xml.handlers.EnumFieldHandler(org.exolab.castor.mapping.xml.types.FieldMappingCollectionType.class, handler);
-+ desc.setImmutable(true);
-+ desc.setSchemaType("FieldMappingCollectionType");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
++ throw new IllegalArgumentException(value);
++ }
+
-+ //-- validation code for: _collection
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
++ /**
++ *
++ *
++ * @param value
++ */
++ public void setValue(
++ final java.lang.String value) {
++ }
++
++ /**
++ * Method toString.
++ *
++ * @return the value of this constant
++ */
++ public java.lang.String toString(
++ ) {
++ return this.value;
++ }
++
++ /**
++ * Method value.
++ *
++ * @return the value of this constant
++ */
++ public java.lang.String value(
++ ) {
++ return this.value;
++ }
++
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/types/ClassMappingAccessType.java
+@@ -0,0 +1,119 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.exolab.castor.mapping.xml.types;
++
++/**
++ * Enumeration ClassMappingAccessType.
++ *
++ * @version $Revision$ $Date$
++ */
++public enum ClassMappingAccessType {
++
++
++ //------------------/
++ //- Enum Constants -/
++ //------------------/
++
++ /**
++ * Constant READ_ONLY
++ */
++ READ_ONLY("read-only"),
++ /**
++ * Constant SHARED
++ */
++ SHARED("shared"),
++ /**
++ * Constant EXCLUSIVE
++ */
++ EXCLUSIVE("exclusive"),
++ /**
++ * Constant DB_LOCKED
++ */
++ DB_LOCKED("db-locked");
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
++ /**
++ * Field value.
++ */
++ private final java.lang.String value;
++
++ /**
++ * Field enumConstants.
++ */
++ private static final java.util.Map<java.lang.String, ClassMappingAccessType> enumConstants = new java.util.HashMap<java.lang.String, ClassMappingAccessType>();
++
++
++ static {
++ for (ClassMappingAccessType c: ClassMappingAccessType.values()) {
++ ClassMappingAccessType.enumConstants.put(c.value, c);
+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _comparator
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_comparator", "comparator", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldMapping target = (FieldMapping) object;
-+ return target.getComparator();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ target.setComparator( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("string");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _comparator
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
++ };
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ private ClassMappingAccessType(final java.lang.String value) {
++ this.value = value;
++ }
++
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
++ /**
++ * Method fromValue.
++ *
++ * @param value
++ * @return the constant for this value
++ */
++ public static org.exolab.castor.mapping.xml.types.ClassMappingAccessType fromValue(
++ final java.lang.String value) {
++ ClassMappingAccessType c = ClassMappingAccessType.enumConstants.get(value);
++ if (c != null) {
++ return c;
+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _identity
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_identity", "identity", org.exolab.castor.xml.NodeType.Attribute);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldMapping target = (FieldMapping) object;
-+ if (!target.hasIdentity()) { return null; }
-+ return (target.getIdentity() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ // if null, use delete method for optional primitives
-+ if (value == null) {
-+ target.deleteIdentity();
-+ return;
-+ }
-+ target.setIdentity( ((java.lang.Boolean) value).booleanValue());
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("boolean");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
++ throw new IllegalArgumentException(value);
++ }
++
++ /**
++ *
++ *
++ * @param value
++ */
++ public void setValue(
++ final java.lang.String value) {
++ }
++
++ /**
++ * Method toString.
++ *
++ * @return the value of this constant
++ */
++ public java.lang.String toString(
++ ) {
++ return this.value;
++ }
++
++ /**
++ * Method value.
++ *
++ * @return the value of this constant
++ */
++ public java.lang.String value(
++ ) {
++ return this.value;
++ }
++
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/types/BindXmlAutoNamingType.java
+@@ -0,0 +1,111 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.exolab.castor.mapping.xml.types;
++
++/**
++ * Enumeration BindXmlAutoNamingType.
++ *
++ * @version $Revision$ $Date$
++ */
++public enum BindXmlAutoNamingType {
++
++
++ //------------------/
++ //- Enum Constants -/
++ //------------------/
++
++ /**
++ * Constant DERIVEBYCLASS
++ */
++ DERIVEBYCLASS("deriveByClass"),
++ /**
++ * Constant DERIVEBYFIELD
++ */
++ DERIVEBYFIELD("deriveByField");
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
++ /**
++ * Field value.
++ */
++ private final java.lang.String value;
++
++ /**
++ * Field enumConstants.
++ */
++ private static final java.util.Map<java.lang.String, BindXmlAutoNamingType> enumConstants = new java.util.HashMap<java.lang.String, BindXmlAutoNamingType>();
+
-+ //-- validation code for: _identity
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
-+ fieldValidator.setValidator(typeValidator);
++
++ static {
++ for (BindXmlAutoNamingType c: BindXmlAutoNamingType.values()) {
++ BindXmlAutoNamingType.enumConstants.put(c.value, c);
+ }
-+ desc.setValidator(fieldValidator);
-+ //-- initialize element descriptors
+
-+ //-- _description
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_description", "description", org.exolab.castor.xml.NodeType.Element);
-+ desc.setImmutable(true);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldMapping target = (FieldMapping) object;
-+ return target.getDescription();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ target.setDescription( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("string");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
++ };
+
-+ //-- validation code for: _description
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ private BindXmlAutoNamingType(final java.lang.String value) {
++ this.value = value;
++ }
++
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
++ /**
++ * Method fromValue.
++ *
++ * @param value
++ * @return the constant for this value
++ */
++ public static org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType fromValue(
++ final java.lang.String value) {
++ BindXmlAutoNamingType c = BindXmlAutoNamingType.enumConstants.get(value);
++ if (c != null) {
++ return c;
+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _sql
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.Sql.class, "_sql", "sql", org.exolab.castor.xml.NodeType.Element);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldMapping target = (FieldMapping) object;
-+ return target.getSql();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ target.setSql( (org.exolab.castor.mapping.xml.Sql) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("org.exolab.castor.mapping.xml.Sql");
-+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.exolab.org/");
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
++ throw new IllegalArgumentException(value);
++ }
+
-+ //-- validation code for: _sql
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
++ /**
++ *
++ *
++ * @param value
++ */
++ public void setValue(
++ final java.lang.String value) {
++ }
++
++ /**
++ * Method toString.
++ *
++ * @return the value of this constant
++ */
++ public java.lang.String toString(
++ ) {
++ return this.value;
++ }
++
++ /**
++ * Method value.
++ *
++ * @return the value of this constant
++ */
++ public java.lang.String value(
++ ) {
++ return this.value;
++ }
++
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/types/BindXmlNodeType.java
+@@ -0,0 +1,119 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.exolab.castor.mapping.xml.types;
++
++/**
++ * Enumeration BindXmlNodeType.
++ *
++ * @version $Revision$ $Date$
++ */
++public enum BindXmlNodeType {
++
++
++ //------------------/
++ //- Enum Constants -/
++ //------------------/
++
++ /**
++ * Constant ATTRIBUTE
++ */
++ ATTRIBUTE("attribute"),
++ /**
++ * Constant ELEMENT
++ */
++ ELEMENT("element"),
++ /**
++ * Constant NAMESPACE
++ */
++ NAMESPACE("namespace"),
++ /**
++ * Constant TEXT
++ */
++ TEXT("text");
++
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
++ /**
++ * Field value.
++ */
++ private final java.lang.String value;
++
++ /**
++ * Field enumConstants.
++ */
++ private static final java.util.Map<java.lang.String, BindXmlNodeType> enumConstants = new java.util.HashMap<java.lang.String, BindXmlNodeType>();
++
++
++ static {
++ for (BindXmlNodeType c: BindXmlNodeType.values()) {
++ BindXmlNodeType.enumConstants.put(c.value, c);
+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _bindXml
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.BindXml.class, "_bindXml", "bind-xml", org.exolab.castor.xml.NodeType.Element);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldMapping target = (FieldMapping) object;
-+ return target.getBindXml();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ target.setBindXml( (org.exolab.castor.mapping.xml.BindXml) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("org.exolab.castor.mapping.xml.BindXml");
-+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.exolab.org/");
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
+
-+ //-- validation code for: _bindXml
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _ldap
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.Ldap.class, "_ldap", "ldap", org.exolab.castor.xml.NodeType.Element);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldMapping target = (FieldMapping) object;
-+ return target.getLdap();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldMapping target = (FieldMapping) object;
-+ target.setLdap( (org.exolab.castor.mapping.xml.Ldap) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("org.exolab.castor.mapping.xml.Ldap");
-+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.exolab.org/");
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
++ };
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ private BindXmlNodeType(final java.lang.String value) {
++ this.value = value;
++ }
++
++
++ //-----------/
++ //- Methods -/
++ //-----------/
++
++ /**
++ * Method fromValue.
++ *
++ * @param value
++ * @return the constant for this value
++ */
++ public static org.exolab.castor.mapping.xml.types.BindXmlNodeType fromValue(
++ final java.lang.String value) {
++ BindXmlNodeType c = BindXmlNodeType.enumConstants.get(value);
++ if (c != null) {
++ return c;
++ }
++ throw new IllegalArgumentException(value);
++ }
++
++ /**
++ *
++ *
++ * @param value
++ */
++ public void setValue(
++ final java.lang.String value) {
++ }
++
++ /**
++ * Method toString.
++ *
++ * @return the value of this constant
++ */
++ public java.lang.String toString(
++ ) {
++ return this.value;
++ }
++
++ /**
++ * Method value.
++ *
++ * @return the value of this constant
++ */
++ public java.lang.String value(
++ ) {
++ return this.value;
++ }
++
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/types/descriptors/BindXmlAutoNamingTypeDescriptor.java
+@@ -0,0 +1,162 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
++
++package org.exolab.castor.mapping.xml.types.descriptors;
++
++ //---------------------------------/
++ //- Imported classes and packages -/
++//---------------------------------/
++
++import org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType;
++
++/**
++ * Class BindXmlAutoNamingTypeDescriptor.
++ *
++ * @version $Revision$ $Date$
++ */
++public class BindXmlAutoNamingTypeDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++
+
-+ //-- validation code for: _ldap
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ }
-+ desc.setValidator(fieldValidator);
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
++
++ /**
++ * Field _elementDefinition.
++ */
++ private boolean _elementDefinition;
++
++ /**
++ * Field _nsPrefix.
++ */
++ private java.lang.String _nsPrefix;
++
++ /**
++ * Field _nsURI.
++ */
++ private java.lang.String _nsURI;
++
++ /**
++ * Field _xmlName.
++ */
++ private java.lang.String _xmlName;
++
++ /**
++ * Field _identity.
++ */
++ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public BindXmlAutoNamingTypeDescriptor() {
++ super();
++ _nsURI = "http://castor.exolab.org/";
++ _xmlName = "BindXmlAutoNamingType";
++ _elementDefinition = false;
+ }
+
+
@@ -16280,7 +16660,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.exolab.castor.mapping.xml.FieldMapping.class;
++ return org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType.class;
+ }
+
+ /**
@@ -16343,29 +16723,29 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/FieldHandlerDefDescriptor.java
-@@ -0,0 +1,308 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/types/descriptors/SqlDirtyTypeDescriptor.java
+@@ -0,0 +1,162 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
+
-+package org.exolab.castor.mapping.xml.descriptors;
++package org.exolab.castor.mapping.xml.types.descriptors;
+
+ //---------------------------------/
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.exolab.castor.mapping.xml.FieldHandlerDef;
++import org.exolab.castor.mapping.xml.types.SqlDirtyType;
+
+/**
-+ * Class FieldHandlerDefDescriptor.
++ * Class SqlDirtyTypeDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class FieldHandlerDefDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class SqlDirtyTypeDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -16389,170 +16769,24 @@ Last-Update: 2010-06-27
+
+ /**
+ * Field _xmlName.
-+ */
-+ private java.lang.String _xmlName;
-+
-+ /**
-+ * Field _identity.
-+ */
-+ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
-+
-+
-+ //----------------/
-+ //- Constructors -/
-+ //----------------/
-+
-+ public FieldHandlerDefDescriptor() {
-+ super();
-+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "field-handler";
-+ _elementDefinition = true;
-+
-+ //-- set grouping compositor
-+ setCompositorAsSequence();
-+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
-+ org.exolab.castor.mapping.FieldHandler handler = null;
-+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
-+ //-- initialize attribute descriptors
-+
-+ //-- _name
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
-+ this._identity = desc;
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldHandlerDef target = (FieldHandlerDef) object;
-+ return target.getName();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldHandlerDef target = (FieldHandlerDef) object;
-+ target.setName( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new java.lang.String();
-+ }
-+ };
-+ desc.setSchemaType("ID");
-+ desc.setHandler(handler);
-+ desc.setRequired(true);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+
-+ //-- validation code for: _name
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(1);
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.IdValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.IdValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _clazz
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_clazz", "class", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldHandlerDef target = (FieldHandlerDef) object;
-+ return target.getClazz();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldHandlerDef target = (FieldHandlerDef) object;
-+ target.setClazz( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("string");
-+ desc.setHandler(handler);
-+ desc.setRequired(true);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+
-+ //-- validation code for: _clazz
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(1);
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- initialize element descriptors
-+
-+ //-- _paramList
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.Param.class, "_paramList", "param", org.exolab.castor.xml.NodeType.Element);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ FieldHandlerDef target = (FieldHandlerDef) object;
-+ return target.getParam();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ FieldHandlerDef target = (FieldHandlerDef) object;
-+ target.addParam( (org.exolab.castor.mapping.xml.Param) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
-+ try {
-+ FieldHandlerDef target = (FieldHandlerDef) object;
-+ target.removeAllParam();
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("list");
-+ desc.setComponentType("org.exolab.castor.mapping.xml.Param");
-+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.exolab.org/");
-+ desc.setMultivalued(true);
-+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
++ */
++ private java.lang.String _xmlName;
+
-+ //-- validation code for: _paramList
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(0);
-+ { //-- local scope
-+ }
-+ desc.setValidator(fieldValidator);
++ /**
++ * Field _identity.
++ */
++ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public SqlDirtyTypeDescriptor() {
++ super();
++ _nsURI = "http://castor.exolab.org/";
++ _xmlName = "SqlDirtyType";
++ _elementDefinition = false;
+ }
+
+
@@ -16591,7 +16825,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.exolab.castor.mapping.xml.FieldHandlerDef.class;
++ return org.exolab.castor.mapping.xml.types.SqlDirtyType.class;
+ }
+
+ /**
@@ -16654,29 +16888,29 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/ParamDescriptor.java
-@@ -0,0 +1,257 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/types/descriptors/ClassMappingAccessTypeDescriptor.java
+@@ -0,0 +1,162 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
+
-+package org.exolab.castor.mapping.xml.descriptors;
++package org.exolab.castor.mapping.xml.types.descriptors;
+
+ //---------------------------------/
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.exolab.castor.mapping.xml.Param;
++import org.exolab.castor.mapping.xml.types.ClassMappingAccessType;
+
+/**
-+ * Class ParamDescriptor.
++ * Class ClassMappingAccessTypeDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class ParamDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class ClassMappingAccessTypeDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -16713,106 +16947,11 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public ParamDescriptor() {
++ public ClassMappingAccessTypeDescriptor() {
+ super();
+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "param";
-+ _elementDefinition = true;
-+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
-+ org.exolab.castor.mapping.FieldHandler handler = null;
-+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
-+ //-- initialize attribute descriptors
-+
-+ //-- _name
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ Param target = (Param) object;
-+ return target.getName();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ Param target = (Param) object;
-+ target.setName( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("string");
-+ desc.setHandler(handler);
-+ desc.setRequired(true);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+
-+ //-- validation code for: _name
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(1);
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _value
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_value", "value", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ Param target = (Param) object;
-+ return target.getValue();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ Param target = (Param) object;
-+ target.setValue( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("string");
-+ desc.setHandler(handler);
-+ desc.setRequired(true);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+
-+ //-- validation code for: _value
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(1);
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- initialize element descriptors
-+
++ _xmlName = "ClassMappingAccessType";
++ _elementDefinition = false;
+ }
+
+
@@ -16851,7 +16990,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.exolab.castor.mapping.xml.Param.class;
++ return org.exolab.castor.mapping.xml.types.ClassMappingAccessType.class;
+ }
+
+ /**
@@ -16914,29 +17053,29 @@ Last-Update: 2010-06-27
+
+}
--- /dev/null
-+++ castor-1.3.1/xml/src/main/java/org/exolab/castor/mapping/xml/descriptors/BindXmlDescriptor.java
-@@ -0,0 +1,639 @@
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/types/descriptors/FieldMappingCollectionTypeDescriptor.java
+@@ -0,0 +1,162 @@
+/*
+ * This class was automatically generated with
-+ * <a href="http://www.castor.org">Castor 1.3.0.1</a>, using an XML
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
+ * Schema.
+ * $Id$
+ */
+
-+package org.exolab.castor.mapping.xml.descriptors;
++package org.exolab.castor.mapping.xml.types.descriptors;
+
+ //---------------------------------/
+ //- Imported classes and packages -/
+//---------------------------------/
+
-+import org.exolab.castor.mapping.xml.BindXml;
++import org.exolab.castor.mapping.xml.types.FieldMappingCollectionType;
+
+/**
-+ * Class BindXmlDescriptor.
++ * Class FieldMappingCollectionTypeDescriptor.
+ *
+ * @version $Revision$ $Date$
+ */
-+public class BindXmlDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
++public class FieldMappingCollectionTypeDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
+
+ //--------------------------/
@@ -16973,488 +17112,176 @@ Last-Update: 2010-06-27
+ //- Constructors -/
+ //----------------/
+
-+ public BindXmlDescriptor() {
++ public FieldMappingCollectionTypeDescriptor() {
+ super();
+ _nsURI = "http://castor.exolab.org/";
-+ _xmlName = "bind-xml";
-+ _elementDefinition = true;
++ _xmlName = "FieldMappingCollectionType";
++ _elementDefinition = false;
++ }
+
-+ //-- set grouping compositor
-+ setCompositorAsSequence();
-+ org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
-+ org.exolab.castor.mapping.FieldHandler handler = null;
-+ org.exolab.castor.xml.FieldValidator fieldValidator = null;
-+ //-- initialize attribute descriptors
+
-+ //-- _name
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_name", "name", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setSchemaType("QName");
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ BindXml target = (BindXml) object;
-+ return target.getName();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ BindXml target = (BindXml) object;
-+ target.setName( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new java.lang.String();
-+ }
-+ };
-+ desc.setSchemaType("QName");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
++ //-----------/
++ //- Methods -/
++ //-----------/
++
++ /**
++ * Method getAccessMode.
++ *
++ * @return the access mode specified for this class.
++ */
++ @Override()
++ public org.exolab.castor.mapping.AccessMode getAccessMode(
++ ) {
++ return null;
++ }
++
++ /**
++ * Method getIdentity.
++ *
++ * @return the identity field, null if this class has no
++ * identity.
++ */
++ @Override()
++ public org.exolab.castor.mapping.FieldDescriptor getIdentity(
++ ) {
++ return _identity;
++ }
++
++ /**
++ * Method getJavaClass.
++ *
++ * @return the Java class represented by this descriptor.
++ */
++ @Override()
++ public java.lang.Class getJavaClass(
++ ) {
++ return org.exolab.castor.mapping.xml.types.FieldMappingCollectionType.class;
++ }
++
++ /**
++ * Method getNameSpacePrefix.
++ *
++ * @return the namespace prefix to use when marshaling as XML.
++ */
++ @Override()
++ public java.lang.String getNameSpacePrefix(
++ ) {
++ return _nsPrefix;
++ }
++
++ /**
++ * Method getNameSpaceURI.
++ *
++ * @return the namespace URI used when marshaling and
++ * unmarshaling as XML.
++ */
++ @Override()
++ public java.lang.String getNameSpaceURI(
++ ) {
++ return _nsURI;
++ }
++
++ /**
++ * Method getValidator.
++ *
++ * @return a specific validator for the class described by this
++ * ClassDescriptor.
++ */
++ @Override()
++ public org.exolab.castor.xml.TypeValidator getValidator(
++ ) {
++ return this;
++ }
+
-+ //-- validation code for: _name
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.NameValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
-+ org.exolab.castor.xml.XMLConstants.NAME_TYPE_QNAME);
-+ fieldValidator.setValidator(typeValidator);
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _type
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_type", "type", org.exolab.castor.xml.NodeType.Attribute);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ BindXml target = (BindXml) object;
-+ return target.getType();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ BindXml target = (BindXml) object;
-+ target.setType( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new java.lang.String();
-+ }
-+ };
-+ desc.setSchemaType("NMTOKEN");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
++ /**
++ * Method getXMLName.
++ *
++ * @return the XML Name for the Class being described.
++ */
++ @Override()
++ public java.lang.String getXMLName(
++ ) {
++ return _xmlName;
++ }
+
-+ //-- validation code for: _type
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.NameValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
-+ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.addPattern("[\\w-._:]+");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _autoNaming
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType.class, "_autoNaming", "auto-naming", org.exolab.castor.xml.NodeType.Attribute);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ BindXml target = (BindXml) object;
-+ return target.getAutoNaming();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ BindXml target = (BindXml) object;
-+ target.setAutoNaming( (org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ handler = new org.exolab.castor.xml.handlers.EnumFieldHandler(org.exolab.castor.mapping.xml.types.BindXmlAutoNamingType.class, handler);
-+ desc.setImmutable(true);
-+ desc.setSchemaType("BindXmlAutoNamingType");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
++ /**
++ * Method isElementDefinition.
++ *
++ * @return true if XML schema definition of this Class is that
++ * of a global
++ * element or element with anonymous type definition.
++ */
++ public boolean isElementDefinition(
++ ) {
++ return _elementDefinition;
++ }
+
-+ //-- validation code for: _autoNaming
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _location
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_location", "location", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ BindXml target = (BindXml) object;
-+ return target.getLocation();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ BindXml target = (BindXml) object;
-+ target.setLocation( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("string");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
++}
+--- /dev/null
++++ castor-1.3.2/xml/src/main/java/org/exolab/castor/mapping/xml/types/descriptors/BindXmlNodeTypeDescriptor.java
+@@ -0,0 +1,162 @@
++/*
++ * This class was automatically generated with
++ * <a href="http://www.castor.org">Castor 1.3.1</a>, using an XML
++ * Schema.
++ * $Id$
++ */
+
-+ //-- validation code for: _location
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _matches
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_matches", "matches", org.exolab.castor.xml.NodeType.Attribute);
-+ desc.setImmutable(true);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ BindXml target = (BindXml) object;
-+ return target.getMatches();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ BindXml target = (BindXml) object;
-+ target.setMatches( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("string");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
++package org.exolab.castor.mapping.xml.types.descriptors;
+
-+ //-- validation code for: _matches
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.StringValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.StringValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.setWhiteSpace("preserve");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _reference
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_reference", "reference", org.exolab.castor.xml.NodeType.Attribute);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ BindXml target = (BindXml) object;
-+ if (!target.hasReference()) { return null; }
-+ return (target.getReference() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ BindXml target = (BindXml) object;
-+ // if null, use delete method for optional primitives
-+ if (value == null) {
-+ target.deleteReference();
-+ return;
-+ }
-+ target.setReference( ((java.lang.Boolean) value).booleanValue());
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("boolean");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
++ //---------------------------------/
++ //- Imported classes and packages -/
++//---------------------------------/
++
++import org.exolab.castor.mapping.xml.types.BindXmlNodeType;
++
++/**
++ * Class BindXmlNodeTypeDescriptor.
++ *
++ * @version $Revision$ $Date$
++ */
++public class BindXmlNodeTypeDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
+
-+ //-- validation code for: _reference
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _node
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.types.BindXmlNodeType.class, "_node", "node", org.exolab.castor.xml.NodeType.Attribute);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ BindXml target = (BindXml) object;
-+ return target.getNode();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ BindXml target = (BindXml) object;
-+ target.setNode( (org.exolab.castor.mapping.xml.types.BindXmlNodeType) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ handler = new org.exolab.castor.xml.handlers.EnumFieldHandler(org.exolab.castor.mapping.xml.types.BindXmlNodeType.class, handler);
-+ desc.setImmutable(true);
-+ desc.setSchemaType("BindXmlNodeType");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
+
-+ //-- validation code for: _node
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _QNamePrefix
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_QNamePrefix", "QName-prefix", org.exolab.castor.xml.NodeType.Attribute);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ BindXml target = (BindXml) object;
-+ return target.getQNamePrefix();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ BindXml target = (BindXml) object;
-+ target.setQNamePrefix( (java.lang.String) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return new java.lang.String();
-+ }
-+ };
-+ desc.setSchemaType("NMTOKEN");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
++ //--------------------------/
++ //- Class/Member Variables -/
++ //--------------------------/
+
-+ //-- validation code for: _QNamePrefix
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.NameValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.NameValidator(
-+ org.exolab.castor.xml.XMLConstants.NAME_TYPE_NMTOKEN);
-+ fieldValidator.setValidator(typeValidator);
-+ typeValidator.addPattern("[\\w-._:]+");
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _transient
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.Boolean.TYPE, "_transient", "transient", org.exolab.castor.xml.NodeType.Attribute);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ BindXml target = (BindXml) object;
-+ if (!target.hasTransient()) { return null; }
-+ return (target.getTransient() ? java.lang.Boolean.TRUE : java.lang.Boolean.FALSE);
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ BindXml target = (BindXml) object;
-+ // if null, use delete method for optional primitives
-+ if (value == null) {
-+ target.deleteTransient();
-+ return;
-+ }
-+ target.setTransient( ((java.lang.Boolean) value).booleanValue());
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("boolean");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
++ /**
++ * Field _elementDefinition.
++ */
++ private boolean _elementDefinition;
+
-+ //-- validation code for: _transient
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ org.exolab.castor.xml.validators.BooleanValidator typeValidator;
-+ typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
-+ fieldValidator.setValidator(typeValidator);
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- initialize element descriptors
++ /**
++ * Field _nsPrefix.
++ */
++ private java.lang.String _nsPrefix;
+
-+ //-- _classMapping
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.ClassMapping.class, "_classMapping", "class", org.exolab.castor.xml.NodeType.Element);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ BindXml target = (BindXml) object;
-+ return target.getClassMapping();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ BindXml target = (BindXml) object;
-+ target.setClassMapping( (org.exolab.castor.mapping.xml.ClassMapping) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("org.exolab.castor.mapping.xml.ClassMapping");
-+ desc.setHandler(handler);
-+ desc.setNameSpaceURI("http://castor.exolab.org/");
-+ desc.setMultivalued(false);
-+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
++ /**
++ * Field _nsURI.
++ */
++ private java.lang.String _nsURI;
+
-+ //-- validation code for: _classMapping
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ { //-- local scope
-+ }
-+ desc.setValidator(fieldValidator);
-+ //-- _propertyList
-+ desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(org.exolab.castor.mapping.xml.Property.class, "_propertyList", "property", org.exolab.castor.xml.NodeType.Element);
-+ handler = new org.exolab.castor.xml.XMLFieldHandler() {
-+ @Override
-+ public java.lang.Object getValue( java.lang.Object object )
-+ throws IllegalStateException
-+ {
-+ BindXml target = (BindXml) object;
-+ return target.getProperty();
-+ }
-+ @Override
-+ public void setValue( java.lang.Object object, java.lang.Object value)
-+ throws IllegalStateException, IllegalArgumentException
-+ {
-+ try {
-+ BindXml target = (BindXml) object;
-+ target.addProperty( (org.exolab.castor.mapping.xml.Property) value);
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException {
-+ try {
-+ BindXml target = (BindXml) object;
-+ target.removeAllProperty();
-+ } catch (java.lang.Exception ex) {
-+ throw new IllegalStateException(ex.toString());
-+ }
-+ }
-+ @Override
-+ @SuppressWarnings("unused")
-+ public java.lang.Object newInstance(java.lang.Object parent) {
-+ return null;
-+ }
-+ };
-+ desc.setSchemaType("list");
-+ desc.setComponentType("org.exolab.castor.mapping.xml.Property");
-+ desc.setHandler(handler);
-+ desc.setMultivalued(true);
-+ addFieldDescriptor(desc);
-+ addSequenceElement(desc);
++ /**
++ * Field _xmlName.
++ */
++ private java.lang.String _xmlName;
+
-+ //-- validation code for: _propertyList
-+ fieldValidator = new org.exolab.castor.xml.FieldValidator();
-+ fieldValidator.setMinOccurs(0);
-+ { //-- local scope
-+ }
-+ desc.setValidator(fieldValidator);
++ /**
++ * Field _identity.
++ */
++ private org.exolab.castor.xml.XMLFieldDescriptor _identity;
++
++
++ //----------------/
++ //- Constructors -/
++ //----------------/
++
++ public BindXmlNodeTypeDescriptor() {
++ super();
++ _nsURI = "http://castor.exolab.org/";
++ _xmlName = "BindXmlNodeType";
++ _elementDefinition = false;
+ }
+
+
@@ -17493,7 +17320,7 @@ Last-Update: 2010-06-27
+ @Override()
+ public java.lang.Class getJavaClass(
+ ) {
-+ return org.exolab.castor.mapping.xml.BindXml.class;
++ return org.exolab.castor.mapping.xml.types.BindXmlNodeType.class;
+ }
+
+ /**
diff --git a/debian/patches/fix_debian_build.diff b/debian/patches/fix_debian_build.diff
index 943d3bf..853868c 100644
--- a/debian/patches/fix_debian_build.diff
+++ b/debian/patches/fix_debian_build.diff
@@ -140,7 +140,7 @@ index e189839..414e770 100644
<target name="prepare.core" unless="prepare.executed">
diff --git a/cpa/build.xml b/cpa/build.xml
-index 2b32ea2..11d4f1f 100644
+index 2b32ea2..d481e01 100644
--- a/cpa/build.xml
+++ b/cpa/build.xml
@@ -1,5 +1,4 @@
@@ -150,7 +150,12 @@ index 2b32ea2..11d4f1f 100644
<property environment="env" />
<property name="source" value="${basedir}/src"/>
-@@ -13,12 +12,14 @@
+@@ -9,16 +8,18 @@
+ <property name="main.jjtree" value="${source}/main/jjtree"/>
+ <property name="jjtree.target" value="${target}/generated-sources/jjtree"/>
+ <property name="javacc.target" value="${target}/generated-sources/javacc"/>
+- <property name="javacc.home" value="${basedir}/../lib" />
++ <property name="javacc.home" value="/usr/share/java" />
<property name="build" value="${basedir}/build"/>
<property name="castor.target" value="${basedir}/target/generated-sources/castor"/>
<property name="classes" value="${build}/classes"/>
@@ -166,6 +171,53 @@ index 2b32ea2..11d4f1f 100644
<path id="build.classpath">
<!-- inter-module dependencies -->
+@@ -28,6 +29,7 @@
+ <pathelement location="${basedir}/../schema/build/classes"/>
+ <pathelement location="${basedir}/../anttask/build/classes"/>
+ <pathelement location="${basedir}/../codegen/build/classes"/>
++ <fileset dir="/" includesfile="${basedir}/../debian/classpath-debian"/>
+
+ <!-- third-party libs -->
+ <!--
+@@ -41,10 +43,12 @@
+
+ <target name="derive.cpa.libs">
+ <mkdir dir="${basedir}/lib" />
++ <!--
+ <copy todir="${basedir}/lib" verbose="true">
+ <fileset refid="dependency.fileset"/>
+ <mapper type="flatten"/>
+ </copy>
++ -->
+ </target>
+
+ <target name="prepare.cpa" unless="prepare.cpa.executed">
+@@ -97,6 +101,17 @@
+ </target>
+
+ <target name="compile.cpa" depends="gen.parser, derive.cpa.libs" description="Compile Castor JDO">
++ <javac destdir="${classes}"
++ debug="on" encoding="ISO-8859-1" deprecation="false">
++ <src path="${javacc.target}"/>
++ <src path="${castor.target}"/>
++ <src path="${main.java}"/>
++ <classpath refid="build.classpath"/>
++ <classpath>
++ <fileset dir="${basedir}/lib"/>
++ </classpath>
++ </javac>
++ <!--
+ <javac srcdir="${javacc.target}" destdir="${classes}"
+ debug="on" encoding="ISO-8859-1" deprecation="false">
+ <classpath refid="build.classpath"/>
+@@ -118,6 +133,7 @@
+ <fileset dir="${basedir}/lib"/>
+ </classpath>
+ </javac>
++ -->
+ <copy todir="${classes}">
+ <fileset dir="${main.resources}">
+ <include name="**"/>
diff --git a/ddlgen/build.xml b/ddlgen/build.xml
index 4876ce4..2963db7 100644
--- a/ddlgen/build.xml
@@ -332,7 +384,7 @@ index 7aa2944..dfc379f 100644
<target name="prepare.schema" depends="derive.libs" unless="prepare.executed">
diff --git a/src/build.xml b/src/build.xml
-index 6316674..f2e2258 100644
+index 6316674..a7babdf 100644
--- a/src/build.xml
+++ b/src/build.xml
@@ -2,8 +2,7 @@
@@ -456,7 +508,20 @@ index 6316674..f2e2258 100644
<classpath>
<fileset dir="${basedir}/newlib"/>
</classpath>
-@@ -599,6 +617,7 @@
+@@ -416,12 +434,10 @@
+ <property name="release" value="${release}"/>
+ </ant>
+ <!-- build Castor JDO -->
+-<!--
+ <ant antfile="${basedir}/cpa/build.xml" target="compile.cpa" inheritAll="false">
+ <property name="version" value="${version}"/>
+ <property name="release" value="${release}"/>
+ </ant>
+--->
+ <!-- build examples -->
+ <!--
+ <ant antfile="${basedir}/examples/build.xml" target="compile.examples" inheritAll="false">
+@@ -599,6 +615,7 @@
<include name="${archive.name}.jar" />
</fileset>
</copy>
@@ -464,7 +529,7 @@ index 6316674..f2e2258 100644
<copy todir="target/lib">
<fileset dir="${lib}">
<include name="commons-logging.jar" />
-@@ -608,6 +627,7 @@
+@@ -608,6 +625,7 @@
<include name="derby-10.1.2.1.jar" />
</fileset>
</copy>
@@ -472,7 +537,7 @@ index 6316674..f2e2258 100644
<zip zipfile="${dist}/${archive.name}-examples.zip" basedir="target" includes="**"/>
</target>
-@@ -639,7 +659,8 @@
+@@ -639,7 +657,8 @@
<replace file="${classes}/MANIFEST.MF" token="$$RELEASE$$" value="${release}"/>
<!-- create Castor XML Only Jar -->
@@ -482,7 +547,21 @@ index 6316674..f2e2258 100644
manifest="${classes}/MANIFEST.MF"
includes="LICENSE,LICENSE.APACHE2,README,
org/castor/messages.properties,
-@@ -917,9 +938,11 @@
+@@ -680,13 +699,11 @@
+ <property name="release" value="${release}"/>
+ </ant>
+ <!-- create JAR for JDO, calling module build file recursively -->
+-<!--
+ <ant antfile="${basedir}/cpa/build.xml" target="jar.cpa" inheritAll="false">
+ <property name="project" value="${project}"/>
+ <property name="version" value="${version}"/>
+ <property name="release" value="${release}"/>
+ </ant>
+--->
+ <!-- create JAR for XML code generator, calling module build file recursively -->
+ <ant antfile="${basedir}/codegen/build.xml" target="jar.codegen" inheritAll="false">
+ <property name="project" value="${project}"/>
+@@ -917,9 +934,11 @@
<copy todir="${build}/${archive.name}/src">
<fileset dir="${source}" />
</copy>
@@ -494,7 +573,7 @@ index 6316674..f2e2258 100644
<copy todir="${build}/${archive.name}/bin">
<fileset dir="./bin" includes="*.sh,*.bat"/>
</copy>
-@@ -1098,9 +1121,11 @@
+@@ -1098,9 +1117,11 @@
<include name="${archive.name}-core.jar"/>
</fileset>
</copy>
diff --git a/debian/rules b/debian/rules
index 78bb96b..4bdd255 100755
--- a/debian/rules
+++ b/debian/rules
@@ -22,9 +22,9 @@ override_dh_install:
mh_installjar -plibcastor-core-java -l core/pom.xml \
dist/castor-core-$(VERSION).jar
# JDO module
-# mh_installpom -plibcastor-jdo-java --no-parent cpa/pom.xml
-# mh_installjar -plibcastor-jdo-java -l cpa/pom.xml \
-# dist/castor-jdo-$(VERSION).jar
+ mh_installpom -plibcastor-jdo-java --no-parent cpa/pom.xml
+ mh_installjar -plibcastor-jdo-java -l cpa/pom.xml \
+ dist/castor-jdo-$(VERSION).jar
# Codegen module
mh_installpom -plibcastor-codegen-java --no-parent codegen/pom.xml
mh_installjar -plibcastor-codegen-java -l codegen/pom.xml \
@@ -46,12 +46,6 @@ override_dh_auto_clean:
-cd src && ant distclean
mh_clean
-override_jh_manifest:
- # Failure of jh_manifest are ignored because it is failing intermittently,
- # so it is not clear if manifest templates from upstream are broken or if
- # this is just a bug in javahelper. By now, I'm ignoring any failure.
- -jh_manifest -v
-
get-orig-source:
cd $(dir $(firstword $(MAKEFILE_LIST)))../ && \
uscan \
--
Castor: open source data binding framework written in Java
More information about the pkg-java-commits
mailing list