Package org.hibernate.cfg
Class Ejb3Column
- java.lang.Object
-
- org.hibernate.cfg.Ejb3Column
-
- Direct Known Subclasses:
Ejb3DiscriminatorColumn,Ejb3JoinColumn,IndexColumn
public class Ejb3Column extends Object
Wrap state of an EJB3 @Column annotation and build the Hibernate column mapping element
-
-
Field Summary
Fields Modifier and Type Field Description protected Map<String,Join>joinsprotected PropertyHolderpropertyHolderStringsqlType
-
Constructor Summary
Constructors Constructor Description Ejb3Column()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidaddColumnBinding(SimpleValue value)voidaddIndex(Index index, boolean inSecondPass)voidbind()static Ejb3Column[]buildColumnFromAnnotation(Column[] anns, Formula formulaAnn, Comment commentAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, String suffixForDefaultColumnName, Map<String,Join> secondaryTables, MetadataBuildingContext context)static Ejb3Column[]buildColumnFromAnnotation(Column[] anns, Formula formulaAnn, Comment commentAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)static voidcheckPropertyConsistency(Ejb3Column[] columns, String propertyName)voidforceNotNull()protected MetadataBuildingContextgetBuildingContext()StringgetComment()StringgetDefaultValue()StringgetExplicitTableName()StringgetFormulaString()JoingetJoin()LonggetLength()StringgetLogicalColumnName()ColumngetMappingColumn()StringgetName()IntegergetPrecision()PropertyHoldergetPropertyHolder()StringgetPropertyName()IntegergetScale()StringgetSqlType()TablegetTable()Find appropriate table of the column.protected voidinitMappingColumn(String columnName, String propertyName, Long length, Integer precision, Integer scale, boolean nullable, String sqlType, boolean unique, boolean applyNamingStrategy)booleanisFormula()booleanisImplicit()booleanisInsertable()booleanisNameDeferred()booleanisNullable()booleanisSecondary()booleanisUnique()booleanisUpdatable()voidlinkWithValue(SimpleValue value)voidredefineColumnName(String columnName, String propertyName, boolean applyNamingStrategy)voidsetBuildingContext(MetadataBuildingContext context)voidsetComment(String comment)voidsetDefaultValue(String defaultValue)voidsetExplicitTableName(String explicitTableName)voidsetFormula(String formula)voidsetImplicit(boolean implicit)voidsetInsertable(boolean insertable)voidsetJoins(Map<String,Join> joins)voidsetLength(Long length)voidsetLogicalColumnName(String logicalColumnName)protected voidsetMappingColumn(Column mappingColumn)voidsetNullable(boolean nullable)voidsetPrecision(Integer precision)voidsetPropertyHolder(PropertyHolder propertyHolder)voidsetPropertyName(String propertyName)voidsetScale(Integer scale)voidsetSqlType(String sqlType)voidsetTable(Table table)voidsetUnique(boolean unique)voidsetUpdatable(boolean updatable)StringtoString()
-
-
-
Field Detail
-
propertyHolder
protected PropertyHolder propertyHolder
-
sqlType
public String sqlType
-
-
Method Detail
-
setTable
public void setTable(Table table)
-
getLogicalColumnName
public String getLogicalColumnName()
-
getSqlType
public String getSqlType()
-
getLength
public Long getLength()
-
getPrecision
public Integer getPrecision()
-
getScale
public Integer getScale()
-
isUnique
public boolean isUnique()
-
isFormula
public boolean isFormula()
-
getFormulaString
public String getFormulaString()
-
getExplicitTableName
public String getExplicitTableName()
-
setExplicitTableName
public void setExplicitTableName(String explicitTableName)
-
setFormula
public void setFormula(String formula)
-
isImplicit
public boolean isImplicit()
-
setInsertable
public void setInsertable(boolean insertable)
-
setUpdatable
public void setUpdatable(boolean updatable)
-
getBuildingContext
protected MetadataBuildingContext getBuildingContext()
-
setBuildingContext
public void setBuildingContext(MetadataBuildingContext context)
-
setImplicit
public void setImplicit(boolean implicit)
-
setSqlType
public void setSqlType(String sqlType)
-
setLength
public void setLength(Long length)
-
setPrecision
public void setPrecision(Integer precision)
-
setScale
public void setScale(Integer scale)
-
setLogicalColumnName
public void setLogicalColumnName(String logicalColumnName)
-
setPropertyName
public void setPropertyName(String propertyName)
-
getPropertyName
public String getPropertyName()
-
setUnique
public void setUnique(boolean unique)
-
isNullable
public boolean isNullable()
-
getDefaultValue
public String getDefaultValue()
-
setDefaultValue
public void setDefaultValue(String defaultValue)
-
getComment
public String getComment()
-
setComment
public void setComment(String comment)
-
bind
public void bind()
-
initMappingColumn
protected void initMappingColumn(String columnName, String propertyName, Long length, Integer precision, Integer scale, boolean nullable, String sqlType, boolean unique, boolean applyNamingStrategy)
-
isNameDeferred
public boolean isNameDeferred()
-
redefineColumnName
public void redefineColumnName(String columnName, String propertyName, boolean applyNamingStrategy)
-
getName
public String getName()
-
getMappingColumn
public Column getMappingColumn()
-
isInsertable
public boolean isInsertable()
-
isUpdatable
public boolean isUpdatable()
-
setNullable
public void setNullable(boolean nullable)
-
getPropertyHolder
public PropertyHolder getPropertyHolder()
-
setPropertyHolder
public void setPropertyHolder(PropertyHolder propertyHolder)
-
setMappingColumn
protected void setMappingColumn(Column mappingColumn)
-
linkWithValue
public void linkWithValue(SimpleValue value)
-
addColumnBinding
protected void addColumnBinding(SimpleValue value)
-
getTable
public Table getTable()
Find appropriate table of the column. It can come from a secondary table or from the main table of the persistent class- Returns:
- appropriate table
- Throws:
AnnotationException- missing secondary table
-
isSecondary
public boolean isSecondary()
-
getJoin
public Join getJoin()
-
forceNotNull
public void forceNotNull()
-
buildColumnFromAnnotation
public static Ejb3Column[] buildColumnFromAnnotation(Column[] anns, Formula formulaAnn, Comment commentAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
-
buildColumnFromAnnotation
public static Ejb3Column[] buildColumnFromAnnotation(Column[] anns, Formula formulaAnn, Comment commentAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, String suffixForDefaultColumnName, Map<String,Join> secondaryTables, MetadataBuildingContext context)
-
checkPropertyConsistency
public static void checkPropertyConsistency(Ejb3Column[] columns, String propertyName)
-
addIndex
public void addIndex(Index index, boolean inSecondPass)
-
-