Class LazyAttributeLoadingInterceptor
- java.lang.Object
-
- org.hibernate.bytecode.enhance.spi.interceptor.AbstractInterceptor
-
- org.hibernate.bytecode.enhance.spi.interceptor.AbstractLazyLoadInterceptor
-
- org.hibernate.bytecode.enhance.spi.interceptor.LazyAttributeLoadingInterceptor
-
- All Implemented Interfaces:
BytecodeLazyAttributeInterceptor,SessionAssociableInterceptor,LazyPropertyInitializer.InterceptorImplementor,PersistentAttributeInterceptor
public class LazyAttributeLoadingInterceptor extends AbstractLazyLoadInterceptor
Interceptor that loads attributes lazily
-
-
Constructor Summary
Constructors Constructor Description LazyAttributeLoadingInterceptor(java.lang.String entityName, java.lang.Object identifier, java.util.Set<java.lang.String> lazyFields, SharedSessionContractImplementor session)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidattributeInitialized(java.lang.String name)Callback from the enhanced class that an attribute has been read or writtenjava.lang.ObjectfetchAttribute(java.lang.Object target, java.lang.String attributeName)Fetches the lazy attribute.java.lang.ObjectgetIdentifier()The id of the entity instance this interceptor is associated withjava.util.Set<java.lang.String>getInitializedLazyAttributeNames()The names of all lazy attributes which have been initializedprotected java.lang.ObjecthandleRead(java.lang.Object target, java.lang.String attributeName, java.lang.Object value)Handle the case of reading an attribute.protected java.lang.ObjecthandleWrite(java.lang.Object target, java.lang.String attributeName, java.lang.Object oldValue, java.lang.Object newValue)Handle the case of writing an attribute.booleanhasAnyUninitializedAttributes()booleanisAttributeLoaded(java.lang.String fieldName)Callback from the enhanced class that an attribute has been loadedprotected java.lang.ObjectloadAttribute(java.lang.Object target, java.lang.String attributeName)java.lang.StringtoString()-
Methods inherited from class org.hibernate.bytecode.enhance.spi.interceptor.AbstractInterceptor
allowLoadOutsideTransaction, getEntityName, getLinkedSession, getSessionFactoryUuid, readBoolean, readByte, readChar, readDouble, readFloat, readInt, readLong, readObject, readShort, setSession, unsetSession, writeBoolean, writeByte, writeChar, writeDouble, writeFloat, writeInt, writeLong, writeObject, writeShort
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.hibernate.bytecode.enhance.spi.interceptor.BytecodeLazyAttributeInterceptor
getEntityName
-
Methods inherited from interface org.hibernate.engine.spi.PersistentAttributeInterceptor
readBoolean, readByte, readChar, readDouble, readFloat, readInt, readLong, readObject, readShort, writeBoolean, writeByte, writeChar, writeDouble, writeFloat, writeInt, writeLong, writeObject, writeShort
-
Methods inherited from interface org.hibernate.bytecode.enhance.spi.interceptor.SessionAssociableInterceptor
allowLoadOutsideTransaction, getLinkedSession, getSessionFactoryUuid, setSession, unsetSession
-
-
-
-
Constructor Detail
-
LazyAttributeLoadingInterceptor
public LazyAttributeLoadingInterceptor(java.lang.String entityName, java.lang.Object identifier, java.util.Set<java.lang.String> lazyFields, SharedSessionContractImplementor session)
-
-
Method Detail
-
getIdentifier
public java.lang.Object getIdentifier()
Description copied from interface:BytecodeLazyAttributeInterceptorThe id of the entity instance this interceptor is associated with
-
handleRead
protected java.lang.Object handleRead(java.lang.Object target, java.lang.String attributeName, java.lang.Object value)Description copied from class:AbstractInterceptorHandle the case of reading an attribute. The result is what is returned to the caller- Specified by:
handleReadin classAbstractInterceptor
-
handleWrite
protected java.lang.Object handleWrite(java.lang.Object target, java.lang.String attributeName, java.lang.Object oldValue, java.lang.Object newValue)Description copied from class:AbstractInterceptorHandle the case of writing an attribute. The result is what is set as the entity state- Specified by:
handleWritein classAbstractInterceptor
-
fetchAttribute
public java.lang.Object fetchAttribute(java.lang.Object target, java.lang.String attributeName)Fetches the lazy attribute. The attribute does not get associated with the entity. (To be used by hibernate methods)
-
loadAttribute
protected java.lang.Object loadAttribute(java.lang.Object target, java.lang.String attributeName)
-
isAttributeLoaded
public boolean isAttributeLoaded(java.lang.String fieldName)
Description copied from interface:PersistentAttributeInterceptorCallback from the enhanced class that an attribute has been loaded- Returns:
- true id the attribute is loaded false otherwise
-
hasAnyUninitializedAttributes
public boolean hasAnyUninitializedAttributes()
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
attributeInitialized
public void attributeInitialized(java.lang.String name)
Description copied from interface:BytecodeLazyAttributeInterceptorCallback from the enhanced class that an attribute has been read or written
-
getInitializedLazyAttributeNames
public java.util.Set<java.lang.String> getInitializedLazyAttributeNames()
Description copied from interface:BytecodeLazyAttributeInterceptorThe names of all lazy attributes which have been initialized
-
-