[rules-users] Using field values of an ENUM in the decision table

Visu Nageswaran visu.nageswaran at in.ibm.com
Fri Jul 10 08:29:13 EDT 2009


Modifying the eval expression to include a check for NULL got it working:

when
$c: Computer()
eval( $c.getMemory()!=null && $c.getMemory().getValue().equals("512") )
then
System.out.println("XXXXXXXX THIS IS IT XXXXXXXXXXX" );
end



Visu Nageswaran wrote:
> 
> Hello, I am posting a simpler version of the actual requirement: 
> Class Computer has a field 'memory' of the enum type 'Memory' which is
> defined over integer values 
> - - - - - - - - - - 
> public enum Memory{ 
> MEM1(512), MEM2(1024), MEM3(2048); 
> public int value; 
> Memory(int i){this.value = i;} 
> public int getValue(){return value;} 
> } 
> - - - - - - - - - - 
> There is a requirement to model a decision table between memory and price 
> I am looking for the field constraint on the memory field to match to the
> values:
>  
> memory.???--> Price 
> 512 --> 100 
> 1024 --> 200 
> 2048 --> 300 
> 
> I tried memory.name, memory.name(), memory.value, memory.getValue(); Does
> this have to be done using template expressions say something like memory
> == Memory.reverseLookupEnum($param)
> 
> Any help, pointers in this regard would be appreciated. thanks. 
> -Visu
> 

-- 
View this message in context: http://www.nabble.com/Using-field-values-of-an-ENUM-in-the-decision-table-tp24391112p24426652.html
Sent from the drools - user mailing list archive at Nabble.com.




More information about the rules-users mailing list