Top Description Fields Constructors Methods
org.hibernate.boot.model.internal

public Class PropertyContainer

extends Object
Class Inheritance
Imports
java.util.ArrayList, .HashMap, .Iterator, .LinkedHashMap, .List, .Map, .TreeMap, org.hibernate.AnnotationException, org.hibernate.annotations.JavaType, .JdbcTypeCode, .ManyToAny, .Target, .Type, org.hibernate.annotations.common.reflection.XClass, .XProperty, org.hibernate.boot.MappingException, org.hibernate.boot.jaxb.Origin, .SourceType, org.hibernate.boot.spi.AccessType, org.hibernate.internal.CoreMessageLogger, org.hibernate.internal.util.StringHelper, org.hibernate.internal.util.collections.CollectionHelper, org.jboss.logging.Logger, jakarta.persistence.Access, .Basic, .ManyToMany, .ManyToOne, .OneToMany, .OneToOne, .Transient

A helper class to keep the XPropertys of a class ordered by access type.
Author
Hardy Ferentschik

Field Summary

Modifier and TypeField and Description
private final AccessType
classLevelAccessType

Holds the AccessType indicated for use at the class/container-level for cases where persistent attribute did not specify.

private final XClass
private static final CoreMessageLogger
private final List<XProperty>
private final XClass
xClass

The class for which this container is created.

Constructor Summary

AccessConstructor and Description
public
PropertyContainer(XClass clazz, XClass entityAtStake, AccessType defaultClassLevelAccessType)

Method Summary

Modifier and TypeMethod and Description
private static void
collectPersistentAttributesUsingClassLevelAccessType(XClass xClass, AccessType classLevelAccessType, Map<String, XProperty> persistentAttributeMap, Map<String, XProperty> persistentAttributesFromGetters, Map<String, XProperty> persistentAttributesFromComponents, List<XProperty> fields, List<XProperty> getters, List<XProperty> recordComponents)

private static void
collectPersistentAttributesUsingLocalAccessType(XClass xClass, Map<String, XProperty> persistentAttributeMap, Map<String, XProperty> persistentAttributesFromGetters, Map<String, XProperty> persistentAttributesFromComponents, List<XProperty> fields, List<XProperty> getters, List<XProperty> recordComponents)

private AccessType
private static boolean
public AccessType
public XClass
public XClass
private static boolean
private void
preFilter(List<XProperty> fields, List<XProperty> getters, List<XProperty> recordComponents)

public Iterable<XProperty>
private static List<XProperty>
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

classLevelAccessTypeback to summary
private final AccessType classLevelAccessType

Holds the AccessType indicated for use at the class/container-level for cases where persistent attribute did not specify.

entityAtStakeback to summary
private final XClass entityAtStake
LOGback to summary
private static final CoreMessageLogger LOG
persistentAttributesback to summary
private final List<XProperty> persistentAttributes
xClassback to summary
private final XClass xClass

The class for which this container is created.

Constructor Detail

PropertyContainerback to summary
public PropertyContainer(XClass clazz, XClass entityAtStake, AccessType defaultClassLevelAccessType)

Method Detail

collectPersistentAttributesUsingClassLevelAccessTypeback to summary
private static void collectPersistentAttributesUsingClassLevelAccessType(XClass xClass, AccessType classLevelAccessType, Map<String, XProperty> persistentAttributeMap, Map<String, XProperty> persistentAttributesFromGetters, Map<String, XProperty> persistentAttributesFromComponents, List<XProperty> fields, List<XProperty> getters, List<XProperty> recordComponents)
collectPersistentAttributesUsingLocalAccessTypeback to summary
private static void collectPersistentAttributesUsingLocalAccessType(XClass xClass, Map<String, XProperty> persistentAttributeMap, Map<String, XProperty> persistentAttributesFromGetters, Map<String, XProperty> persistentAttributesFromComponents, List<XProperty> fields, List<XProperty> getters, List<XProperty> recordComponents)
determineLocalClassDefinedAccessStrategyback to summary
private AccessType determineLocalClassDefinedAccessStrategy()
discoverTypeWithoutReflectionback to summary
private static boolean discoverTypeWithoutReflection(XClass clazz, XProperty property)
getClassLevelAccessTypeback to summary
public AccessType getClassLevelAccessType()
getDeclaringClassback to summary
public XClass getDeclaringClass()
getEntityAtStakeback to summary
public XClass getEntityAtStake()
mustBeSkippedback to summary
private static boolean mustBeSkipped(XProperty property)
preFilterback to summary
private void preFilter(List<XProperty> fields, List<XProperty> getters, List<XProperty> recordComponents)
propertyIteratorback to summary
public Iterable<XProperty> propertyIterator()
verifyAndInitializePersistentAttributesback to summary
private static List<XProperty> verifyAndInitializePersistentAttributes(XClass xClass, Map<String, XProperty> localAttributeMap)