[rules-users] Collect with same value

Wolfgang Laun wolfgang.laun at gmail.com
Wed Aug 10 13:30:30 EDT 2011


rule "get big shapes by color"
when
  $map: Map()
    from accumulate ( $shape: Shapes( $color: color, size > 5 ),
      init( Map m = new HashMap(); ),
      action( List list = m.get( $color );
                 if( list == null ) list = new ArrayList();
                 list.add( shape ); ),
      result( m ) )
then
   // process $map to get all lists of same color
end

Untested.

-W

On 10 August 2011 17:20, wendy <w.mungovan at yahoo.com> wrote:

> Hi,
>  I'm trying to write the following rule but am having some trouble.
>
>  We have a object say Shape and which has attributes size and color.  I
> want to get a list of all shapes with the same color that have size > 5.
> How can I make sure the color is the same for all objects in the collect
> without having different rules for 'red', 'green'...?
>
> Thank you,
> Wendy
>
>
> --
> View this message in context:
> http://drools.46999.n3.nabble.com/Collect-with-same-value-tp3242904p3242904.html
> Sent from the Drools: User forum mailing list archive at Nabble.com.
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20110810/3d468464/attachment.html 


More information about the rules-users mailing list