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
 TypeConvertor getConvertor()
          TODO improve Returns the convertor from the field type to an external type.
 java.lang.String getId()
          
 java.lang.String[] getManyKey()
          Returns the SQL many key of the field.
 java.lang.String getManyTable()
          Returns the SQL many table of the field.
 java.lang.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.
 void setDirtyCheck(boolean dirtyCheck)
          Sets whether dirty checking is required for this field.
 void setManyKey(java.lang.String[] manyKey)
          Sets the SQL many key of the field.
 void setManyTable(java.lang.String manyTable)
          Sets the SQL many table of the field.
 void setReadOnly(boolean readOnly)
          Sets whether field access if read-only.
 void setSQLName(java.lang.String[] sqlName)
          Sets the SQL (column) name of the field.
 void setSQLType(int[] sqlType)
          Sets the SQL type of this field.
 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 java.lang.String getId()

See Also:
Nature.getId()

getSQLName

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

Returns:
The SQL (column) name.

setSQLName

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

Parameters:
sqlName - The SQL (column) name.

getManyKey

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

Returns:
The SQL many key.

setManyKey

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

Parameters:
manyKey - The SQL (many key.

getManyTable

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

Returns:
The SQL many table.

setManyTable

public void setManyTable(java.lang.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()
TODO improve 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.


Copyright © 2011. All Rights Reserved.