public abstract class AbstractTraitFactory<T extends org.drools.core.factmodel.traits.Thing<K>,K extends org.drools.core.factmodel.traits.TraitableBean> extends Object implements org.mvel2.asm.Opcodes, Externalizable
| Modifier and Type | Field and Description |
|---|---|
protected Map<String,Constructor> |
factoryCache |
protected VirtualPropertyMode |
mode |
protected static String |
PACKAGE |
static String |
SUFFIX |
protected Map<Class,Class<? extends org.drools.core.factmodel.traits.CoreWrapper<?>>> |
wrapperCache |
AALOAD, AASTORE, ACC_ABSTRACT, ACC_ANNOTATION, ACC_BRIDGE, ACC_DEPRECATED, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_MANDATED, ACC_MODULE, ACC_NATIVE, ACC_OPEN, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STATIC_PHASE, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_TRANSIENT, ACC_TRANSITIVE, ACC_VARARGS, ACC_VOLATILE, ACONST_NULL, ALOAD, ANEWARRAY, ARETURN, ARRAYLENGTH, ASM4, ASM5, ASM6, ASM7, ASTORE, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DMUL, DNEG, DOUBLE, DREM, DRETURN, DSTORE, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F_APPEND, F_CHOP, F_FULL, F_NEW, F_SAME, F_SAME1, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FLOAT, FMUL, FNEG, FREM, FRETURN, FSTORE, FSUB, GETFIELD, GETSTATIC, GOTO, H_GETFIELD, H_GETSTATIC, H_INVOKEINTERFACE, H_INVOKESPECIAL, H_INVOKESTATIC, H_INVOKEVIRTUAL, H_NEWINVOKESPECIAL, H_PUTFIELD, H_PUTSTATIC, I2B, I2C, I2D, I2F, I2L, I2S, IADD, IALOAD, IAND, IASTORE, ICONST_0, ICONST_1, ICONST_2, ICONST_3, ICONST_4, ICONST_5, ICONST_M1, IDIV, IF_ACMPEQ, IF_ACMPNE, IF_ICMPEQ, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ICMPLT, IF_ICMPNE, IFEQ, IFGE, IFGT, IFLE, IFLT, IFNE, IFNONNULL, IFNULL, IINC, ILOAD, IMUL, INEG, INSTANCEOF, INTEGER, INVOKEDYNAMIC, INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC, INVOKEVIRTUAL, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISUB, IUSHR, IXOR, JSR, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDIV, LLOAD, LMUL, LNEG, LONG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, NULL, POP, POP2, PUTFIELD, PUTSTATIC, RET, RETURN, SALOAD, SASTORE, SIPUSH, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, TOP, UNINITIALIZED_THIS, V_PREVIEW, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6, V1_7, V1_8, V10, V11, V12, V9| Constructor and Description |
|---|
AbstractTraitFactory() |
| Modifier and Type | Method and Description |
|---|---|
<K> org.drools.core.factmodel.traits.TraitableBean<K,org.drools.core.factmodel.traits.CoreWrapper<K>> |
asTraitable(K core,
org.drools.core.factmodel.ClassDefinition coreDef) |
org.drools.core.factmodel.ClassDefinition |
buildClassDefinition(Class<?> klazz,
Class<?> wrapperClass) |
protected <K> Class<org.drools.core.factmodel.traits.CoreWrapper<K>> |
buildCoreWrapper(Class<K> coreKlazz,
org.drools.core.factmodel.ClassDefinition coreDef) |
protected Class<T> |
buildProxyClass(K core,
Class<?> trait) |
static String |
buildSignature(Method method) |
protected Constructor<T> |
cacheConstructor(String key,
K core,
Class<?> trait) |
protected static boolean |
excludeFromShadowing(Method m,
org.drools.core.factmodel.ClassDefinition cdef) |
protected abstract org.drools.core.base.ClassFieldAccessorStore |
getClassFieldAccessorStore() |
protected abstract org.drools.core.reteoo.KieComponentFactory |
getComponentFactory() |
<K> org.drools.core.factmodel.traits.CoreWrapper<K> |
getCoreWrapper(Class<K> coreKlazz,
org.drools.core.factmodel.ClassDefinition coreDef) |
protected abstract org.drools.core.util.HierarchyEncoder |
getHierarchyEncoder() |
protected static String |
getKey(Class core,
Class trait) |
static String |
getPropertyWrapperName(org.drools.core.factmodel.ClassDefinition trait,
org.drools.core.factmodel.ClassDefinition core) |
T |
getProxy(K core,
Class<?> trait)
Deprecated.
|
T |
getProxy(K core,
Class<?> trait,
boolean logical) |
static String |
getProxyName(org.drools.core.factmodel.ClassDefinition trait,
org.drools.core.factmodel.ClassDefinition core) |
protected abstract ClassLoader |
getRootClassLoader() |
static int |
getStackSize(Method m) |
protected abstract TraitRegistryImpl |
getTraitRegistry() |
protected abstract org.drools.core.util.TripleFactory |
getTripleFactory() |
protected abstract org.drools.core.util.TripleStore |
getTripleStore() |
static void |
invokeExtractor(org.mvel2.asm.MethodVisitor mv,
String masterName,
org.drools.core.factmodel.ClassDefinition core,
org.drools.core.factmodel.FieldDefinition field) |
static void |
invokeInjector(org.mvel2.asm.MethodVisitor mv,
String masterName,
org.drools.core.factmodel.ClassDefinition core,
org.drools.core.factmodel.FieldDefinition field,
boolean toNull,
int pointer) |
static boolean |
isCompatible(Method m,
Method q) |
protected static boolean |
isGetter(Method m,
org.drools.core.factmodel.ClassDefinition cdef) |
protected static boolean |
isSetter(Method m,
org.drools.core.factmodel.ClassDefinition cdef) |
static void |
primitiveValue(org.mvel2.asm.MethodVisitor mv,
String fieldType) |
void |
readExternal(ObjectInput in) |
protected abstract Class<?> |
registerAndLoadTypeDefinition(String proxyName,
byte[] proxy) |
protected static void |
setMode(VirtualPropertyMode newMode,
org.drools.core.reteoo.KieComponentFactory rcf) |
static void |
valueOf(org.mvel2.asm.MethodVisitor mv,
String type) |
void |
writeExternal(ObjectOutput out) |
protected VirtualPropertyMode mode
public static final String SUFFIX
protected static final String PACKAGE
protected Map<String,Constructor> factoryCache
protected static void setMode(VirtualPropertyMode newMode, org.drools.core.reteoo.KieComponentFactory rcf)
public void writeExternal(ObjectOutput out) throws IOException
writeExternal in interface ExternalizableIOExceptionpublic void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
readExternal in interface ExternalizableIOExceptionClassNotFoundException@Deprecated public T getProxy(K core, Class<?> trait) throws LogicalTypeInconsistencyException
public T getProxy(K core, Class<?> trait, boolean logical) throws LogicalTypeInconsistencyException
protected Constructor<T> cacheConstructor(String key, K core, Class<?> trait)
public static String getProxyName(org.drools.core.factmodel.ClassDefinition trait, org.drools.core.factmodel.ClassDefinition core)
public static String getPropertyWrapperName(org.drools.core.factmodel.ClassDefinition trait, org.drools.core.factmodel.ClassDefinition core)
public <K> org.drools.core.factmodel.traits.CoreWrapper<K> getCoreWrapper(Class<K> coreKlazz, org.drools.core.factmodel.ClassDefinition coreDef)
public <K> org.drools.core.factmodel.traits.TraitableBean<K,org.drools.core.factmodel.traits.CoreWrapper<K>> asTraitable(K core,
org.drools.core.factmodel.ClassDefinition coreDef)
public org.drools.core.factmodel.ClassDefinition buildClassDefinition(Class<?> klazz, Class<?> wrapperClass) throws IOException
IOExceptionprotected <K> Class<org.drools.core.factmodel.traits.CoreWrapper<K>> buildCoreWrapper(Class<K> coreKlazz, org.drools.core.factmodel.ClassDefinition coreDef) throws IOException, ClassNotFoundException
IOExceptionClassNotFoundExceptionpublic static void valueOf(org.mvel2.asm.MethodVisitor mv,
String type)
public static void primitiveValue(org.mvel2.asm.MethodVisitor mv,
String fieldType)
public static void invokeExtractor(org.mvel2.asm.MethodVisitor mv,
String masterName,
org.drools.core.factmodel.ClassDefinition core,
org.drools.core.factmodel.FieldDefinition field)
public static void invokeInjector(org.mvel2.asm.MethodVisitor mv,
String masterName,
org.drools.core.factmodel.ClassDefinition core,
org.drools.core.factmodel.FieldDefinition field,
boolean toNull,
int pointer)
public static int getStackSize(Method m)
protected static boolean excludeFromShadowing(Method m, org.drools.core.factmodel.ClassDefinition cdef)
protected static boolean isGetter(Method m, org.drools.core.factmodel.ClassDefinition cdef)
protected static boolean isSetter(Method m, org.drools.core.factmodel.ClassDefinition cdef)
protected abstract Class<?> registerAndLoadTypeDefinition(String proxyName, byte[] proxy) throws ClassNotFoundException
ClassNotFoundExceptionprotected abstract ClassLoader getRootClassLoader()
protected abstract org.drools.core.reteoo.KieComponentFactory getComponentFactory()
protected abstract TraitRegistryImpl getTraitRegistry()
protected abstract org.drools.core.util.HierarchyEncoder getHierarchyEncoder()
protected abstract org.drools.core.util.TripleStore getTripleStore()
protected abstract org.drools.core.util.TripleFactory getTripleFactory()
protected abstract org.drools.core.base.ClassFieldAccessorStore getClassFieldAccessorStore()
Copyright © 2001–2021 JBoss by Red Hat. All rights reserved.