[jboss-user] [JBoss Seam] - Re: annotation for Drools
mark.proctor@jboss.com
do-not-reply at jboss.com
Mon Jul 16 14:51:10 EDT 2007
"ellenzhao" wrote : A few annotations for Drools might be handy. Currently there is a good candidates in my mind: @DynamicSlot
|
| Once Seam detects there is any property setter in an entity class annotated with @DynamicSlot, it could automatically generate the boilerplate code like shown in the Drools manual. Or if not generate code, at least manipulate the bytecode....
|
|
I looked at a weaving type framework for drools, some of the code is even still be in the codebase (although not used or finished).
http://anonsvn.labs.jboss.com/labs/jbossrules/trunk/drools-core/src/main/java/org/drools/spi/JavaFact.java
http://anonsvn.labs.jboss.com/labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/JavaFactRegistryEntry.java
http://anonsvn.labs.jboss.com/labs/jbossrules/trunk/drools-core/src/main/java/org/drools/base/DelegateJavaFactHandler.java
The idea was that the microcontainer would have a configuration of multiple named rulebases and working memories and a settings file would specify which working memories would monitor (auto insert on creation and update on modifications) which facts. AOP would then weave into the object generating the correct notification code; using the jboss pojo cache approach to have tx.begin() and tx.end() any facts that are modified in that block are removed from any monitoring working memories using session.modifyRetract(); and then at the end when tx.end() is called we call session.modifyInsert(); on each modified object. In future releases if we know the changed fields, we can make engine re-evaluation more efficient, so we might be able to use that information too.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4064682#4064682
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4064682
More information about the jboss-user
mailing list