Examples of KieServices


Examples of org.kie.api.KieServices

public class IncrementalCompilationTest {

    @Test
    public void testDuplicateXLSResources() throws Exception {

        KieServices ks = KieServices.Factory.get();

        KieFileSystem kfs = ks.newKieFileSystem();

        InputStream in1 = null;
        InputStream in2 = null;

        try {

            //Add XLS decision table
            in1 = this.getClass().getResourceAsStream( "incrementalBuild.dtable.xls" );
            kfs.write( "src/main/resources/incrementalBuild1.dtable.xls",
                       KieServices.Factory.get().getResources().newInputStreamResource( in1 ) );

            //Add the same XLS decision table again as a different resource
            in2 = this.getClass().getResourceAsStream( "incrementalBuild.dtable.xls" );
            kfs.write( "src/main/resources/incrementalBuild2.dtable.xls",
                       KieServices.Factory.get().getResources().newInputStreamResource( in2 ) );

            //Check errors on a full build
            assertEquals( 2, ks.newKieBuilder( kfs ).buildAll().getResults().getMessages().size() );

        } finally {
            if ( in1 != null ) {
                in1.close();
            }
View Full Code Here

Examples of org.kie.api.KieServices

    }

    @Test
    public void testIncrementalCompilationDuplicateXLSResources() throws Exception {

        KieServices ks = KieServices.Factory.get();

        KieFileSystem kfs = ks.newKieFileSystem();

        InputStream in1 = null;
        InputStream in2 = null;

        try {

            //Add XLS decision table
            in1 = this.getClass().getResourceAsStream( "incrementalBuild.dtable.xls" );
            kfs.write( "src/main/resources/incrementalBuild1.dtable.xls",
                       KieServices.Factory.get().getResources().newInputStreamResource( in1 ) );

            //Expect no errors
            KieBuilder kieBuilder = ks.newKieBuilder( kfs ).buildAll();
            assertEquals( 0, kieBuilder.getResults().getMessages( org.kie.api.builder.Message.Level.ERROR ).size() );

            //Add the same XLS decision table again as a different resource
            in2 = this.getClass().getResourceAsStream( "incrementalBuild.dtable.xls" );
            kfs.write( "src/main/resources/incrementalBuild2.dtable.xls",
                       KieServices.Factory.get().getResources().newInputStreamResource( in2 ) );
            IncrementalResults addResults = ( (InternalKieBuilder) kieBuilder ).createFileSet( "src/main/resources/incrementalBuild2.dtable.xls" ).build();

            //Expect duplicate rule errors
            assertEquals( 1, addResults.getAddedMessages().size() );
            assertEquals( 0, addResults.getRemovedMessages().size() );

            //Check errors on a full build
            assertEquals( 2, ks.newKieBuilder( kfs ).buildAll().getResults().getMessages().size() );

        } finally {
            if ( in1 != null ) {
                in1.close();
            }
View Full Code Here

Examples of org.kie.api.KieServices

    private SessionPseudoClock clock;

    @Before
    public void init() {

        final KieServices ks = KieServices.Factory.get();
        KieFileSystem kfs = ks.newKieFileSystem();
        KieModuleModel kmodule = ks.newKieModuleModel();

        KieBaseModel baseModel = kmodule.newKieBaseModel("defaultKBase")
                                        .setDefault(true)
                                        .setEventProcessingMode(EventProcessingOption.STREAM);
        baseModel.newKieSessionModel("defaultKSession")
                 .setDefault(true)
                 .setClockType(ClockTypeOption.get("pseudo"));

        kfs.writeKModuleXML(kmodule.toXML());
        kfs.write(ks.getResources().newClassPathResource("calendar_timer.xls", this.getClass())); // README when path is set then test works
        KieBuilder kieBuilder = ks.newKieBuilder( kfs ).buildAll();
        assertEquals( 0, kieBuilder.getResults().getMessages( org.kie.api.builder.Message.Level.ERROR ).size() );

        ksession = ks.newKieContainer(ks.getRepository().getDefaultReleaseId()).newKieSession();

        clock = ksession.getSessionClock();
    }
View Full Code Here

Examples of org.kie.api.KieServices

                     "\"Delayed rule\",\"int: 1s 0ms\",,\"Delayed rule\",\n" +
                     "\"Repetitive rule\",\"int: 0ms 100\",,\"Repetitive rule\",\n" +
                     "\"Repetitive delayed rule\",\"int: 1s 100ms\",,\"Repetitive delayed rule\",\n" +
                     "\"Cron rule\",\"cron: */1 * * * * ?\",,\"Cron rule\",\n";

        KieServices ks = KieServices.Factory.get();

        KieFileSystem kfs = ks.newKieFileSystem().write( "src/main/resources/r1.csv", csv );
        Results results = ks.newKieBuilder( kfs ).buildAll().getResults();
        assertFalse(results.getMessages().isEmpty());
    }
View Full Code Here

Examples of org.kie.api.KieServices

        Results results = ks.newKieBuilder( kfs ).buildAll().getResults();
        assertFalse(results.getMessages().isEmpty());
    }

    private void testNonEmptyKieBase(final String kieBaseName) throws Exception {
       KieServices ks = KieServices.Factory.get();
       KieContainer kContainer = ks.getKieClasspathContainer();

       KieBase kieBase = kContainer.getKieBase(kieBaseName);

       assertNotNull("KieBase not found", kieBase);
       assertEquals("Unexpected number of KiePackages in KieBase", 1, kieBase.getKiePackages().size());
View Full Code Here

Examples of org.kie.api.KieServices

        assertEquals( "Old man stilton",
                      list.get( 0 ) );
    }

    private KieSession getKieSession(Resource dt) {
        KieServices ks = KieServices.Factory.get();

        KieFileSystem kfs = ks.newKieFileSystem().write( dt );
        KieBuilder kb = ks.newKieBuilder( kfs ).buildAll();
        assertTrue( kb.getResults().getMessages().isEmpty() );

        // get the session
        KieSession ksession = ks.newKieContainer(ks.getRepository().getDefaultReleaseId()).newKieSession();
        return ksession;
    }
View Full Code Here

Examples of org.kie.api.KieServices

public class DecimalSeparatorTest {

    private KieSession ksession;

    public void init() {
        final KieServices ks = KieServices.Factory.get();
        KieFileSystem kfs = ks.newKieFileSystem();
        KieModuleModel kmodule = ks.newKieModuleModel();

        KieBaseModel baseModel = kmodule.newKieBaseModel( "defaultKBase" ).setDefault( true );
        baseModel.newKieSessionModel( "defaultKSession" ).setDefault( true );

        kfs.writeKModuleXML( kmodule.toXML() );
        kfs.write( ks.getResources().newClassPathResource( "decimalSeparator.xls",
                                                           this.getClass() ) ); // README when path is set then test works
        KieBuilder kieBuilder = ks.newKieBuilder( kfs ).buildAll();
        assertEquals( 0,
                      kieBuilder.getResults().getMessages( org.kie.api.builder.Message.Level.ERROR ).size() );

        ksession = ks.newKieContainer( ks.getRepository().getDefaultReleaseId() ).newKieSession();
    }
View Full Code Here

Examples of org.kie.api.KieServices

        assertEquals( "Old man stilton",
                      list.get( 0 ) );
    }

    private KieSession getKieSession(Resource dt) {
        KieServices ks = KieServices.Factory.get();

        KieFileSystem kfs = ks.newKieFileSystem().write( dt );
        KieBuilder kb = ks.newKieBuilder( kfs ).buildAll();
        assertTrue( kb.getResults().getMessages().isEmpty() );

        // get the session
        KieSession ksession = ks.newKieContainer(ks.getRepository().getDefaultReleaseId()).newKieSession();
        return ksession;
    }
View Full Code Here

Examples of org.kie.api.KieServices

                "    $s : String() from context\n" +
                "  then\n" +
                "    System.out.println($s);\n" +
                "end";

        KieServices ks = KieServices.Factory.get();
        KieFileSystem kfs = ks.newKieFileSystem();
        kfs.write(ResourceFactory.newByteArrayResource(str.getBytes()).setTargetPath("org/drools/compiler/rules.drl") );
       
        KieBuilder kbuilder = KieServices.Factory.get().newKieBuilder(kfs);
        kbuilder.buildAll();
       
        assertEquals(0, kbuilder.getResults().getMessages().size());

        ks.newKieContainer(kbuilder.getKieModule().getReleaseId()).getKieBase();
        KieSession ksession = ks.newKieContainer(kbuilder.getKieModule().getReleaseId()).newKieSession();
        assertNotNull( ksession );
       
        List<String> context = new ArrayList<String>();
        ksession.setGlobal("context", context);
       
View Full Code Here

Examples of org.kie.api.KieServices

                "declare SimpleEvent\n" +
                "    @role(event)\n" +
                "    @duration(duration)\n" +
                "end\n";

        KieServices ks = KieServices.Factory.get();

        KieFileSystem kfs = ks.newKieFileSystem().write("src/main/resources/r1.drl", str);
        ks.newKieBuilder( kfs ).buildAll();

        KieSession ksession = ks.newKieContainer(ks.getRepository().getDefaultReleaseId()).newKieSession();
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.