Package org.hibernate.proxy
Interface ProxyFactory
- All Known Implementing Classes:
ByteBuddyProxyFactory
,MapProxyFactory
public interface ProxyFactory
Contract for runtime, proxy-based lazy initialization proxies.
-
Method Summary
Modifier and TypeMethodDescriptiongetProxy
(Object id, SharedSessionContractImplementor session) Create a new proxy instancevoid
postInstantiate
(String entityName, Class<?> persistentClass, Set<Class<?>> interfaces, Method getIdentifierMethod, Method setIdentifierMethod, CompositeType componentIdType) Called immediately after instantiation of this factory.
-
Method Details
-
postInstantiate
void postInstantiate(String entityName, Class<?> persistentClass, Set<Class<?>> interfaces, Method getIdentifierMethod, Method setIdentifierMethod, CompositeType componentIdType) throws HibernateException Called immediately after instantiation of this factory.Essentially equivalent to constructor injection, but contracted here via interface.
- Parameters:
entityName
- The name of the entity for which this factory should generate proxies.persistentClass
- The entity class for which to generate proxies; not always the same as the entityName.interfaces
- The interfaces to expose in the generated proxy;HibernateProxy
is already included in this collection.getIdentifierMethod
- Reference to the identifier getter method; invocation on this method should not force initializationsetIdentifierMethod
- Reference to the identifier setter method; invocation on this method should not force initializationcomponentIdType
- For composite identifier types, a reference to the type of the identifier property; again accessing the id should generally not cause initialization - but need to bear in mind <key-many-to-one/> mappings.- Throws:
HibernateException
- Indicates a problem completing post instantiation initialization.
-