Interface ProxyFactory

All Known Implementing Classes:
ByteBuddyProxyFactory, MapProxyFactory

public interface ProxyFactory
Contract for runtime, proxy-based lazy initialization proxies.
  • 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 initialization
      setIdentifierMethod - Reference to the identifier setter method; invocation on this method should not force initialization
      componentIdType - 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.
    • getProxy

      Create a new proxy instance
      Parameters:
      id - The id value for the proxy to be generated.
      session - The session to which the generated proxy will be associated.
      Returns:
      The generated proxy.
      Throws:
      HibernateException - Indicates problems generating the requested proxy.