I'd second this idea, and to get around the inconcenience of inserting the Quantity
objects from the calling application, use a rule that fires once on initialization.
rule
no-loop true
when
//No condition
then
insert(new Quantity("m", 2));
end
This rule should fire first. You could also put it in it's own agenda-group (call it
"initialization" or some such) and set focus to that group when starting.
rule
agenda-group "initialization"
no-loop true
when
//No condition
then
insert(new Quantity("m", 2));
drools.setFocus("whatever_your_next_group_is");
end
--- On Wed, 2/25/09, Mauricio Salatino <salaboy(a)gmail.com> wrote:
From: Mauricio Salatino <salaboy(a)gmail.com>
Subject: Re: [rules-users] Creating objects in WHEN clause
To: "Rules Users List" <rules-users(a)lists.jboss.org>
Date: Wednesday, February 25, 2009, 11:40 AM
How about :
WHEN
$quantity: Quantity(value == 2, unit == "m")
$Person($height == $quantity:)
then
...
On Wed, Feb 25, 2009 at 2:27 PM, David Boaz
<davidb(a)dbmotion.com> wrote:
>
> In my application, we often compare the fact's
field values against a known
> object. For example:
> WHEN person(height> new Quantity(2, "m"))
// the height is greater than 2
> meters.
> will DROOLS create a "singleton" Quantity
object, or will it create one
> object for each fact evaluation?
>
> We consider using anoter approach, using GLOBALS.
Then, the Quantity object
> will be created applicatively, and passed by the API
to the engine.
> something like:
> GLOBAL Quantity 2meters
> WHEN person(height > 2meters)
> But this approach is combersom, because the rule
author has to define part
> of the information in the calling application, and
part in the rule.
>
> Do you have a good practice how to handle these
situations?
>
> Thanks, David
> --
> View this message in context:
http://www.nabble.com/Creating-objects-in-WHEN-clause-tp22207616p22207616...
> Sent from the drools - user mailing list archive at
Nabble.com.
>
> _______________________________________________
> rules-users mailing list
> rules-users(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/rules-users
>
--
- Salatino Mauricio -
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users