KieBaseConfiguration kieBaseConfiguration = kieServices.newKieBaseConfiguration(); if (kieBaseConfigurationProperties != null) { for (Map.Entry<String, String> entry : kieBaseConfigurationProperties.entrySet()) {
@Before public void setUp() throws Exception { config = KieServices.Factory.get().newKieBaseConfiguration(); }
final RuleBaseConfiguration rbc = (RuleBaseConfiguration) KieServices.Factory.get().newKieBaseConfiguration(); rbc.setJittingThreshold(0); final KieBase kbase = new KieHelper().addContent(drl, ResourceType.DRL).build(rbc);
@Override public KieBaseConfiguration newKieBaseConfiguration(Properties properties, ClassLoader classLoader) { return kieServices.newKieBaseConfiguration(properties, classLoader); }
@Override public KieBaseConfiguration newKieBaseConfiguration() { return kieServices.newKieBaseConfiguration(); }
@Override public KieBaseConfiguration newKieBaseConfiguration(Properties arg0) { return kieServices.newKieBaseConfiguration(arg0); }
@Test(timeout = 10000L) public void testSequentialWithNoLoop() throws Exception { // BZ-1228098 String str = "package org.drools.compiler.test\n" + "import \n" + Message.class.getCanonicalName() + ";" + "rule R1 no-loop when\n" + " $s : String( )" + " $m : Message( )\n" + "then\n" + " modify($m) { setMessage($s) };\n" + "end\n"; KieServices ks = KieServices.Factory.get(); KieFileSystem kfs = ks.newKieFileSystem(); kfs.write("src/main/resources/r0.drl", str); KieBuilder kieBuilder = ks.newKieBuilder( kfs ).buildAll(); Results results = kieBuilder.getResults(); if (results.hasMessages( org.kie.api.builder.Message.Level.ERROR)) { throw new RuntimeException(results.getMessages().toString()); } KieContainer kieContainer = ks.newKieContainer( ks.getRepository().getDefaultReleaseId() ); KieBaseConfiguration kieBaseConf = ks.newKieBaseConfiguration(); kieBaseConf.setOption( SequentialOption.YES ); StatelessKieSession sequentialKsession = kieContainer.newKieBase( kieBaseConf ).newStatelessKieSession(); List result = (List) sequentialKsession.execute( CommandFactory.newInsertElements(Arrays.asList("test", new Message()))); assertEquals( 2, result.size() ); StatelessKieSession ksession = kieContainer.getKieBase().newStatelessKieSession(); result = (List) ksession.execute( CommandFactory.newInsertElements(Arrays.asList("test", new Message()))); assertEquals( 2, result.size() ); }
protected KieSession getSessionFromString( String drlString, KieBaseConfiguration kbConf ) { KieHelper kieHelper = new KieHelper(); kieHelper.addContent( drlString, ResourceType.DRL ); Results res = kieHelper.verify(); if ( res.hasMessages( Message.Level.ERROR ) ) { fail( res.getMessages( Message.Level.ERROR ).toString() ); } if ( kbConf == null ) { kbConf = KieServices.Factory.get().newKieBaseConfiguration(); } kbConf.setOption( EqualityBehaviorOption.EQUALITY ); KieBase kieBase = kieHelper.build( kbConf ); KieSessionConfiguration ksConf = KnowledgeBaseFactory.newKnowledgeSessionConfiguration(); ((SessionConfiguration) ksConf).setBeliefSystemType( BeliefSystemType.DEFEASIBLE ); return kieBase.newKieSession( ksConf, null ); }
KieServices ks = KieServices.Factory.get(); KieBaseConfiguration kbConf = ks.newKieBaseConfiguration(); kbConf.setOption( RuleEngineOption.RETEOO ); KieBase kieBase = kieContainer.newKieBase( kbConf );
public KieBase build(KieBaseOption... options) { KieContainer kieContainer = getKieContainer(); if (options == null || options.length == 0) { return kieContainer.getKieBase(); } KieBaseConfiguration kieBaseConf = ks.newKieBaseConfiguration(); for (KieBaseOption option : options) { kieBaseConf.setOption(option); } return kieContainer.newKieBase(kieBaseConf); }
import org.kie.api.*; import org.kie.api.builder.*; import org.kie.api.runtime.*; KieServices ks = KieServices.Factory.get(); KieFileSystem kfs = ks.newKieFileSystem(); FileInputStream fis = new FileInputStream( CTES.RULES ); kfs.write( "src/main/resources/sale.drl", ks.getResources().newInputStreamResource( fis ) ); KieBuilder kieBuilder = ks.newKieBuilder( kfs ).buildAll(); Results results = kieBuilder.getResults(); if( results.hasMessages( Message.Level.ERROR ) ){ System.out.println( results.getMessages() ); throw new IllegalStateException( "### errors ###" ); } KieContainer kieContainer = ks.newKieContainer( ks.getRepository().getDefaultReleaseId() ); KieBaseConfiguration config = ks.newKieBaseConfiguration(); config.setOption( EventProcessingOption.STREAM ); KieBase kieBase = kieContainer.newKieBase( config ); KieSession kieSession = kieBase.newKieSession();
public static void main(String[] args) throws InterruptedException { KieServices kieServices = KieServices.Factory.get(); KieBaseConfiguration config = kieServices.newKieBaseConfiguration(); config.setOption(EventProcessingOption.STREAM); KieContainer container = kieServices.getKieClasspathContainer(); // KieBase kieBase = container.getKieBase("test-cep"); KieBase kieBase = container.newKieBase("test-cep",config); KieSession kieSession = kieBase.newKieSession(); Person p1 = new Person(1,"Tom"); Person p2 = new Person(2,"Lucy"); kieSession.insert(p1); Thread.sleep(3000); kieSession.insert(p2); int count = kieSession.fireAllRules(); System.out.println("Fire " + count + " rules!"); } }
properties.setProperty(DROOLS_EVENT_PROCESSING_MODE, EVENT_PROCESSING_MODE_STREAM); KieBaseConfiguration kieBaseConfiguration = KieServices.Factory.get().newKieBaseConfiguration(properties); return (kieContainer.newKieBase(kieBaseConfiguration));