public class DirectCopyClassTransformer extends AbstractClassTransformer implements BroadleafClassTransformer
| Modifier and Type | Field and Description |
|---|---|
protected static List<String> |
annotationTransformedClasses |
protected ConditionalDirectCopyTransformersManager |
conditionalDirectCopyTransformersManager |
protected List<DirectCopyIgnorePattern> |
ignorePatterns |
protected SupportLogger |
logger |
protected String |
moduleName |
protected Boolean |
renameMethodOverlaps |
protected String |
renameMethodPrefix |
protected Boolean |
skipOverlaps |
protected Map<String,String> |
templateTokens |
protected static List<String> |
transformedMethods |
protected Map<String,String> |
xformTemplates |
alreadyLoadedClasses, preLoadClassNamePatterns| Constructor and Description |
|---|
DirectCopyClassTransformer(String moduleName) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
buildClassLevelAnnotations(javassist.bytecode.ClassFile classFile,
javassist.bytecode.ClassFile templateClassFile,
javassist.bytecode.ConstPool constantPool) |
protected org.broadleafcommerce.common.extensibility.jpa.copy.DirectCopyClassTransformer.XFormParams |
combineXFormParams(org.broadleafcommerce.common.extensibility.jpa.copy.DirectCopyClassTransformer.XFormParams defaultParams,
org.broadleafcommerce.common.extensibility.jpa.copy.DirectCopyClassTransformer.XFormParams conditionalParams)
Combines two
DirectCopyClassTransformer.XFormParams together with
first passed in xformParama supercedes the second passed in parameter. |
void |
compileJPAProperties(Properties props,
Object key) |
protected javassist.bytecode.annotation.Annotation |
getEntityListeners(javassist.bytecode.ConstPool constantPool,
javassist.bytecode.annotation.Annotation existingEntityListeners,
javassist.bytecode.annotation.Annotation templateEntityListeners) |
List<DirectCopyIgnorePattern> |
getIgnorePatterns() |
protected String |
getImplementationType(String className)
This method will do its best to return an implementation type for a given classname.
|
Boolean |
getRenameMethodOverlaps() |
String |
getRenameMethodPrefix() |
Boolean |
getSkipOverlaps() |
Map<String,String> |
getTemplateTokens() |
Map<String,String> |
getXformTemplates() |
protected String |
methodDescription(javassist.CtMethod method) |
protected org.broadleafcommerce.common.extensibility.jpa.copy.DirectCopyClassTransformer.XFormParams |
reviewConditionalDirectCopyTransforms(String convertedClassName,
List<DirectCopyIgnorePattern> matchedPatterns)
Retrieves
DirectCopyTransformTypes that are conditionally/optionally included via properties file. |
protected org.broadleafcommerce.common.extensibility.jpa.copy.DirectCopyClassTransformer.XFormParams |
reviewDirectCopyTransformAnnotations(javassist.CtClass clazz,
boolean mySkipOverlaps,
boolean myRenameMethodOverlaps,
List<DirectCopyIgnorePattern> matchedPatterns)
Retrieves
DirectCopyTransformTypes that are placed as annotations on classes. |
protected void |
reviewTemplateTokens(List<DirectCopyIgnorePattern> matchedPatterns,
List<String> templates,
String val) |
void |
setIgnorePatterns(List<DirectCopyIgnorePattern> ignorePatterns) |
void |
setRenameMethodOverlaps(Boolean renameMethodOverlaps) |
void |
setRenameMethodPrefix(String renameMethodPrefix) |
void |
setSkipOverlaps(Boolean skipOverlaps) |
void |
setTemplateTokens(Map<String,String> templateTokens) |
void |
setXformTemplates(Map<String,String> xformTemplates) |
byte[] |
transform(ClassLoader loader,
String className,
Class<?> classBeingRedefined,
ProtectionDomain protectionDomain,
byte[] classfileBuffer) |
afterPropertiesSet, setPreLoadClassNamePatternsprotected SupportLogger logger
protected String moduleName
protected Boolean renameMethodOverlaps
protected String renameMethodPrefix
protected Boolean skipOverlaps
protected List<DirectCopyIgnorePattern> ignorePatterns
protected ConditionalDirectCopyTransformersManager conditionalDirectCopyTransformersManager
public DirectCopyClassTransformer(String moduleName)
public void compileJPAProperties(Properties props, Object key) throws Exception
compileJPAProperties in interface BroadleafClassTransformerExceptionpublic byte[] transform(ClassLoader loader, String className, Class<?> classBeingRedefined, ProtectionDomain protectionDomain, byte[] classfileBuffer) throws IllegalClassFormatException
transform in interface javax.persistence.spi.ClassTransformerIllegalClassFormatExceptionprotected org.broadleafcommerce.common.extensibility.jpa.copy.DirectCopyClassTransformer.XFormParams combineXFormParams(org.broadleafcommerce.common.extensibility.jpa.copy.DirectCopyClassTransformer.XFormParams defaultParams,
org.broadleafcommerce.common.extensibility.jpa.copy.DirectCopyClassTransformer.XFormParams conditionalParams)
DirectCopyClassTransformer.XFormParams together with
first passed in xformParama supercedes the second passed in parameter.defaultParams - conditionalParams - protected org.broadleafcommerce.common.extensibility.jpa.copy.DirectCopyClassTransformer.XFormParams reviewDirectCopyTransformAnnotations(javassist.CtClass clazz,
boolean mySkipOverlaps,
boolean myRenameMethodOverlaps,
List<DirectCopyIgnorePattern> matchedPatterns)
DirectCopyTransformTypes that are placed as annotations on classes.clazz - mySkipOverlaps - myRenameMethodOverlaps - matchedPatterns - protected org.broadleafcommerce.common.extensibility.jpa.copy.DirectCopyClassTransformer.XFormParams reviewConditionalDirectCopyTransforms(String convertedClassName, List<DirectCopyIgnorePattern> matchedPatterns)
DirectCopyTransformTypes that are conditionally/optionally included via properties file.convertedClassName - matchedPatterns - ConditionalDirectCopyTransformersManagerprotected void reviewTemplateTokens(List<DirectCopyIgnorePattern> matchedPatterns, List<String> templates, String val)
protected void buildClassLevelAnnotations(javassist.bytecode.ClassFile classFile,
javassist.bytecode.ClassFile templateClassFile,
javassist.bytecode.ConstPool constantPool)
throws javassist.NotFoundException
javassist.NotFoundExceptionprotected javassist.bytecode.annotation.Annotation getEntityListeners(javassist.bytecode.ConstPool constantPool,
javassist.bytecode.annotation.Annotation existingEntityListeners,
javassist.bytecode.annotation.Annotation templateEntityListeners)
protected String getImplementationType(String className)
protected String methodDescription(javassist.CtMethod method)
public Boolean getRenameMethodOverlaps()
public void setRenameMethodOverlaps(Boolean renameMethodOverlaps)
public String getRenameMethodPrefix()
public void setRenameMethodPrefix(String renameMethodPrefix)
public Boolean getSkipOverlaps()
public void setSkipOverlaps(Boolean skipOverlaps)
public List<DirectCopyIgnorePattern> getIgnorePatterns()
public void setIgnorePatterns(List<DirectCopyIgnorePattern> ignorePatterns)
Copyright © 2018. All rights reserved.