Drools :: Core 6.0.0.Beta5

org.drools.core.factmodel.traits
Class TraitFactory<T extends Thing<K>,K extends TraitableBean>

java.lang.Object
  extended by org.drools.core.factmodel.traits.TraitFactory<T,K>
All Implemented Interfaces:
Externalizable, Serializable, org.mvel2.asm.Opcodes

public class TraitFactory<T extends Thing<K>,K extends TraitableBean>
extends Object
implements org.mvel2.asm.Opcodes, Externalizable

See Also:
Serialized Form

Nested Class Summary
static class TraitFactory.VirtualPropertyMode
           
 
Field Summary
static String SUFFIX
           
 
Fields inherited from interface org.mvel2.asm.Opcodes
AALOAD, AASTORE, ACC_ABSTRACT, ACC_ANNOTATION, ACC_BRIDGE, ACC_DEPRECATED, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_TRANSIENT, ACC_VARARGS, ACC_VOLATILE, ACONST_NULL, ALOAD, ANEWARRAY, ARETURN, ARRAYLENGTH, 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, 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, INVOKEDYNAMIC_OWNER, 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, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6, V1_7
 
Constructor Summary
TraitFactory()
           
 
Method Summary
static String buildSignature(Method method)
           
 CoreWrapper<K> getCoreWrapper(Class<K> coreKlazz)
           
static String getPropertyWrapperName(ClassDefinition trait, ClassDefinition core)
           
 T getProxy(K core, Class<?> trait)
           
static String getProxyName(ClassDefinition trait, ClassDefinition core)
           
 AbstractRuleBase getRuleBase()
           
static int getStackSize(Method m)
           
 TripleFactory getTripleFactory()
           
static void invokeExtractor(org.mvel2.asm.MethodVisitor mv, String masterName, ClassDefinition source, ClassDefinition target, FieldDefinition field)
           
static void invokeInjector(org.mvel2.asm.MethodVisitor mv, String masterName, ClassDefinition source, ClassDefinition target, FieldDefinition field, boolean toNull, int pointer)
           
static void promote(org.mvel2.asm.MethodVisitor mv, String fieldType)
           
 void readExternal(ObjectInput in)
           
static void setMode(TraitFactory.VirtualPropertyMode newMode, org.kie.internal.KnowledgeBase kBase)
           
 void setRuleBase(AbstractRuleBase ruleBase)
           
static void valueOf(org.mvel2.asm.MethodVisitor mv, String type)
           
 void writeExternal(ObjectOutput out)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SUFFIX

public static final String SUFFIX
See Also:
Constant Field Values
Constructor Detail

TraitFactory

public TraitFactory()
Method Detail

setMode

public static void setMode(TraitFactory.VirtualPropertyMode newMode,
                           org.kie.internal.KnowledgeBase kBase)

writeExternal

public void writeExternal(ObjectOutput out)
                   throws IOException
Specified by:
writeExternal in interface Externalizable
Throws:
IOException

readExternal

public void readExternal(ObjectInput in)
                  throws IOException,
                         ClassNotFoundException
Specified by:
readExternal in interface Externalizable
Throws:
IOException
ClassNotFoundException

getProxy

public T getProxy(K core,
                  Class<?> trait)
                            throws LogicalTypeInconsistencyException
Throws:
LogicalTypeInconsistencyException

getRuleBase

public AbstractRuleBase getRuleBase()

setRuleBase

public void setRuleBase(AbstractRuleBase ruleBase)

getProxyName

public static String getProxyName(ClassDefinition trait,
                                  ClassDefinition core)

getPropertyWrapperName

public static String getPropertyWrapperName(ClassDefinition trait,
                                            ClassDefinition core)

getCoreWrapper

public CoreWrapper<K> getCoreWrapper(Class<K> coreKlazz)

valueOf

public static void valueOf(org.mvel2.asm.MethodVisitor mv,
                           String type)

promote

public static void promote(org.mvel2.asm.MethodVisitor mv,
                           String fieldType)

invokeExtractor

public static void invokeExtractor(org.mvel2.asm.MethodVisitor mv,
                                   String masterName,
                                   ClassDefinition source,
                                   ClassDefinition target,
                                   FieldDefinition field)

invokeInjector

public static void invokeInjector(org.mvel2.asm.MethodVisitor mv,
                                  String masterName,
                                  ClassDefinition source,
                                  ClassDefinition target,
                                  FieldDefinition field,
                                  boolean toNull,
                                  int pointer)

buildSignature

public static String buildSignature(Method method)

getStackSize

public static int getStackSize(Method m)

getTripleFactory

public TripleFactory getTripleFactory()

Drools :: Core 6.0.0.Beta5

Copyright © 2001-2013 JBoss by Red Hat. All Rights Reserved.