@NotStorableClass public abstract class AbstractClassCreator extends Object
Modifier and Type | Field and Description |
---|---|
protected ClassInfoFactory |
classInfoFactory |
static String |
JOAFIP_SUFIX |
protected JoafipLogger |
logger |
Constructor and Description |
---|
AbstractClassCreator(ClassLoaderProvider classLoaderProvider,
ClassInfoFactory classInfoFactory,
boolean classCreation) |
Modifier and Type | Method and Description |
---|---|
protected Class<?> |
defineClass(String className,
byte[] byteCode) |
protected abstract Class<?> |
doEnhancementImpl(ClassInfo objectClassInfo,
String toEnhanceClassPackageName,
String toEnhanceClassName,
String superClassPackageName,
String superClassName,
int persistenceId,
boolean interceptMethodEnd,
boolean overridePublicOnly) |
Class<?> |
enhanceClass(ClassInfo objectClassInfo,
int persistenceId,
boolean interceptMethodEnd)
get existing enhanced class or create it
if class created then associate base class information to enhanced class name |
protected boolean |
isEnhancable(Method method) |
protected final JoafipLogger logger
public static final String JOAFIP_SUFIX
protected ClassInfoFactory classInfoFactory
public AbstractClassCreator(ClassLoaderProvider classLoaderProvider, ClassInfoFactory classInfoFactory, boolean classCreation) throws EnhanceException
EnhanceException
public Class<?> enhanceClass(ClassInfo objectClassInfo, int persistenceId, boolean interceptMethodEnd) throws EnhanceException
objectClassInfo
- persistenceId
- interceptMethodEnd
- EnhanceException
protected abstract Class<?> doEnhancementImpl(ClassInfo objectClassInfo, String toEnhanceClassPackageName, String toEnhanceClassName, String superClassPackageName, String superClassName, int persistenceId, boolean interceptMethodEnd, boolean overridePublicOnly) throws EnhanceException
EnhanceException
protected boolean isEnhancable(Method method)
protected Class<?> defineClass(String className, byte[] byteCode) throws EnhanceException
className
- the class namebyteCode
- the code bufferEnhanceException
Copyright © 2007-2012 Luc Peuvrier. All Rights Reserved.