Package org.hibernate.cfg
Class AnnotatedColumn
- java.lang.Object
-
- org.hibernate.cfg.AnnotatedColumn
-
- Direct Known Subclasses:
AnnotatedDiscriminatorColumn
,AnnotatedJoinColumn
,IndexColumn
public class AnnotatedColumn 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>
joins
protected PropertyHolder
propertyHolder
String
sqlType
-
Constructor Summary
Constructors Constructor Description AnnotatedColumn()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
addColumnBinding(SimpleValue value)
void
addIndex(Index index, boolean inSecondPass)
void
bind()
static AnnotatedColumn[]
buildColumnFromAnnotation(jakarta.persistence.Column column, Comment commentAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
static AnnotatedColumn[]
buildColumnFromNoAnnotation(Comment commentAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
static AnnotatedColumn[]
buildColumnOrFormulaFromAnnotation(jakarta.persistence.Column column, Formula formulaAnn, Comment commentAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
static AnnotatedColumn[]
buildColumnsFromAnnotations(jakarta.persistence.Column[] columns, Comment commentAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, String suffixForDefaultColumnName, Map<String,Join> secondaryTables, MetadataBuildingContext context)
static AnnotatedColumn[]
buildColumnsFromAnnotations(jakarta.persistence.Column[] columns, Comment commentAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
static AnnotatedColumn[]
buildColumnsOrFormulaFromAnnotation(jakarta.persistence.Column[] columnAnns, Formula formulaAnn, Comment comment, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, String suffixForDefaultColumnName, Map<String,Join> secondaryTables, MetadataBuildingContext context)
static AnnotatedColumn[]
buildFormulaFromAnnotation(Formula formulaAnn, Comment commentAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
static void
checkPropertyConsistency(AnnotatedColumn[] columns, String propertyName)
void
forceNotNull()
protected MetadataBuildingContext
getBuildingContext()
String
getCheckConstraint()
String
getComment()
String
getDefaultValue()
String
getExplicitTableName()
String
getFormulaString()
String
getGeneratedAs()
Join
getJoin()
Long
getLength()
String
getLogicalColumnName()
Column
getMappingColumn()
String
getName()
Integer
getPrecision()
PropertyHolder
getPropertyHolder()
String
getPropertyName()
Integer
getScale()
String
getSqlType()
Table
getTable()
Find appropriate table of the column.protected void
initMappingColumn(String columnName, String propertyName, Long length, Integer precision, Integer scale, boolean nullable, String sqlType, boolean unique, boolean applyNamingStrategy)
boolean
isFormula()
boolean
isImplicit()
boolean
isInsertable()
boolean
isNameDeferred()
boolean
isNullable()
boolean
isSecondary()
boolean
isUnique()
boolean
isUpdatable()
void
linkWithValue(SimpleValue value)
void
redefineColumnName(String columnName, String propertyName, boolean applyNamingStrategy)
void
setBuildingContext(MetadataBuildingContext context)
void
setCheckConstraint(String checkConstraint)
void
setComment(String comment)
void
setDefaultValue(String defaultValue)
void
setExplicitTableName(String explicitTableName)
void
setFormula(String formula)
void
setImplicit(boolean implicit)
void
setInsertable(boolean insertable)
void
setJoins(Map<String,Join> joins)
void
setLength(Long length)
void
setLogicalColumnName(String logicalColumnName)
protected void
setMappingColumn(Column mappingColumn)
void
setNullable(boolean nullable)
void
setPrecision(Integer precision)
void
setPropertyHolder(PropertyHolder propertyHolder)
void
setPropertyName(String propertyName)
void
setScale(Integer scale)
void
setSqlType(String sqlType)
void
setTable(Table table)
void
setUnique(boolean unique)
void
setUpdatable(boolean updatable)
String
toString()
-
-
-
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()
-
getCheckConstraint
public String getCheckConstraint()
-
setDefaultValue
public void setDefaultValue(String defaultValue)
-
setCheckConstraint
public void setCheckConstraint(String checkConstraint)
-
getComment
public String getComment()
-
setComment
public void setComment(String comment)
-
getGeneratedAs
public String getGeneratedAs()
-
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()
-
buildFormulaFromAnnotation
public static AnnotatedColumn[] buildFormulaFromAnnotation(Formula formulaAnn, Comment commentAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
-
buildColumnFromNoAnnotation
public static AnnotatedColumn[] buildColumnFromNoAnnotation(Comment commentAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
-
buildColumnFromAnnotation
public static AnnotatedColumn[] buildColumnFromAnnotation(jakarta.persistence.Column column, Comment commentAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
-
buildColumnsFromAnnotations
public static AnnotatedColumn[] buildColumnsFromAnnotations(jakarta.persistence.Column[] columns, Comment commentAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
-
buildColumnsFromAnnotations
public static AnnotatedColumn[] buildColumnsFromAnnotations(jakarta.persistence.Column[] columns, Comment commentAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, String suffixForDefaultColumnName, Map<String,Join> secondaryTables, MetadataBuildingContext context)
-
buildColumnOrFormulaFromAnnotation
public static AnnotatedColumn[] buildColumnOrFormulaFromAnnotation(jakarta.persistence.Column column, Formula formulaAnn, Comment commentAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
-
buildColumnsOrFormulaFromAnnotation
public static AnnotatedColumn[] buildColumnsOrFormulaFromAnnotation(jakarta.persistence.Column[] columnAnns, Formula formulaAnn, Comment comment, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, String suffixForDefaultColumnName, Map<String,Join> secondaryTables, MetadataBuildingContext context)
-
checkPropertyConsistency
public static void checkPropertyConsistency(AnnotatedColumn[] columns, String propertyName)
-
addIndex
public void addIndex(Index index, boolean inSecondPass)
-
-