Top Description Methods
org.hibernate.bytecode

public Interface BytecodeProvider

Known Direct Implementers
org.hibernate.bytecode.cglib.BytecodeProviderImpl, org.hibernate.bytecode.javassist.BytecodeProviderImpl
Imports
org.hibernate.bytecode.util.ClassFilter, .FieldFilter

Contract for providers of bytecode services to Hibernate.

Bytecode requirements break down into basically 3 areas

  1. proxy generation (both for runtime-lazy-loading and basic proxy generation) getProxyFactoryFactory()
  2. bean reflection optimization getReflectionOptimizer
  3. field-access instrumentation getTransformer
Author
Steve Ebersole

Method Summary

Modifier and TypeMethod and Description
public ProxyFactoryFactory

Returns:

The provider specific factory.
getProxyFactoryFactory
()

Retrieve the specific factory for this provider capable of generating run-time proxies for lazy-loading purposes.

public ReflectionOptimizer

Returns:

The reflection optimization delegate.
getReflectionOptimizer
(Class<T>
The class to be reflected upon.
clazz
,
String[]
Names of all property getters to be accessed via reflection.
getterNames
,
String[]
Names of all property setters to be accessed via reflection.
setterNames
,
Class<T>[]
The types of all properties to be accessed.
types
)

Retrieve the ReflectionOptimizer delegate for this provider capable of generating reflection optimization components.

public ClassTransformer

Returns:

The appropriate ClassTransformer.
getTransformer
(ClassFilter
filter used to limit which classes are to be instrumented via this ClassTransformer.
classFilter
,
FieldFilter
filter used to limit which fields are to be instrumented via this ClassTransformer.
fieldFilter
)

Generate a ClassTransformer capable of performing bytecode manipulation.

Method Detail

getProxyFactoryFactoryback to summary
public ProxyFactoryFactory getProxyFactoryFactory()

Retrieve the specific factory for this provider capable of generating run-time proxies for lazy-loading purposes.

Returns:ProxyFactoryFactory

The provider specific factory.

getReflectionOptimizerback to summary
public ReflectionOptimizer getReflectionOptimizer(Class<T> clazz, String[] getterNames, String[] setterNames, Class<T>[] types)

Retrieve the ReflectionOptimizer delegate for this provider capable of generating reflection optimization components.

Parameters
clazz:Class<T>

The class to be reflected upon.

getterNames:String[]

Names of all property getters to be accessed via reflection.

setterNames:String[]

Names of all property setters to be accessed via reflection.

types:Class<T>[]

The types of all properties to be accessed.

Returns:ReflectionOptimizer

The reflection optimization delegate.

getTransformerback to summary
public ClassTransformer getTransformer(ClassFilter classFilter, FieldFilter fieldFilter)

Generate a ClassTransformer capable of performing bytecode manipulation.

Parameters
classFilter:ClassFilter

filter used to limit which classes are to be instrumented via this ClassTransformer.

fieldFilter:FieldFilter

filter used to limit which fields are to be instrumented via this ClassTransformer.

Returns:ClassTransformer

The appropriate ClassTransformer.