org.castor.jdo.jpa.natures
Class JPAFieldNature

java.lang.Object
  extended by org.castor.core.nature.BaseNature
      extended by org.castor.jdo.jpa.natures.JPAFieldNature
All Implemented Interfaces:
Nature

public class JPAFieldNature
extends BaseNature

A BaseNature extension, that gives access to information derived from field bound JPA annotations.

Since:
1.3
Author:
Peter Schmidt, Martin Kandler
See Also:
PropertyHolder

Constructor Summary
JPAFieldNature(PropertyHolder holder)
          Instantiate a JPAFieldNature to access the given PropertyHolder.
 
Method Summary
 javax.persistence.FetchType getBasicFetch()
           
 java.lang.String getColumnDefinition()
          Returns the 'columnDefinition' value of the @Column annotation.
 java.lang.Boolean getColumnInsertable()
           
 java.lang.Integer getColumnLength()
           
 java.lang.String getColumnName()
          Returns the name of the @Column annotation.
 java.lang.Boolean getColumnNullable()
           
 java.lang.Integer getColumnPrecision()
           
 java.lang.Integer getColumnScale()
           
 java.lang.String getColumnTable()
           
 java.lang.Boolean getColumnUnique()
           
 java.lang.Boolean getColumnUpdatable()
           
 FieldInfo getFieldInfo()
          Get the underlying FieldInfo (the PropertyHolder).
 java.lang.String getId()
          
 java.lang.String getJoinColumnColumnDefinition()
           
 java.lang.Boolean getJoinColumnInsertable()
           
 java.lang.String getJoinColumnName()
           
 java.lang.Boolean getJoinColumnNullable()
           
 java.lang.String getJoinColumnReferencedColumnName()
           
 java.lang.String getJoinColumnTable()
           
 java.lang.Boolean getJoinColumnUnique()
           
 java.lang.Boolean getJoinColumnUpdatable()
           
 java.lang.String getJoinTableCatalog()
           
 javax.persistence.JoinColumn[] getJoinTableInverseJoinColumns()
           
 javax.persistence.JoinColumn[] getJoinTableJoinColumns()
           
 java.lang.String getJoinTableName()
           
 java.lang.String getJoinTableSchema()
           
 java.lang.Class<?> getRelationCollectionType()
           
 java.lang.String getRelationMappedBy()
           
 java.lang.Class<?> getRelationTargetEntity()
           
 boolean isBasicOptional()
           
 boolean isId()
           
 boolean isManyToMany()
           
 boolean isManyToManyInverseCopy()
           
 boolean isManyToOne()
           
 boolean isOneToMany()
           
 boolean isOneToOne()
           
 boolean isRelationLazyFetch()
           
 boolean isRelationOptional()
           
 boolean isTransient()
           
 void setBasicFetch(javax.persistence.FetchType fetch)
           
 void setBasicOptional(boolean optional)
           
 void setColumnDefinition(java.lang.String columnDefinition)
          Sets the 'columnDefinition' value of the @Column annotation.
 void setColumnInsertable(boolean insertable)
           
 void setColumnLength(int length)
           
 void setColumnName(java.lang.String name)
          Set the name value of the @Column annotation.
 void setColumnNullable(boolean nullable)
           
 void setColumnPrecision(int precision)
           
 void setColumnScale(int scale)
           
 void setColumnTable(java.lang.String table)
           
 void setColumnUnique(boolean unique)
           
 void setColumnUpdatable(boolean updatable)
           
 void setId(boolean isId)
           
 void setJoinColumnColumnDefinition(java.lang.String columnDefinition)
           
 void setJoinColumnInsertable(boolean insertable)
           
 void setJoinColumnName(java.lang.String name)
           
 void setJoinColumnNullable(boolean nullable)
           
 void setJoinColumnReferencedColumnName(java.lang.String referencedColumnName)
           
 void setJoinColumnTable(java.lang.String table)
           
 void setJoinColumnUnique(boolean unique)
           
 void setJoinColumnUpdatable(boolean updatable)
           
 void setJoinTableCatalog(java.lang.String catalog)
           
 void setJoinTableInverseJoinColumns(javax.persistence.JoinColumn[] inverseJoinColumns)
           
 void setJoinTableJoinColumns(javax.persistence.JoinColumn[] joinColumns)
           
 void setJoinTableName(java.lang.String tablename)
           
 void setJoinTableSchema(java.lang.String schema)
           
 void setManyToMany(boolean hasManyToMany)
           
 void setManyToManyInverseCopy(boolean copySettingsInverse)
           
 void setManyToOne(boolean hasManyToOne)
           
 void setOneToMany(boolean hasOneToMany)
           
 void setOneToOne(boolean hasOneToOne)
           
 void setRelationCollectionType(java.lang.Class<?> collectionType)
           
 void setRelationLazyFetch(boolean lazyFetch)
           
 void setRelationMappedBy(java.lang.String mappedBy)
           
 void setRelationOptional(boolean optional)
           
 void setRelationTargetEntity(java.lang.Class<?> targetEntity)
           
 void setTransient(boolean isTransient)
           
 
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

JPAFieldNature

public JPAFieldNature(PropertyHolder holder)
Instantiate a JPAFieldNature to access the given PropertyHolder.

Parameters:
holder - The underlying PropertyHolder (obviously a FieldInfo).
See Also:
PropertyHolder
Method Detail

getId

public final java.lang.String getId()

See Also:
Nature.getId()

getFieldInfo

public FieldInfo getFieldInfo()
Get the underlying FieldInfo (the PropertyHolder).

Returns:
the underlying FieldInfo. If the PropertyHolder was not of type FieldInfo, null is returned.

setBasicFetch

public final void setBasicFetch(javax.persistence.FetchType fetch)
Parameters:
fetch - The value of Basic.fetch()
See Also:
BASIC_FETCH

getBasicFetch

public final javax.persistence.FetchType getBasicFetch()
Returns:
The value of Basic.fetch()
See Also:
BASIC_FETCH

setBasicOptional

public final void setBasicOptional(boolean optional)
Parameters:
optional - The value of Basic.optional()
See Also:
BASIC_OPTIONAL

isBasicOptional

public final boolean isBasicOptional()
Returns:
True if Basic.optional() was set to true on the field.
See Also:
BASIC_OPTIONAL

setColumnName

public final void setColumnName(java.lang.String name)
Set the name value of the @Column annotation.

Parameters:
name - The value of Column.name()
See Also:
COLUMN_NAME

getColumnName

public final java.lang.String getColumnName()
Returns the name of the @Column annotation.

Returns:
The value of Column.name()
See Also:
COLUMN_NAME

setColumnDefinition

public final void setColumnDefinition(java.lang.String columnDefinition)
Sets the 'columnDefinition' value of the @Column annotation.

Parameters:
columnDefinition - The value of Column.columnDefinition()
See Also:
COLUMN_DEFINITION

getColumnDefinition

public final java.lang.String getColumnDefinition()
Returns the 'columnDefinition' value of the @Column annotation.

Returns:
The value of Column.columnDefinition()
See Also:
COLUMN_DEFINITION

setColumnLength

public final void setColumnLength(int length)
Parameters:
length - The value of Column.length()
See Also:
COLUMN_LENGTH

getColumnLength

public final java.lang.Integer getColumnLength()
Returns:
The value of Column.length()
See Also:
COLUMN_LENGTH

setColumnInsertable

public final void setColumnInsertable(boolean insertable)
Parameters:
insertable - The value of Column.insertable()
See Also:
COLUMN_INSERTABLE

getColumnInsertable

public final java.lang.Boolean getColumnInsertable()
Returns:
The value of Column.insertable()
See Also:
COLUMN_INSERTABLE

setColumnNullable

public final void setColumnNullable(boolean nullable)
Parameters:
nullable - The value of Column.nullable()
See Also:
COLUMN_NULLABLE

getColumnNullable

public final java.lang.Boolean getColumnNullable()
Returns:
The value of Column.nullable()
See Also:
COLUMN_NULLABLE

setColumnPrecision

public final void setColumnPrecision(int precision)
Parameters:
precision - The value of Column.precision()
See Also:
COLUMN_PRECISION

getColumnPrecision

public final java.lang.Integer getColumnPrecision()
Returns:
The value of Column.precision()
See Also:
COLUMN_PRECISION

setColumnScale

public final void setColumnScale(int scale)
Parameters:
scale - The value of Column.scale()
See Also:
COLUMN_SCALE

getColumnScale

public final java.lang.Integer getColumnScale()
Returns:
The value of Column.scale()
See Also:
COLUMN_SCALE

setColumnTable

public final void setColumnTable(java.lang.String table)
Parameters:
table - The value of Column.table()
See Also:
COLUMN_TABLE

getColumnTable

public final java.lang.String getColumnTable()
Returns:
The value of Column.table()
See Also:
COLUMN_TABLE

setColumnUnique

public final void setColumnUnique(boolean unique)
Parameters:
unique - The value of Column.unique()
See Also:
COLUMN_UNIQUE

getColumnUnique

public final java.lang.Boolean getColumnUnique()
Returns:
The value of Column.unique()
See Also:
COLUMN_UNIQUE

setColumnUpdatable

public final void setColumnUpdatable(boolean updatable)
Parameters:
updatable - The value of Column.updatable()
See Also:
COLUMN_UPDATABLE

getColumnUpdatable

public final java.lang.Boolean getColumnUpdatable()
Returns:
The value of Column.updatable()
See Also:
COLUMN_UPDATABLE

setId

public final void setId(boolean isId)
Parameters:
isId - If Id was found on that property.
See Also:
ID

isId

public final boolean isId()
Returns:
true if Id was set on the property, else false.
See Also:
ID

setTransient

public final void setTransient(boolean isTransient)
Parameters:
isTransient - if Transient was found on that property.
See Also:
TRANSIENT

isTransient

public final boolean isTransient()
Returns:
true if Transient was set on the property, else false
See Also:
TRANSIENT

setJoinTableName

public void setJoinTableName(java.lang.String tablename)
Parameters:
tablename - The value of JoinTable.name()
See Also:
JOINTABLE_NAME

getJoinTableName

public java.lang.String getJoinTableName()
Returns:
The value of JoinTable.name()
See Also:
JOINTABLE_NAME

setJoinTableCatalog

public void setJoinTableCatalog(java.lang.String catalog)
Parameters:
catalog - The value of JoinTable.catalog()
See Also:
JOINTABLE_CATALOG

getJoinTableCatalog

public java.lang.String getJoinTableCatalog()
Returns:
The value of JoinTable.catalog()
See Also:
JOINTABLE_CATALOG

setJoinTableSchema

public void setJoinTableSchema(java.lang.String schema)
Parameters:
schema - The value of JoinTable.schema()
See Also:
JOINTABLE_SCHEMA

getJoinTableSchema

public java.lang.String getJoinTableSchema()
Returns:
The value ofJoinTable.schema()
See Also:
#TABLE_SCHEMA

setJoinTableJoinColumns

public void setJoinTableJoinColumns(javax.persistence.JoinColumn[] joinColumns)
Parameters:
joinColumns - The value of JoinTable.joinColumns()
See Also:
JOINTABLE_JOINCOLUMNS

getJoinTableJoinColumns

public javax.persistence.JoinColumn[] getJoinTableJoinColumns()
Returns:
The value ofJoinTable.joinColumns()
See Also:
JOINTABLE_JOINCOLUMNS

setJoinTableInverseJoinColumns

public void setJoinTableInverseJoinColumns(javax.persistence.JoinColumn[] inverseJoinColumns)
Parameters:
inverseJoinColumns - The value of JoinTable.inverseJoinColumns()
See Also:
JOINTABLE_INVERSE_JOINCOLUMNS

getJoinTableInverseJoinColumns

public javax.persistence.JoinColumn[] getJoinTableInverseJoinColumns()
Returns:
The value of JoinTable.inverseJoinColumns()
See Also:
JOINTABLE_INVERSE_JOINCOLUMNS

setJoinColumnName

public final void setJoinColumnName(java.lang.String name)
Parameters:
name - The value of JoinColumn.name().
See Also:
JOINCOLUMN_NAME

getJoinColumnName

public final java.lang.String getJoinColumnName()
Returns:
The value of JoinColumn.name().
See Also:
JOINCOLUMN_NAME

setJoinColumnReferencedColumnName

public final void setJoinColumnReferencedColumnName(java.lang.String referencedColumnName)
Parameters:
referencedColumnName - The value of JoinColumn.referencedColumnName().
See Also:
JOINCOLUMN_REFERENCEDCOLUMNNAME

getJoinColumnReferencedColumnName

public final java.lang.String getJoinColumnReferencedColumnName()
Returns:
The value of JoinColumn.referencedColumnName().
See Also:
JOINCOLUMN_REFERENCEDCOLUMNNAME

setJoinColumnUnique

public final void setJoinColumnUnique(boolean unique)
Parameters:
unique - The value of JoinColumn.unique().
See Also:
JOINCOLUMN_UNIQUE

getJoinColumnUnique

public final java.lang.Boolean getJoinColumnUnique()
Returns:
The value of JoinColumn.unique().
See Also:
JOINCOLUMN_UNIQUE

setJoinColumnNullable

public final void setJoinColumnNullable(boolean nullable)
Parameters:
nullable - The value of JoinColumn.nullable().
See Also:
JOINCOLUMN_NULLABLE

getJoinColumnNullable

public final java.lang.Boolean getJoinColumnNullable()
Returns:
The value of JoinColumn.nullable().
See Also:
JOINCOLUMN_NULLABLE

setJoinColumnInsertable

public final void setJoinColumnInsertable(boolean insertable)
Parameters:
insertable - The value of JoinColumn.insertable() .
See Also:
JOINCOLUMN_INSERTABLE

getJoinColumnInsertable

public final java.lang.Boolean getJoinColumnInsertable()
Returns:
The value of JoinColumn.insertable().
See Also:
JOINCOLUMN_INSERTABLE

setJoinColumnUpdatable

public final void setJoinColumnUpdatable(boolean updatable)
Parameters:
updatable - The value of JoinColumn.updatable().
See Also:
JOINCOLUMN_UPDATABLE

getJoinColumnUpdatable

public final java.lang.Boolean getJoinColumnUpdatable()
Returns:
The value of JoinColumn.updatable().
See Also:
JOINCOLUMN_UPDATABLE

setJoinColumnColumnDefinition

public final void setJoinColumnColumnDefinition(java.lang.String columnDefinition)
Parameters:
columnDefinition - The value of JoinColumn.columnDefinition().
See Also:
JOINCOLUMN_COLUMNDEFINITION

getJoinColumnColumnDefinition

public final java.lang.String getJoinColumnColumnDefinition()
Returns:
The value of JoinColumn.columnDefinition().
See Also:
JOINCOLUMN_COLUMNDEFINITION

setJoinColumnTable

public final void setJoinColumnTable(java.lang.String table)
Parameters:
table - The value of JoinColumn.table().
See Also:
JOINCOLUMN_TABLE

getJoinColumnTable

public final java.lang.String getJoinColumnTable()
Returns:
The value of JoinColumn.table().
See Also:
JOINCOLUMN_TABLE

setOneToOne

public void setOneToOne(boolean hasOneToOne)
Parameters:
hasOneToOne - if OneToOne was found on that property.
See Also:
ONETOONE

isOneToOne

public boolean isOneToOne()
Returns:
if OneToOne was set on the property, else false.
See Also:
ONETOONE

setManyToOne

public void setManyToOne(boolean hasManyToOne)
Parameters:
hasManyToOne - if ManyToOne was found on that property.
See Also:
MANYTOONE

isManyToOne

public boolean isManyToOne()
Returns:
if ManyToOne was set on the property, else false.
See Also:
MANYTOONE

setOneToMany

public void setOneToMany(boolean hasOneToMany)
Parameters:
hasOneToMany - if OneToMany was found on that property.
See Also:
ONETOMANY

isOneToMany

public boolean isOneToMany()
Returns:
if OneToMany was set on the property, else false.
See Also:
ONETOMANY

setManyToMany

public void setManyToMany(boolean hasManyToMany)
Parameters:
hasManyToMany - if ManyToMany was found on that property.
See Also:
MANYTOMANY

isManyToMany

public boolean isManyToMany()
Returns:
if ManyToOne was set on the property, else false.
See Also:
MANYTOMANY

setManyToManyInverseCopy

public void setManyToManyInverseCopy(boolean copySettingsInverse)
Parameters:
copySettingsInverse - set this to true if a ManyToMany related field shall copy all JoinTable relevant information from the other side of the relation (inverting the JoinColumn settings).
See Also:
MANYTOMANY_INVERSECOPY

isManyToManyInverseCopy

public boolean isManyToManyInverseCopy()
Returns:
if this is true a ManyToMany related field shall copy all JoinTable relevant information from the other side of the relation (inverting the JoinColumn settings).
See Also:
MANYTOMANY_INVERSECOPY

setRelationTargetEntity

public void setRelationTargetEntity(java.lang.Class<?> targetEntity)
Parameters:
targetEntity - The value of OneToOne.targetEntity() , OneToMany.targetEntity(), ManyToOne.targetEntity(), ManyToMany.targetEntity(), depending to the relation type.
See Also:
RELATION_TARGETENTITY

getRelationTargetEntity

public java.lang.Class<?> getRelationTargetEntity()
Returns:
The value of OneToOne.targetEntity(), OneToMany.targetEntity(), ManyToOne.targetEntity(), ManyToMany.targetEntity(), depending on the relation type. Returns null iff no relational annotation was set on the field.
See Also:
RELATION_TARGETENTITY

setRelationLazyFetch

public void setRelationLazyFetch(boolean lazyFetch)
Parameters:
lazyFetch - true if OneToOne.fetch() , OneToMany.fetch(), ManyToOne.fetch(), ManyToMany.fetch() is set to FetchType.LAZY, depending on the relation type.
See Also:
RELATION_LAZYFETCH

isRelationLazyFetch

public boolean isRelationLazyFetch()
Returns:
true if OneToOne.fetch() , OneToMany.fetch(), ManyToOne.fetch(), ManyToMany.fetch() is set to FetchType.LAZY, depending on the relation type.
See Also:
RELATION_LAZYFETCH

setRelationMappedBy

public void setRelationMappedBy(java.lang.String mappedBy)
Parameters:
mappedBy - The content of OneToMany.mappedBy(), ManyToMany.mappedBy(), depending on the relation type.
See Also:
RELATION_MAPPEDBY

getRelationMappedBy

public java.lang.String getRelationMappedBy()
Returns:
The content of OneToMany.mappedBy(), ManyToMany.mappedBy(), depending on the relation type. If no (or an empty) String was set, null is returned!
See Also:
RELATION_MAPPEDBY

getRelationCollectionType

public java.lang.Class<?> getRelationCollectionType()
Returns:
The type of Collection being used by OneToMany, ManyToMany, depending on the relation type. Returns null iff none of the above relational annotations was set on the field.
See Also:
RELATION_COLLECTIONTYPE

setRelationCollectionType

public void setRelationCollectionType(java.lang.Class<?> collectionType)
Parameters:
collectionType - Set the type of Collection being used by OneToMany, ManyToMany, depending on the relation type.
See Also:
RELATION_COLLECTIONTYPE

setRelationOptional

public void setRelationOptional(boolean optional)
Parameters:
optional - Set the value of OneToOne.optional() , ManyToOne.optional(), depending on the relation type.
See Also:
RELATION_OPTIONAL

isRelationOptional

public boolean isRelationOptional()
Returns:
true if OneToOne.optional(), ManyToOne.optional() was set to true, depending on the relation type.
See Also:
RELATION_OPTIONAL


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