2017-11-17 8 views
-1

私は流暢なAPIを使ってルールを生成しています。特定の条件が満たされたときに複数のアクションを実行するという要件があります。 lhsに複数の制約を追加できます。私は複数のrhsステートメントをどのように追加できるかを知る必要があります。複数のアクション文をdroolsに追加する流暢なAPI

PackageDescrBuilder pkgDescrBuilder = DescrFactory.newPackage(); 
     pkgDescrBuilder.name("com.test.drools").getDescr(); 
     RuleDescrBuilder ruleBuilder = pkgDescrBuilder.newRule().name("droolsTest"); 
     CEDescrBuilder<RuleDescrBuilder, AndDescr> lhsBuilder = ruleBuilder.lhs(); 
     PatternDescrBuilder<CEDescrBuilder<RuleDescrBuilder, AndDescr>> patternBuilder = lhsBuilder.pattern("DroolClass").id("$droolClass", false); 
     patternBuilder.constraint("nameObj.name matches \".*john.*\"").end(); 
     patternBuilder.constraint("nameObj.name == \"john snow\"").end(); 
     ruleBuilder.rhs("nameObj.gender = male").end(); 

rhsをもう1つ追加すると、既存のものを上書きします。私はrhsに複数のアクション文を書くのに助けが必要です。

答えて

0
StringBuilder sb = new StringBuilder(); 
sb.append("int a = 1;"); 
sb.append("int b = 2;"); 
ruleBuilder.rhs(sb.toString()).end(); 
+0

ええ!私はあまりにもこの考えを持っている..しかし、複数のステートメントを1つずつ追加する他の方法があるかどうかを知りたかった。とにかく..ありがとう.. –

+0

次回はあなたの質問にこれを入れてください。 – laune

関連する問題