org.exolab.castor.jdo.engine
Class JDOMappingLoader

java.lang.Object
  extended byorg.exolab.castor.mapping.loader.AbstractMappingLoader2
      extended byorg.exolab.castor.mapping.loader.AbstractMappingLoader
          extended byorg.exolab.castor.jdo.engine.JDOMappingLoader
All Implemented Interfaces:
org.exolab.castor.mapping.MappingLoader

public final class JDOMappingLoader
extends org.exolab.castor.mapping.loader.AbstractMappingLoader

A JDO implementation of mapping helper. Creates JDO class descriptors from the mapping file.

Version:
$Revision: 7272 $ $Date: 2006-04-13 07:37:49 -0600 (Thu, 13 Apr 2006) $
Author:
Assaf Arkin, Ralf Joachim

Nested Class Summary
 
Nested classes inherited from class org.exolab.castor.mapping.loader.AbstractMappingLoader
org.exolab.castor.mapping.loader.AbstractMappingLoader.TypeInfoReference
 
Field Summary
 
Fields inherited from class org.exolab.castor.mapping.loader.AbstractMappingLoader
EMPTY_ARGS, STRING_ARG, VALUE_OF
 
Constructor Summary
JDOMappingLoader(java.lang.ClassLoader loader)
           
 
Method Summary
protected  org.exolab.castor.mapping.ClassDescriptor createClassDescriptor(org.exolab.castor.mapping.xml.ClassMapping clsMap)
           
protected  org.exolab.castor.mapping.loader.AbstractFieldDescriptor createFieldDesc(java.lang.Class javaClass, org.exolab.castor.mapping.xml.FieldMapping fieldMap)
           
static java.lang.String definition2param(java.lang.String sqlTypeDef)
          Extracts parameter for type convertor from the SQL type definition of the form "SQL_TYPE_NAME[PARAMETER]".
static java.lang.String definition2type(java.lang.String sqlTypeDef)
          Extracts SQL type name from the the SQL type definition of the form "SQL_TYPE_NAME[PARAMETER]".
protected  org.exolab.castor.mapping.FieldDescriptor findIdentityByName(java.util.List fldList, java.lang.String idName, java.lang.Class javaClass)
           
 org.castor.mapping.BindingType getBindingType()
          
protected  java.lang.String[] getSqlTypes(org.exolab.castor.mapping.xml.FieldMapping fieldMap)
          Parse the sql type attribute to build an array of types, needed to support whitespace inside parameterized types (see Bug 1045).
protected  org.exolab.castor.mapping.loader.TypeInfo getTypeInfo(java.lang.Class fieldType, org.exolab.castor.mapping.CollectionHandler colHandler, org.exolab.castor.mapping.xml.FieldMapping fieldMap)
           
 void loadMapping(org.exolab.castor.mapping.xml.MappingRoot mapping, java.lang.Object param)
          
protected  void resolveRelations(org.exolab.castor.mapping.ClassDescriptor clsDesc)
           
 
Methods inherited from class org.exolab.castor.mapping.loader.AbstractMappingLoader
checkFieldNameDuplicates, createClassDescriptors, createFieldDescriptors, createFieldHandler, createFieldHandlers, divideFieldDescriptors, findAccessor, getDepended, getExtended, getIdColumnIndex, getIdentityColumnNames, getInternalContext, getOrigin, getSourceType, isPrimitive, resolveType, setInternalContext
 
Methods inherited from class org.exolab.castor.mapping.loader.AbstractMappingLoader2
addDescriptor, clear, descriptorIterator, getClassLoader, getDescriptor, isAllowRedefinition, loadMapping, setAllowRedefinitions, setClassLoader
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JDOMappingLoader

public JDOMappingLoader(java.lang.ClassLoader loader)
Method Detail

definition2param

public static java.lang.String definition2param(java.lang.String sqlTypeDef)
Extracts parameter for type convertor from the SQL type definition of the form "SQL_TYPE_NAME[PARAMETER]". If the type is not parameterized, returns null.

Parameters:
sqlTypeDef - SQL type definition (e.g. char[01]).
Returns:
Parameter (e.g. "01") or null if not parameterized.

definition2type

public static java.lang.String definition2type(java.lang.String sqlTypeDef)
Extracts SQL type name from the the SQL type definition of the form "SQL_TYPE_NAME[PARAMETER]".

Parameters:
sqlTypeDef - SQL type definition (e.g. char[01]).
Returns:
SQL type name (e.g. "char").

getBindingType

public org.castor.mapping.BindingType getBindingType()


loadMapping

public void loadMapping(org.exolab.castor.mapping.xml.MappingRoot mapping,
                        java.lang.Object param)
                 throws org.exolab.castor.mapping.MappingException

Throws:
org.exolab.castor.mapping.MappingException

createClassDescriptor

protected org.exolab.castor.mapping.ClassDescriptor createClassDescriptor(org.exolab.castor.mapping.xml.ClassMapping clsMap)
                                                                   throws org.exolab.castor.mapping.MappingException
Throws:
org.exolab.castor.mapping.MappingException

findIdentityByName

protected org.exolab.castor.mapping.FieldDescriptor findIdentityByName(java.util.List fldList,
                                                                       java.lang.String idName,
                                                                       java.lang.Class javaClass)
                                                                throws org.exolab.castor.mapping.MappingException
Throws:
org.exolab.castor.mapping.MappingException

resolveRelations

protected void resolveRelations(org.exolab.castor.mapping.ClassDescriptor clsDesc)

getSqlTypes

protected java.lang.String[] getSqlTypes(org.exolab.castor.mapping.xml.FieldMapping fieldMap)
Parse the sql type attribute to build an array of types, needed to support whitespace inside parameterized types (see Bug 1045).


getTypeInfo

protected org.exolab.castor.mapping.loader.TypeInfo getTypeInfo(java.lang.Class fieldType,
                                                                org.exolab.castor.mapping.CollectionHandler colHandler,
                                                                org.exolab.castor.mapping.xml.FieldMapping fieldMap)
                                                         throws org.exolab.castor.mapping.MappingException
Throws:
org.exolab.castor.mapping.MappingException

createFieldDesc

protected org.exolab.castor.mapping.loader.AbstractFieldDescriptor createFieldDesc(java.lang.Class javaClass,
                                                                                   org.exolab.castor.mapping.xml.FieldMapping fieldMap)
                                                                            throws org.exolab.castor.mapping.MappingException
Throws:
org.exolab.castor.mapping.MappingException


Copyright 2008 null. All Rights Reserved.