Package org.drools.mvel.asm
Class ClassFieldAccessorFactory
java.lang.Object
org.drools.mvel.asm.ClassFieldAccessorFactory
- All Implemented Interfaces:
Comparable<KieService>,FieldAccessorFactory,KieService
This generates subclasses of BaseClassFieldExtractor to provide field extractors.
This should not be used directly, but via ClassFieldExtractor (which ensures that it is
all nicely serializable).
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.drools.core.base.FieldAccessorFactory
FieldAccessorFactory.Holder -
Field Summary
Fields inherited from interface org.kie.api.internal.utils.KieService
UNDEFINED -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected static org.mvel2.asm.ClassWriterbuildClassHeader(Class<?> superClass, String className) Builds the class headerprotected static voidbuildGetMethod(Class<?> originalClass, String className, Class<?> superClass, Method getterMethod, org.mvel2.asm.ClassWriter cw) Creates the proxy reader method for the given methodprotected static voidbuildSetMethod(Class<?> originalClass, String className, Class<?> superClass, Method setterMethod, Class<?> fieldType, org.mvel2.asm.ClassWriter cw) Creates the set method for the given field definitionorg.drools.base.base.BaseClassFieldReadergetClassFieldReader(Class<?> clazz, String fieldName, ClassFieldAccessorCache.CacheEntry cache) getClassFieldWriter(Class<?> clazz, String fieldName, ClassFieldAccessorCache.CacheEntry cache) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.kie.api.internal.utils.KieService
compareTo, servicePriority, serviceTag
-
Constructor Details
-
ClassFieldAccessorFactory
public ClassFieldAccessorFactory()
-
-
Method Details
-
getClassFieldReader
public org.drools.base.base.BaseClassFieldReader getClassFieldReader(Class<?> clazz, String fieldName, ClassFieldAccessorCache.CacheEntry cache) - Specified by:
getClassFieldReaderin interfaceFieldAccessorFactory
-
getClassFieldWriter
public BaseClassFieldWriter getClassFieldWriter(Class<?> clazz, String fieldName, ClassFieldAccessorCache.CacheEntry cache) - Specified by:
getClassFieldWriterin interfaceFieldAccessorFactory
-
buildClassHeader
Builds the class header -
buildGetMethod
protected static void buildGetMethod(Class<?> originalClass, String className, Class<?> superClass, Method getterMethod, org.mvel2.asm.ClassWriter cw) Creates the proxy reader method for the given method -
buildSetMethod
protected static void buildSetMethod(Class<?> originalClass, String className, Class<?> superClass, Method setterMethod, Class<?> fieldType, org.mvel2.asm.ClassWriter cw) Creates the set method for the given field definition
-