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

java.lang.Object
  extended by org.drools.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, ClassDefinition coreDef)
           
static String getPropertyWrapperName(ClassDefinition trait, ClassDefinition core)
           
 T getProxy(K core, Class<?> trait)
          Deprecated. 
 T getProxy(K core, Class<?> trait, boolean logical)
           
static String getProxyName(ClassDefinition trait, ClassDefinition core)
           
 AbstractRuleBase getRuleBase()
           
static String getSoftFieldKey(String fieldName, Class fieldType, Class trait, Class core)
           
static int getStackSize(Method m)
           
static TraitFactory getTraitBuilderForKnowledgeBase(org.drools.KnowledgeBase kb)
           
 TripleFactory getTripleFactory()
           
static void invokeExtractor(org.mvel2.asm.MethodVisitor mv, String masterName, ClassDefinition trait, ClassDefinition core, FieldDefinition field)
           
static void invokeInjector(org.mvel2.asm.MethodVisitor mv, String masterName, ClassDefinition trait, ClassDefinition core, FieldDefinition field, boolean toNull, int pointer)
           
static void primitiveValue(org.mvel2.asm.MethodVisitor mv, String fieldType)
           
 void readExternal(ObjectInput in)
           
static void setMode(TraitFactory.VirtualPropertyMode newMode, org.drools.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.drools.KnowledgeBase kBase)

getTraitBuilderForKnowledgeBase

public static TraitFactory getTraitBuilderForKnowledgeBase(org.drools.KnowledgeBase kb)

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

@Deprecated
public T getProxy(K core,
                             Class<?> trait)
                            throws LogicalTypeInconsistencyException
Deprecated. 

Throws:
LogicalTypeInconsistencyException

getProxy

public T getProxy(K core,
                  Class<?> trait,
                  boolean logical)
                            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)

getSoftFieldKey

public static String getSoftFieldKey(String fieldName,
                                     Class fieldType,
                                     Class trait,
                                     Class core)

getCoreWrapper

public CoreWrapper<K> getCoreWrapper(Class<K> coreKlazz,
                                     ClassDefinition coreDef)

valueOf

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

primitiveValue

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

invokeExtractor

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

invokeInjector

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

buildSignature

public static String buildSignature(Method method)

getStackSize

public static int getStackSize(Method m)

getTripleFactory

public TripleFactory getTripleFactory()


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