org.exolab.castor.persist
Class FieldMolder

java.lang.Object
  extended by org.exolab.castor.persist.FieldMolder

public class FieldMolder
extends java.lang.Object

FieldMolder represents a field of a data object class. It is used by ClassMolder to set and get the value from a field of a data object.

Author:
Thomas Yip

Nested Class Summary
(package private) static class FieldMolder.CollectionInfo
           
 
Field Summary
static short MANY_TO_MANY
           
static short ONE_TO_MANY
           
static short PERSISTANCECAPABLE
           
static short PRIMITIVE
           
static short SERIALIZABLE
           
 
Constructor Summary
FieldMolder(DatingService ds, ClassMolder eMold, FieldMapping fieldMap)
           
FieldMolder(DatingService ds, ClassMolder eMold, FieldMapping fieldMap, java.lang.String manyTable, java.lang.String[] idSQL, int[] idType, TypeConvertor[] idTo, TypeConvertor[] idFrom, java.lang.String[] idParam, java.lang.String[] relatedIdSQL, int[] relatedIdType, TypeConvertor[] ridTo, TypeConvertor[] ridFrom, java.lang.String[] ridParam)
          Creates a single field descriptor.
 
Method Summary
 void addValue(java.lang.Object object, java.lang.Object value, java.lang.ClassLoader loader)
           
 java.lang.Class getCollectionType()
           
protected  java.lang.Class getCollectionType(java.lang.String coll, boolean lazy)
           
 ClassMolder getEnclosingClassMolder()
           
 ClassMolder getFieldClassMolder()
           
 LockEngine getFieldLockEngine()
           
 short getFieldType()
           
 java.lang.String getName()
           
 SQLRelationLoader getRelationLoader()
           
 java.lang.Object getValue(java.lang.Object object, java.lang.ClassLoader loader)
           
 boolean isAddable()
           
 boolean isCheckDirty()
           
 boolean isDefault(java.lang.Object value)
          Check if the specified value is the default value of the Field represented by this FieldMolder
 boolean isDependent()
           
 boolean isLazy()
           
 boolean isManyToMany()
           
 boolean isMulti()
           
 boolean isPersistanceCapable()
           
 boolean isReadonly()
           
 boolean isSerializable()
           
 boolean isStored()
           
 boolean isTransient()
           
(package private)  void setFieldClassMolder(ClassMolder fMold)
           
 void setValue(java.lang.Object object, java.lang.Object value, java.lang.ClassLoader loader)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

PRIMITIVE

public static final short PRIMITIVE
See Also:
Constant Field Values

SERIALIZABLE

public static final short SERIALIZABLE
See Also:
Constant Field Values

PERSISTANCECAPABLE

public static final short PERSISTANCECAPABLE
See Also:
Constant Field Values

ONE_TO_MANY

public static final short ONE_TO_MANY
See Also:
Constant Field Values

MANY_TO_MANY

public static final short MANY_TO_MANY
See Also:
Constant Field Values
Constructor Detail

FieldMolder

public FieldMolder(DatingService ds,
                   ClassMolder eMold,
                   FieldMapping fieldMap,
                   java.lang.String manyTable,
                   java.lang.String[] idSQL,
                   int[] idType,
                   TypeConvertor[] idTo,
                   TypeConvertor[] idFrom,
                   java.lang.String[] idParam,
                   java.lang.String[] relatedIdSQL,
                   int[] relatedIdType,
                   TypeConvertor[] ridTo,
                   TypeConvertor[] ridFrom,
                   java.lang.String[] ridParam)
            throws MappingException
Creates a single field descriptor. The field mapping is used to create a new stock FieldMolder. Implementations may extend this class to create a more suitable descriptor.

Parameters:
eMold - The ClassMolder to which the field belongs
fieldMap - The field mapping information
Throws:
MappingException - The field or its accessor methods are not found, not accessible, not of the specified type, etc

FieldMolder

public FieldMolder(DatingService ds,
                   ClassMolder eMold,
                   FieldMapping fieldMap)
            throws MappingException
Throws:
MappingException
Method Detail

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getName

public java.lang.String getName()

getFieldType

public short getFieldType()

getRelationLoader

public SQLRelationLoader getRelationLoader()

isStored

public boolean isStored()

isManyToMany

public boolean isManyToMany()

isDependent

public boolean isDependent()

isMulti

public boolean isMulti()

isPersistanceCapable

public boolean isPersistanceCapable()

isSerializable

public boolean isSerializable()

isCheckDirty

public boolean isCheckDirty()

isLazy

public boolean isLazy()

isAddable

public boolean isAddable()

isTransient

public boolean isTransient()

setFieldClassMolder

void setFieldClassMolder(ClassMolder fMold)

getEnclosingClassMolder

public ClassMolder getEnclosingClassMolder()

getFieldClassMolder

public ClassMolder getFieldClassMolder()

getFieldLockEngine

public LockEngine getFieldLockEngine()

isReadonly

public boolean isReadonly()

getCollectionType

public java.lang.Class getCollectionType()

getValue

public java.lang.Object getValue(java.lang.Object object,
                                 java.lang.ClassLoader loader)

addValue

public void addValue(java.lang.Object object,
                     java.lang.Object value,
                     java.lang.ClassLoader loader)

setValue

public void setValue(java.lang.Object object,
                     java.lang.Object value,
                     java.lang.ClassLoader loader)

isDefault

public boolean isDefault(java.lang.Object value)
Check if the specified value is the default value of the Field represented by this FieldMolder


getCollectionType

protected java.lang.Class getCollectionType(java.lang.String coll,
                                            boolean lazy)
                                     throws MappingException
Throws:
MappingException


Intalio Inc. (C) 1999-2004. All rights reserved http://www.intalio.com