Hi Edson,

Many thanks for you answer!
It is surprising that, on one hand, the "drools.default.packagebuilder.conf" file contains... :

drools.evaluator.soundslike = org.drools.base.evaluators.SoundslikeEvaluatorsDefinition

... and on the other hand, EvaluatorRegistry.java contains:

  this.addEvaluatorDefinition( new SoundslikeEvaluatorsDefinition() );

and the source code for the Soundslike operator contains:

public static final Operator SOUNDSLIKE = Operator.addOperatorToRegistry( "soundslike", false );

All of this, at first sight, let me puzzled on how to really plug a custom operator. I'll give a try with the property file!

Any intuition ;-) of how difficult it might be to modify (besides SuggestionCompletionEngine and HumanReadable) the business rule editor Eclipse plugin for a "gentle" integration of the operator?

Best regards,

Bruno.


Edson Tirelli a écrit :
    The instantiation is done automatically, based on configuration or
API call. More details in here:

http://blog.athico.com/2010/06/creating-pluggable-oprators.html

    But basically, for eclipse to pick it up, best to add to a
configuration file:

drools.evaluator.MyIdentifierForMyOperators = my.pkg.MyEvaluatorDefinition

    Please note that all drools operators are implemented like that
and wired through configuration file as seen here:

https://svn.jboss.org/repos/labs/labs/jbossrules/trunk/drools-compiler/src/main/resources/META-INF/drools.default.packagebuilder.conf

    So, adding your own custom operators is no different. Just define
your own configuration file in the META-INF directory of your
application package and it will work.

    Edson

2010/10/25 Swindells, Thomas <tswinde...@nds.com>:
For that to work the class also needs to be instantiated - ie it would only get 
created once something in eclipse has touched the class.

Thomas

-----Original Message-----
From: rules-users-boun...@lists.jboss.org [mailto:rules-users-
boun...@lists.jboss.org] On Behalf Of Edson Tirelli
Sent: 25 October 2010 14:58
To: Rules Users List
Subject: Re: [rules-users] Custom operator

   If you look at the implementation of one of the existing operators
(e.g. MatchesEvaluatorDefinition) you will see this in the beginning
of the class:

public static final Operator  MATCHES       =
Operator.addOperatorToRegistry( "matches", false );

   Do the same on your own implementations and it should be fine.

    Edson



2010/10/25 Bruno Freudensprung <bruno.freudenspr...@temis.com>:
Hello,

It seems that the logic behind the "operator" drop-down list comes from
the
"org.drools.ide.common.client.modeldriven.SuggestionCompletionEngine"
and "org.drools.eclipse.rulebuilder.modeldriven.HumanReadable" classes.
That's for the "rule authoring" perspective.
I've also seen that the business rule editor involves the DrlParser
class. So, in a "rule parsing" perspective, I guess I need to find a way
to register my custom operator into the EvaluatorRegistry used by the
Eclipse plugin (and I don't know where this can be done).

Do you think I am on the right track? Is there a risk that code
modifications will involve so many classes that, in the end, adding a
custom operator to the business rule editor will be a difficult task for
someone very new to Drools (like me)?

Thanks in advance,
Best regards,

Bruno.

Bruno Freudensprung a écrit :
Hello,

I'd like to implement a custom "lucenematches" operator that would
enable writing conditions like:
$d : Doc(text lucenematches "(foo AND bar) OR roam~0.8")

As I've taken a look at the following post on athico
(http://blog.athico.com/2009/05/imperfect-evaluations.html), and seen
that the appendix B of the "Drools JBoss Rules 5.0 Developer's Guide"
book that deals with custom operators, I am rather confident that I will
find my way in implementing my operator (if not, I'll post here again :-)).

However, I wonder if it will be possible to add my "lucenematches"
operator to the "operator" drop-down list of the Eclipse's Business Rule
Editor.
Does anyone have an idea?

Best regards,

Bruno.
_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


--
  Edson Tirelli
  JBoss Drools Core Development
  JBoss by Red Hat @ www.jboss.com

_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
**************************************************************************************
This message is confidential and intended only for the addressee. If you have 
received this message in error, please immediately notify the 
postmas...@nds.com and delete it from your system as well as any copies. The 
content of e-mails as well as traffic data may be monitored by NDS for 
employment and security purposes. To protect the environment please do not 
print this e-mail unless necessary.

NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18 4EX, 
United Kingdom. A company registered in England and Wales. Registered no. 
3080780. VAT no. GB 603 8808 40-00
**************************************************************************************

_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users





_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users

Reply via email to