Package org.hibernate.bytecode.spi
Interface BytecodeEnhancementMetadata
- All Known Implementing Classes:
BytecodeEnhancementMetadataNonPojoImpl
,BytecodeEnhancementMetadataPojoImpl
public interface BytecodeEnhancementMetadata
Encapsulates bytecode enhancement information about a particular entity.
-
Method Summary
Modifier and TypeMethodDescriptioncreateEnhancedProxy
(EntityKey keyToLoad, boolean addEmptyEntry, SharedSessionContractImplementor session) Create an "enhancement as proxy" instance for the given entity@Nullable LazyAttributeLoadingInterceptor
extractInterceptor
(Object entity) Extract the field interceptor instance from the enhanced entity.@Nullable BytecodeLazyAttributeInterceptor
extractLazyInterceptor
(Object entity) The name of the entity to which this metadata applies.boolean
hasUnFetchedAttributes
(Object entity) void
injectEnhancedEntityAsProxyInterceptor
(Object entity, EntityKey entityKey, SharedSessionContractImplementor session) injectInterceptor
(Object entity, Object identifier, SharedSessionContractImplementor session) Build and inject an interceptor instance into the enhanced entity.void
injectInterceptor
(Object entity, PersistentAttributeInterceptor interceptor, SharedSessionContractImplementor session) boolean
isAttributeLoaded
(Object entity, String attributeName) boolean
Has the entity class been bytecode enhanced for lazy loading?
-
Method Details
-
getEntityName
String getEntityName()The name of the entity to which this metadata applies.- Returns:
- The entity name
-
isEnhancedForLazyLoading
boolean isEnhancedForLazyLoading()Has the entity class been bytecode enhanced for lazy loading?- Returns:
true
indicates the entity class is enhanced for Hibernate use in lazy loading;false
indicates it is not
-
getLazyAttributesMetadata
LazyAttributesMetadata getLazyAttributesMetadata() -
extractInterceptor
@Nullable LazyAttributeLoadingInterceptor extractInterceptor(Object entity) throws NotInstrumentedException Extract the field interceptor instance from the enhanced entity.- Parameters:
entity
- The entity from which to extract the interceptor- Returns:
- The extracted interceptor
- Throws:
NotInstrumentedException
- Thrown ifisEnhancedForLazyLoading()
returnsfalse
-
extractLazyInterceptor
@Nullable BytecodeLazyAttributeInterceptor extractLazyInterceptor(Object entity) throws NotInstrumentedException - Throws:
NotInstrumentedException
-
hasUnFetchedAttributes
-
isAttributeLoaded
-