public class ComponentPropertyHolder extends AbstractPropertyHolder
@Embeddable @Convert( attributeName="city", ... ) class Address { ... @Convert(...) public String city; } @Entity @Convert( attributeName="homeAddress.city", ... ) class Person { ... @Embedded @Convert( attributeName="city", ... ) public Address homeAddress; }As you can see, lots of ways to specify the conversion for embeddable attributes :(
parent
Constructor and Description |
---|
ComponentPropertyHolder(Component component,
String path,
PropertyData inferredData,
PropertyHolder parent,
MetadataBuildingContext context) |
Modifier and Type | Method and Description |
---|---|
Join |
addJoin(JoinTable joinTableAnn,
boolean noDelayInPkColumnCreation) |
void |
addProperty(Property prop,
Ejb3Column[] columns,
XClass declaringClass) |
void |
addProperty(Property prop,
XClass declaringClass) |
String |
getClassName() |
String |
getEntityName() |
String |
getEntityOwnerClassName() |
KeyValue |
getIdentifier() |
Column[] |
getOverriddenColumn(String propertyName)
Get column overriding, property first, then parent, then holder
replace the placeholder 'collection&&element' with nothing
These rules are here to support both JPA 2 and legacy overriding rules.
|
JoinColumn[] |
getOverriddenJoinColumn(String propertyName)
Get column overriding, property first, then parent, then holder
replace the placeholder 'collection&&element' with nothing
These rules are here to support both JPA 2 and legacy overriding rules.
|
PersistentClass |
getPersistentClass() |
Table |
getTable() |
boolean |
isComponent() |
boolean |
isEntity() |
boolean |
isOrWithinEmbeddedId()
Return true if this component is or is embedded in a @EmbeddedId
|
protected AttributeConversionInfo |
locateAttributeConversionInfo(String path) |
protected AttributeConversionInfo |
locateAttributeConversionInfo(XProperty property) |
protected String |
normalizeCompositePath(String attributeName) |
protected String |
normalizeCompositePathForLogging(String attributeName) |
void |
setParentProperty(String parentProperty) |
void |
startingProperty(XProperty property)
Called during binding to allow the PropertyHolder to inspect its discovered properties.
|
String |
toString() |
areTypeMatch, getContext, getJoinTable, getOverriddenJoinTable, getPath, isInIdClass, makeAttributeConverterDefinition, resolveAttributeConverterDefinition, setCurrentProperty, setInIdClass
public ComponentPropertyHolder(Component component, String path, PropertyData inferredData, PropertyHolder parent, MetadataBuildingContext context)
protected String normalizeCompositePath(String attributeName)
normalizeCompositePath
in class AbstractPropertyHolder
protected String normalizeCompositePathForLogging(String attributeName)
normalizeCompositePathForLogging
in class AbstractPropertyHolder
public void startingProperty(XProperty property)
PropertyHolder
property
- The propertyprotected AttributeConversionInfo locateAttributeConversionInfo(XProperty property)
locateAttributeConversionInfo
in class AbstractPropertyHolder
protected AttributeConversionInfo locateAttributeConversionInfo(String path)
locateAttributeConversionInfo
in class AbstractPropertyHolder
public String getEntityName()
public void addProperty(Property prop, Ejb3Column[] columns, XClass declaringClass)
public String getClassName()
public String getEntityOwnerClassName()
public Table getTable()
public KeyValue getIdentifier()
public boolean isOrWithinEmbeddedId()
PropertyHolder
public PersistentClass getPersistentClass()
public boolean isComponent()
public boolean isEntity()
public void setParentProperty(String parentProperty)
setParentProperty
in interface PropertyHolder
setParentProperty
in class AbstractPropertyHolder
public Column[] getOverriddenColumn(String propertyName)
AbstractPropertyHolder
getOverriddenColumn
in interface PropertyHolder
getOverriddenColumn
in class AbstractPropertyHolder
public JoinColumn[] getOverriddenJoinColumn(String propertyName)
AbstractPropertyHolder
getOverriddenJoinColumn
in interface PropertyHolder
getOverriddenJoinColumn
in class AbstractPropertyHolder
Copyright © 2016 JBoss by Red Hat. All rights reserved.