[rules-users] Hibernate Configuration with Drools 5.4
Chris Selwyn
chris at selwyn-family.me.uk
Tue Jun 19 07:03:49 EDT 2012
If you'll pardon the heresy...
It sounds to me like the whole thing can be solved with an appropriately loaded hashtable without any need for a rules engine at all!
Chris
On 19/06/2012 11:54, Wolfgang Laun wrote:
> On 19/06/2012, zeeshan <zeeshan.spring at gmail.com> wrote:
>> Hi Laune,
>>
>>
>>
>> Thanks very much for your response. We would like to try and implement
>> Option 3.
>>
>> We assume that the implementation involves setting up individual rows in
>> the
>> excel as a collection of objects and using the From keyword to look up the
>> output value/row we want based on the input parameter values.
> Huh? You leave the Excel data as it is except for throwing away the
> header lines.
>
>> Is it
>> possible for you to share the relevant code you have created to implement
>> this option?
> This is the rule:
>
> rule calculatePremium
> when
> $pfc: PremiumCalculatorFactBean( $age: age,
> $policyTerm: policyTerm,
> $interestRate: interestRate,
> $gender: gender,
> $smokingStatus: smokingStatus,
> $channel: channel,
> premiumRate == 0.0 )
> $p: Premium( age == $age,
> policyTerm == $policyTerm,
> interestRate == $interestRate,
> gender == $gender,
> smokingStatus == $smokingStatus,
> channel == $channel )
> then
> modify( $pfc ){ setPremiumRate( $p.getPremiumRate() ) }
> end
>
>
> And a few lines of Java code:
>
> private void makeRates( String csvPath ) throws Exception {
> File f = new File( csvPath );
> InputStream is = new FileInputStream( f );
> Reader rdr = new InputStreamReader( is );
> LineNumberReader lnrdr = new LineNumberReader( rdr );
>
> String line;
> while( (line = lnrdr.readLine()) != null ){
> if( line.charAt(0) == '"' ) continue;
> String[] tokens = line.split( ";" );
> if( tokens.length != 7 ) continue;
> int age = Integer.parseInt( tokens[0] );
> int policyTerm = Integer.parseInt( tokens[1] );
> int interestRate = Integer.parseInt( tokens[2] );
> String gender = tokens[3].substring( 1, 2 );
> String smokingStatus = tokens[4].substring( 1, 2 );
> int channel = Integer.parseInt( tokens[5] );
> double premiumRate = Double.parseDouble( tokens[6] );
>
> Premium p = new Premium( age, policyTerm, interestRate,
> gender, smokingStatus, channel, premiumRate );
> kSession.insert( p );
> }
> close( rdr );
> }
>
> -W
>
>
>> Thanks !
>>
>>
>> --
>> View this message in context:
>> http://drools.46999.n3.nabble.com/Hibernate-Configuration-with-Drools-5-4-tp4017981p4018051.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
>>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
More information about the rules-users
mailing list