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, mainlyRepresentationMode.MAP
-
-
Constructor Summary
Constructors Constructor Description BytecodeEnhancementMetadataNonPojoImpl(String entityName)
-
Method Summary
-
-
-
Constructor Detail
-
BytecodeEnhancementMetadataNonPojoImpl
public BytecodeEnhancementMetadataNonPojoImpl(String entityName)
-
-
Method Detail
-
getEntityName
public String getEntityName()
Description copied from interface:BytecodeEnhancementMetadata
The name of the entity to which this metadata applies.- Specified by:
getEntityName
in interfaceBytecodeEnhancementMetadata
- Returns:
- The entity name
-
isEnhancedForLazyLoading
public boolean isEnhancedForLazyLoading()
Description copied from interface:BytecodeEnhancementMetadata
Has the entity class been bytecode enhanced for lazy loading?- Specified by:
isEnhancedForLazyLoading
in interfaceBytecodeEnhancementMetadata
- Returns:
true
indicates the entity class is enhanced for Hibernate use in lazy loading;false
indicates it is not
-
getLazyAttributesMetadata
public LazyAttributesMetadata getLazyAttributesMetadata()
- Specified by:
getLazyAttributesMetadata
in interfaceBytecodeEnhancementMetadata
-
injectInterceptor
public LazyAttributeLoadingInterceptor injectInterceptor(Object entity, Object identifier, SharedSessionContractImplementor session) throws NotInstrumentedException
Description copied from interface:BytecodeEnhancementMetadata
Build and inject an interceptor instance into the enhanced entity.- Specified by:
injectInterceptor
in interfaceBytecodeEnhancementMetadata
- Parameters:
entity
- The entity into which built interceptor should be injectedsession
- The session to which the entity instance belongs.- Returns:
- The built and injected interceptor
- Throws:
NotInstrumentedException
- Thrown ifBytecodeEnhancementMetadata.isEnhancedForLazyLoading()
returnsfalse
-
injectInterceptor
public void injectInterceptor(Object entity, PersistentAttributeInterceptor interceptor, SharedSessionContractImplementor session)
- Specified by:
injectInterceptor
in interfaceBytecodeEnhancementMetadata
-
injectEnhancedEntityAsProxyInterceptor
public void injectEnhancedEntityAsProxyInterceptor(Object entity, EntityKey entityKey, SharedSessionContractImplementor session)
- Specified by:
injectEnhancedEntityAsProxyInterceptor
in interfaceBytecodeEnhancementMetadata
-
createEnhancedProxy
public PersistentAttributeInterceptable createEnhancedProxy(EntityKey keyToLoad, boolean addEmptyEntry, SharedSessionContractImplementor session)
Description copied from interface:BytecodeEnhancementMetadata
Create an "enhancement as proxy" instance for the given entity- Specified by:
createEnhancedProxy
in interfaceBytecodeEnhancementMetadata
-
extractInterceptor
public @Nullable LazyAttributeLoadingInterceptor extractInterceptor(Object entity) throws NotInstrumentedException
Description copied from interface:BytecodeEnhancementMetadata
Extract the field interceptor instance from the enhanced entity.- Specified by:
extractInterceptor
in 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:
extractLazyInterceptor
in interfaceBytecodeEnhancementMetadata
- Throws:
NotInstrumentedException
-
hasUnFetchedAttributes
public boolean hasUnFetchedAttributes(Object entity)
- Specified by:
hasUnFetchedAttributes
in interfaceBytecodeEnhancementMetadata
-
isAttributeLoaded
public boolean isAttributeLoaded(Object entity, String attributeName)
- Specified by:
isAttributeLoaded
in interfaceBytecodeEnhancementMetadata
-
-