Class AnnotatedColumn
- java.lang.Object
-
- org.hibernate.boot.model.internal.AnnotatedColumn
-
- Direct Known Subclasses:
AnnotatedDiscriminatorColumn
,AnnotatedJoinColumn
,IndexColumn
public class AnnotatedColumn extends Object
A mapping to a column, logically representing aColumn
annotation, but not every instance corresponds to an explicit annotation in the Java code.This class holds a representation that is intermediate between the annotation of the Java source code, and the mapping model object
Column
. It's used only by theAnnotationBinder
while parsing annotations, and does not survive into later stages of the startup process.
-
-
Constructor Summary
Constructors Constructor Description AnnotatedColumn()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addCheckConstraint(String name, String constraint)
protected void
addColumnBinding(SimpleValue value)
void
addIndex(Index index, boolean inSecondPass)
void
bind()
static AnnotatedColumns
buildColumnFromAnnotation(jakarta.persistence.Column column, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
static AnnotatedColumns
buildColumnFromNoAnnotation(Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
static AnnotatedColumns
buildColumnOrFormulaFromAnnotation(jakarta.persistence.Column column, Formula formulaAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
static AnnotatedColumns
buildColumnsFromAnnotations(jakarta.persistence.Column[] columns, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, String suffixForDefaultColumnName, Map<String,Join> secondaryTables, MetadataBuildingContext context)
static AnnotatedColumns
buildColumnsFromAnnotations(jakarta.persistence.Column[] columns, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
static AnnotatedColumns
buildColumnsOrFormulaFromAnnotation(jakarta.persistence.Column[] columns, Formula formulaAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, String suffixForDefaultColumnName, Map<String,Join> secondaryTables, MetadataBuildingContext context)
static AnnotatedColumns
buildFormulaFromAnnotation(Formula formulaAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
void
forceNotNull()
String
getDefaultValue()
String
getExplicitTableName()
String
getGeneratedAs()
Long
getLength()
String
getLogicalColumnName()
Column
getMappingColumn()
String
getName()
AnnotatedColumns
getParent()
Integer
getPrecision()
Integer
getScale()
String
getSqlType()
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
isUnique()
boolean
isUpdatable()
void
linkWithAggregateValue(SimpleValue value, Component component)
void
linkWithValue(SimpleValue value)
void
redefineColumnName(String columnName, String propertyName, boolean applyNamingStrategy)
void
setDefaultValue(String defaultValue)
void
setExplicitTableName(String explicitTableName)
void
setFormula(String formula)
void
setImplicit(boolean implicit)
void
setInsertable(boolean insertable)
void
setLength(Long length)
void
setLogicalColumnName(String logicalColumnName)
protected void
setMappingColumn(Column mappingColumn)
void
setNullable(boolean nullable)
void
setParent(AnnotatedColumns parent)
void
setPrecision(Integer precision)
void
setScale(Integer scale)
void
setSqlType(String sqlType)
void
setUnique(boolean unique)
void
setUpdatable(boolean updatable)
String
toString()
-
-
-
Field Detail
-
sqlType
public String sqlType
-
-
Method Detail
-
getParent
public AnnotatedColumns getParent()
-
setParent
public void setParent(AnnotatedColumns parent)
-
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()
-
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)
-
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)
-
setUnique
public void setUnique(boolean unique)
-
isNullable
public boolean isNullable()
-
getDefaultValue
public String getDefaultValue()
-
setDefaultValue
public void setDefaultValue(String defaultValue)
-
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)
-
setMappingColumn
protected void setMappingColumn(Column mappingColumn)
-
linkWithAggregateValue
public void linkWithAggregateValue(SimpleValue value, Component component)
-
linkWithValue
public void linkWithValue(SimpleValue value)
-
addColumnBinding
protected void addColumnBinding(SimpleValue value)
-
forceNotNull
public void forceNotNull()
-
buildFormulaFromAnnotation
public static AnnotatedColumns buildFormulaFromAnnotation(Formula formulaAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
-
buildColumnFromNoAnnotation
public static AnnotatedColumns buildColumnFromNoAnnotation(Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
-
buildColumnFromAnnotation
public static AnnotatedColumns buildColumnFromAnnotation(jakarta.persistence.Column column, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
-
buildColumnsFromAnnotations
public static AnnotatedColumns buildColumnsFromAnnotations(jakarta.persistence.Column[] columns, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
-
buildColumnsFromAnnotations
public static AnnotatedColumns buildColumnsFromAnnotations(jakarta.persistence.Column[] columns, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, String suffixForDefaultColumnName, Map<String,Join> secondaryTables, MetadataBuildingContext context)
-
buildColumnOrFormulaFromAnnotation
public static AnnotatedColumns buildColumnOrFormulaFromAnnotation(jakarta.persistence.Column column, Formula formulaAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, Map<String,Join> secondaryTables, MetadataBuildingContext context)
-
buildColumnsOrFormulaFromAnnotation
public static AnnotatedColumns buildColumnsOrFormulaFromAnnotation(jakarta.persistence.Column[] columns, Formula formulaAnn, Nullability nullability, PropertyHolder propertyHolder, PropertyData inferredData, String suffixForDefaultColumnName, Map<String,Join> secondaryTables, MetadataBuildingContext context)
-
addIndex
public void addIndex(Index index, boolean inSecondPass)
-
-