org.exolab.castor.jdo.engine.nature
Class FieldDescriptorJDONature

java.lang.Object
  extended by org.castor.core.nature.BaseNature
      extended by org.exolab.castor.jdo.engine.nature.FieldDescriptorJDONature

public class FieldDescriptorJDONature
extends BaseNature

JDO-specific nature for FieldDescriptor.

Augments FieldDescriptor to include persistence-specific data such as e.g. the column names, types and other SQL-related information.

To access persistence-specific data of a FieldDescriptor, use the following code fragment to ...

  1. check for this nature
  2. apply this nature to the FieldDescriptor in question.
  3. access e.g. the column name.
Sample - Looking up column name
    FieldDescriptor fieldDescriptor = ...;                                               
    ...
    if (fieldDescriptor.hasNature(FieldDescriptorJDONature.class.getName()) {              1)
       FieldDescriptorJDONature nature = new FieldDescriptorJDONature(fieldDescriptor);    2)
       ...
       String columnName = nature.getColumnName;                                           3)
    }
 

Since:
1.2.1
Author:
Werner Guttmann

Constructor Summary
FieldDescriptorJDONature(PropertyHolder holder)
          Creates an instance of FieldDescriptorJDONature.
 
Method Summary
 String getCascading()
          Returns the cascading types for the given field.
 TypeConvertor getConvertor()
          Returns the convertor from the field type to an external type.
 String getId()
          
 String[] getManyKey()
          Returns the SQL many key of the field.
 String getManyTable()
          Returns the SQL many table of the field.
 String[] getSQLName()
          Returns the SQL (column) name of the field.
 int[] getSQLType()
          Returns the SQL type of this field.
 boolean isDirtyCheck()
          Returns true if dirty checking is required for this field.
 boolean isReadonly()
          Returns true if field access is read only.
 boolean isTransient()
          Returns true if transient is set for this field.
 void setCascading(String cascading)
          Sets the cascading values for the given field.
 void setDirtyCheck(boolean dirtyCheck)
          Sets whether dirty checking is required for this field.
 void setManyKey(String[] manyKey)
          Sets the SQL many key of the field.
 void setManyTable(String manyTable)
          Sets the SQL many table of the field.
 void setReadOnly(boolean readOnly)
          Sets whether field access if read-only.
 void setSQLName(String[] sqlName)
          Sets the SQL (column) name of the field.
 void setSQLType(int[] sqlType)
          Sets the SQL type of this field.
 void setTransient(boolean isTransient)
          Sets whether this field should be transient.
 void setTypeConvertor(TypeConvertor typeConvertor)
          Sets the TypeConvertor used for converting from field types to external types.
 
Methods inherited from class org.castor.core.nature.BaseNature
getBooleanPropertyDefaultFalse, getHolder, getProperty, getPropertyAsList, getPropertyAsMap, setProperty
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FieldDescriptorJDONature

public FieldDescriptorJDONature(PropertyHolder holder)
Creates an instance of FieldDescriptorJDONature.

Parameters:
holder - The PropertyHolder to 'view upon'.
Method Detail

getId

public String getId()

See Also:
Nature.getId()

getSQLName

public String[] getSQLName()
Returns the SQL (column) name of the field.

Returns:
The SQL (column) name.

setSQLName

public void setSQLName(String[] sqlName)
Sets the SQL (column) name of the field.

Parameters:
sqlName - The SQL (column) name.

getManyKey

public String[] getManyKey()
Returns the SQL many key of the field.

Returns:
The SQL many key.

setManyKey

public void setManyKey(String[] manyKey)
Sets the SQL many key of the field.

Parameters:
manyKey - The SQL (many key.

getManyTable

public String getManyTable()
Returns the SQL many table of the field.

Returns:
The SQL many table.

setManyTable

public void setManyTable(String manyTable)
Sets the SQL many table of the field.

Parameters:
manyTable - The SQL many table.

isReadonly

public boolean isReadonly()
Returns true if field access is read only.

Returns:
True if field access is read-only.

setReadOnly

public void setReadOnly(boolean readOnly)
Sets whether field access if read-only.

Parameters:
readOnly - True if field access is read-only.

isDirtyCheck

public boolean isDirtyCheck()
Returns true if dirty checking is required for this field.

Returns:
True if dirty checking required

setDirtyCheck

public void setDirtyCheck(boolean dirtyCheck)
Sets whether dirty checking is required for this field.

Parameters:
dirtyCheck - True if dirty checking is required for this field.

getConvertor

public TypeConvertor getConvertor()
Returns the convertor from the field type to an external type.

Returns:
Convertor from field type

setTypeConvertor

public void setTypeConvertor(TypeConvertor typeConvertor)
Sets the TypeConvertor used for converting from field types to external types.

Parameters:
typeConvertor - TypeConvertor to be used.

getSQLType

public int[] getSQLType()
Returns the SQL type of this field.

Returns:
The SQL type of this field

setSQLType

public void setSQLType(int[] sqlType)
Sets the SQL type of this field.

Parameters:
sqlType - The SQL type of this field.

isTransient

public boolean isTransient()
Returns true if transient is set for this field.

Returns:
True if this field should be transient.

setTransient

public void setTransient(boolean isTransient)
Sets whether this field should be transient.

Parameters:
lazy - True if this field should be transient.

getCascading

public String getCascading()
Returns the cascading types for the given field.

Returns:
The cascading values.

setCascading

public void setCascading(String cascading)
Sets the cascading values for the given field.

Parameters:
cascading - The cascading values to be set.


Copyright © 2011. All Rights Reserved.