org.exolab.castor.mapping.loader
public abstract class AbstractMappingLoader extends AbstractMappingLoader2
Version: $Revision: 6385 $ $Date: 2006-04-10 16:39:24 -0600 (Mon, 10 Apr 2006) $
Nested Class Summary | |
---|---|
class | AbstractMappingLoader.TypeInfoReference
A class used to by the createFieldHandler method in order to
save the reference of the TypeInfo that was used. |
Field Summary | |
---|---|
protected static Class[] | EMPTY_ARGS Empty array of class types used for reflection. |
protected static ClassDescriptor | NO_DESCRIPTOR |
protected static Class[] | STRING_ARG The string argument for the valueOf method, used for introspection when searching for
type-safe enumeration style classes. |
protected static String | VALUE_OF Factory method name for type-safe enumerations. |
Constructor Summary | |
---|---|
protected | AbstractMappingLoader(ClassLoader loader)
Constructs a new mapping helper. |
Method Summary | |
---|---|
protected ClassDescriptor | createDescriptor(ClassMapping clsMap)
Creates a new descriptor. |
protected FieldDescriptor | createFieldDesc(Class javaClass, FieldMapping fieldMap)
Creates a single field descriptor. |
protected FieldHandler | createFieldHandler(Class javaClass, Class fldType, FieldMapping fldMap, AbstractMappingLoader.TypeInfoReference typeInfoRef)
Creates the FieldHandler for the given FieldMapping.
|
protected static Method | findAccessor(Class javaClass, String methodName, Class fieldType, boolean getMethod)
Returns the named accessor. |
static String[] | getIdentityColumnNames(String[] ids, ClassMapping clsMap)
Returns a list of column names that are part of the identity.
|
String | getSourceType() |
protected TypeInfo | getTypeInfo(Class fieldType, CollectionHandler colHandler, FieldMapping fieldMap) |
protected static boolean | isPrimitive(Class type)
Returns true if the given class should be treated as a primitive
type |
protected void | loadMappingInternal(MappingRoot mapping, Object param) |
protected void | resolveRelations(ClassDescriptor clsDesc) |
protected Class | resolveType(String typeName)
Returns the Java class for the named type. |
Parameters: loader The class loader to use, null for the default
Parameters: clsMap The class mapping information.
Throws: MappingException An exception indicating why mapping for the class cannot be created.
Parameters: javaClass The class to which the field belongs. fieldMap The field mapping information.
Returns: The field descriptor.
Throws: MappingException The field or its accessor methods are not found, not accessible, not of the specified type, etc.
Parameters: javaClass the class type of the parent of the field. fldType the Java class type for the field. fldMap the field mapping.
Returns: the newly created FieldHandler.
Parameters: javaClass The class to which the field belongs. methodName The name of the accessor method. fieldType The type of the field if known, or null. getMethod True if get method, false if set method.
Returns: The method, null if not found.
Throws: MappingException The method is not accessible or is not of the specified type.
Parameters: ids Known identity names. clsMap Class mapping.
Returns: List of identity column names.
Returns: true if the given class should be treated as a primitive type