Top Description Methods
org.hibernate.proxy

public Interface ProxyFactory

Known Direct Implementers
org.hibernate.proxy.map.MapProxyFactory, org.hibernate.proxy.pojo.bytebuddy.ByteBuddyProxyFactory, org.hibernate.bytecode.internal.none.DisallowedProxyFactory
Imports
java.lang.reflect.Method, java.util.Set, org.hibernate.HibernateException, org.hibernate.engine.spi.SharedSessionContractImplementor, org.hibernate.type.CompositeType

Contract for runtime, proxy-based lazy initialization proxies.
Author
Gavin King

Method Summary

Modifier and TypeMethod and Description
public HibernateProxy

Returns:

The generated proxy.
getProxy
(Object
The id value for the proxy to be generated.
id
,
SharedSessionContractImplementor
The session to which the generated proxy will be associated.
session
)

Create a new proxy instance

public void
postInstantiate(String
The name of the entity for which this factory should generate proxies.
entityName
,
Class<?>
The entity class for which to generate proxies; not always the same as the entityName.
persistentClass
,
Set<Class<?>>
The interfaces to expose in the generated proxy; HibernateProxy is already included in this collection.
interfaces
,
Method
Reference to the identifier getter method; invocation on this method should not force initialization
getIdentifierMethod
,
Method
Reference to the identifier setter method; invocation on this method should not force initialization
setIdentifierMethod
,
CompositeType
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.
componentIdType
)

Called immediately after instantiation of this factory.

Method Detail

getProxyback to summary
public HibernateProxy getProxy(Object id, SharedSessionContractImplementor session) throws HibernateException

Create a new proxy instance

Parameters
id:Object

The id value for the proxy to be generated.

session:SharedSessionContractImplementor

The session to which the generated proxy will be associated.

Returns:HibernateProxy

The generated proxy.

Exceptions
HibernateException:
Indicates problems generating the requested proxy.
postInstantiateback to summary
public 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:String

The name of the entity for which this factory should generate proxies.

persistentClass:Class<?>

The entity class for which to generate proxies; not always the same as the entityName.

interfaces:Set<Class<?>>

The interfaces to expose in the generated proxy; HibernateProxy is already included in this collection.

getIdentifierMethod:Method

Reference to the identifier getter method; invocation on this method should not force initialization

setIdentifierMethod:Method

Reference to the identifier setter method; invocation on this method should not force initialization

componentIdType:CompositeType

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.

Exceptions
HibernateException:
Indicates a problem completing post instantiation initialization.