org.hibernate.cfg
Class Ejb3JoinColumn
java.lang.Object
org.hibernate.cfg.Ejb3Column
org.hibernate.cfg.Ejb3JoinColumn
public class Ejb3JoinColumn
- extends Ejb3Column
Wrap state of an EJB3 @JoinColumn annotation
and build the Hibernate column mapping element
- Author:
- Emmanuel Bernard
Constructor Summary |
Ejb3JoinColumn()
|
Ejb3JoinColumn(String sqlType,
String name,
boolean nullable,
boolean unique,
boolean insertable,
boolean updatable,
String referencedColumn,
String secondaryTable,
Map<String,org.hibernate.mapping.Join> joins,
PropertyHolder propertyHolder,
String propertyName,
String mappedBy,
boolean isImplicit,
ExtendedMappings mappings)
|
Method Summary |
protected void |
addColumnBinding(org.hibernate.mapping.SimpleValue value)
|
static Ejb3JoinColumn |
buildImplicitJoinColumn(String mappedBy,
Map<String,org.hibernate.mapping.Join> joins,
PropertyHolder propertyHolder,
String propertyName,
ExtendedMappings mappings)
|
static Ejb3JoinColumn |
buildJoinColumn(javax.persistence.JoinColumn ann,
Map<String,org.hibernate.mapping.Join> joins,
PropertyHolder propertyHolder,
String propertyName,
ExtendedMappings mappings)
|
static Ejb3JoinColumn |
buildJoinColumn(javax.persistence.JoinColumn ann,
org.hibernate.mapping.Value identifier,
Map<String,org.hibernate.mapping.Join> joins,
PropertyHolder propertyHolder,
ExtendedMappings mappings)
Build an Ejb3JoinColumn from a potential annotation and
the identifier it refers to |
static Ejb3JoinColumn |
buildJoinColumn(javax.persistence.PrimaryKeyJoinColumn ann,
org.hibernate.mapping.Value identifier,
Map<String,org.hibernate.mapping.Join> joins,
PropertyHolder propertyHolder,
ExtendedMappings mappings)
|
static void |
checkIfJoinColumn(Object columns,
PropertyHolder holder,
PropertyInferredData property)
|
static int |
checkReferencedColumnsType(Ejb3JoinColumn[] columns,
org.hibernate.mapping.PersistentClass referencedEntity,
ExtendedMappings mappings)
|
String |
getManyToManyOwnerSideEntityName()
|
String |
getMappedBy()
|
String |
getReferencedColumn()
|
void |
linkValueUsingAColumnCopy(org.hibernate.mapping.Column column,
org.hibernate.mapping.SimpleValue value)
used for mappedBy cases |
void |
linkValueUsingDefaultColumnNaming(org.hibernate.mapping.Column referencedColumn,
org.hibernate.mapping.Table referencedTable,
org.hibernate.mapping.SimpleValue value)
|
void |
overrideSqlTypeIfNecessary(org.hibernate.mapping.Column column)
|
void |
redefineColumnName(String columnName,
String propertyName,
boolean applyNamingStrategy)
|
void |
setDefaultColumnName()
|
void |
setJoinAnnotation(javax.persistence.JoinColumn annJoin,
String defaultName)
|
void |
setManyToManyOwnerSideEntityName(String manyToManyOwnerSideEntityName)
|
void |
setMappedBy(String mappedBy)
|
void |
setMappedByPropertyName(String mappedByPropertyName)
|
void |
setMappedByTableName(String mappedByTableName)
|
void |
setPersistentClass(org.hibernate.mapping.PersistentClass persistentClass,
Map<String,org.hibernate.mapping.Join> joins)
Override persistent class on oneToMany Cases for late settings |
void |
setReferencedColumn(String referencedColumn)
|
Methods inherited from class org.hibernate.cfg.Ejb3Column |
addIndex, bind, buildColumnFromAnnotation, checkPropertyConsistency, forceNotNull, getFormulaString, getJoin, getLength, getLogicalColumnName, getMappingColumn, getMappings, getName, getPrecision, getPropertyHolder, getPropertyName, getScale, getSecondaryTableName, getSqlType, getTable, initMappingColumn, isImplicit, isInsertable, isNameDeferred, isNullable, isSecondary, isUnique, isUpdatable, linkWithValue, setFormula, setImplicit, setInsertable, setJoins, setLength, setLogicalColumnName, setMappingColumn, setMappings, setNullable, setPrecision, setPropertyHolder, setPropertyName, setScale, setSecondaryTableName, setSqlType, setTable, setUnique, setUpdatable |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
NO_REFERENCE
public static final int NO_REFERENCE
- See Also:
- Constant Field Values
PK_REFERENCE
public static final int PK_REFERENCE
- See Also:
- Constant Field Values
NON_PK_REFERENCE
public static final int NON_PK_REFERENCE
- See Also:
- Constant Field Values
Ejb3JoinColumn
public Ejb3JoinColumn()
Ejb3JoinColumn
public Ejb3JoinColumn(String sqlType,
String name,
boolean nullable,
boolean unique,
boolean insertable,
boolean updatable,
String referencedColumn,
String secondaryTable,
Map<String,org.hibernate.mapping.Join> joins,
PropertyHolder propertyHolder,
String propertyName,
String mappedBy,
boolean isImplicit,
ExtendedMappings mappings)
getManyToManyOwnerSideEntityName
public String getManyToManyOwnerSideEntityName()
setManyToManyOwnerSideEntityName
public void setManyToManyOwnerSideEntityName(String manyToManyOwnerSideEntityName)
setReferencedColumn
public void setReferencedColumn(String referencedColumn)
getMappedBy
public String getMappedBy()
setMappedBy
public void setMappedBy(String mappedBy)
getReferencedColumn
public String getReferencedColumn()
buildJoinColumn
public static Ejb3JoinColumn buildJoinColumn(javax.persistence.JoinColumn ann,
Map<String,org.hibernate.mapping.Join> joins,
PropertyHolder propertyHolder,
String propertyName,
ExtendedMappings mappings)
setJoinAnnotation
public void setJoinAnnotation(javax.persistence.JoinColumn annJoin,
String defaultName)
buildImplicitJoinColumn
public static Ejb3JoinColumn buildImplicitJoinColumn(String mappedBy,
Map<String,org.hibernate.mapping.Join> joins,
PropertyHolder propertyHolder,
String propertyName,
ExtendedMappings mappings)
buildJoinColumn
public static Ejb3JoinColumn buildJoinColumn(javax.persistence.JoinColumn ann,
org.hibernate.mapping.Value identifier,
Map<String,org.hibernate.mapping.Join> joins,
PropertyHolder propertyHolder,
ExtendedMappings mappings)
- Build an Ejb3JoinColumn from a potential annotation and
the identifier it refers to
- Parameters:
ann
- JoinColumn annotationidentifier
- value explaining the identifierpropertyHolder
- mappings
- mappings
- Returns:
- Ejb3JoinColumn
buildJoinColumn
public static Ejb3JoinColumn buildJoinColumn(javax.persistence.PrimaryKeyJoinColumn ann,
org.hibernate.mapping.Value identifier,
Map<String,org.hibernate.mapping.Join> joins,
PropertyHolder propertyHolder,
ExtendedMappings mappings)
setPersistentClass
public void setPersistentClass(org.hibernate.mapping.PersistentClass persistentClass,
Map<String,org.hibernate.mapping.Join> joins)
- Override persistent class on oneToMany Cases for late settings
checkIfJoinColumn
public static void checkIfJoinColumn(Object columns,
PropertyHolder holder,
PropertyInferredData property)
linkValueUsingDefaultColumnNaming
public void linkValueUsingDefaultColumnNaming(org.hibernate.mapping.Column referencedColumn,
org.hibernate.mapping.Table referencedTable,
org.hibernate.mapping.SimpleValue value)
linkValueUsingAColumnCopy
public void linkValueUsingAColumnCopy(org.hibernate.mapping.Column column,
org.hibernate.mapping.SimpleValue value)
- used for mappedBy cases
addColumnBinding
protected void addColumnBinding(org.hibernate.mapping.SimpleValue value)
- Overrides:
addColumnBinding
in class Ejb3Column
checkReferencedColumnsType
public static int checkReferencedColumnsType(Ejb3JoinColumn[] columns,
org.hibernate.mapping.PersistentClass referencedEntity,
ExtendedMappings mappings)
overrideSqlTypeIfNecessary
public void overrideSqlTypeIfNecessary(org.hibernate.mapping.Column column)
redefineColumnName
public void redefineColumnName(String columnName,
String propertyName,
boolean applyNamingStrategy)
- Overrides:
redefineColumnName
in class Ejb3Column
setDefaultColumnName
public void setDefaultColumnName()
setMappedByPropertyName
public void setMappedByPropertyName(String mappedByPropertyName)
setMappedByTableName
public void setMappedByTableName(String mappedByTableName)