Package org.hibernate.bytecode.internal
Class BytecodeEnhancementMetadataNonPojoImpl
java.lang.Object
org.hibernate.bytecode.internal.BytecodeEnhancementMetadataNonPojoImpl
- All Implemented Interfaces:
BytecodeEnhancementMetadata
public class BytecodeEnhancementMetadataNonPojoImpl
extends Object
implements BytecodeEnhancementMetadata
BytecodeEnhancementMetadata implementation for non-POJO models, mainly
RepresentationMode.MAP-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreateEnhancedProxy(EntityKey keyToLoad, boolean addEmptyEntry, SharedSessionContractImplementor session) Create an "enhancement as proxy" instance for the given entity@Nullable LazyAttributeLoadingInterceptorextractInterceptor(Object entity) Extract the field interceptor instance from the enhanced entity.@Nullable BytecodeLazyAttributeInterceptorextractLazyInterceptor(Object entity) The name of the entity to which this metadata applies.booleanhasUnFetchedAttributes(Object entity) voidinjectEnhancedEntityAsProxyInterceptor(Object entity, EntityKey entityKey, SharedSessionContractImplementor session) injectInterceptor(Object entity, Object identifier, SharedSessionContractImplementor session) Build and inject an interceptor instance into the enhanced entity.voidinjectInterceptor(Object entity, PersistentAttributeInterceptor interceptor, SharedSessionContractImplementor session) booleanisAttributeLoaded(Object entity, String attributeName) booleanHas the entity class been bytecode enhanced for lazy loading?
-
Constructor Details
-
BytecodeEnhancementMetadataNonPojoImpl
-
-
Method Details
-
getEntityName
Description copied from interface:BytecodeEnhancementMetadataThe name of the entity to which this metadata applies.- Specified by:
getEntityNamein interfaceBytecodeEnhancementMetadata- Returns:
- The entity name
-
isEnhancedForLazyLoading
public boolean isEnhancedForLazyLoading()Description copied from interface:BytecodeEnhancementMetadataHas the entity class been bytecode enhanced for lazy loading?- Specified by:
isEnhancedForLazyLoadingin interfaceBytecodeEnhancementMetadata- Returns:
trueindicates the entity class is enhanced for Hibernate use in lazy loading;falseindicates it is not
-
getLazyAttributesMetadata
- Specified by:
getLazyAttributesMetadatain interfaceBytecodeEnhancementMetadata
-
extractInterceptor
public @Nullable LazyAttributeLoadingInterceptor extractInterceptor(Object entity) throws NotInstrumentedException Description copied from interface:BytecodeEnhancementMetadataExtract the field interceptor instance from the enhanced entity.- Specified by:
extractInterceptorin interfaceBytecodeEnhancementMetadata- Parameters:
entity- The entity from which to extract the interceptor- Returns:
- The extracted interceptor
- Throws:
NotInstrumentedException- Thrown ifBytecodeEnhancementMetadata.isEnhancedForLazyLoading()returnsfalse
-
extractLazyInterceptor
public @Nullable BytecodeLazyAttributeInterceptor extractLazyInterceptor(Object entity) throws NotInstrumentedException - Specified by:
extractLazyInterceptorin interfaceBytecodeEnhancementMetadata- Throws:
NotInstrumentedException
-
hasUnFetchedAttributes
- Specified by:
hasUnFetchedAttributesin interfaceBytecodeEnhancementMetadata
-
isAttributeLoaded
- Specified by:
isAttributeLoadedin interfaceBytecodeEnhancementMetadata
-