Package org.kie.api.builder.model

Examples of org.kie.api.builder.model.KieModuleModel


        if( file.exists() ) {
            file.delete();
        }

        KieServices ks = KieServices.Factory.get();
        KieModuleModel kproj = ks.newKieModuleModel();

        kproj.newKieBaseModel("KBase1").newKieSessionModel("KSession1").setFileLogger( fileName );

        KieFileSystem kfs = ks.newKieFileSystem();
        kfs.writeKModuleXML(kproj.toXML());
        kfs.write("src/main/resources/KBase1/rule.drl", drl);

        KieModule kieModule = ks.newKieBuilder(kfs).buildAll().getKieModule();
        KieContainer kieContainer = ks.newKieContainer(kieModule.getReleaseId());
View Full Code Here


        Resource ex2Res = ks.getResources().newFileSystemResource(getFile("kiebase-inclusion"));

        ReleaseId rid = ks.newReleaseId("org.drools", "kiemodulemodel-example", "6.2.0.Beta2");
        kfs.generateAndWritePomXML(rid);

        KieModuleModel kModuleModel = ks.newKieModuleModel();
        kModuleModel.newKieBaseModel("kiemodulemodel")
                    .addInclude("kbase1")
                    .addInclude("kbase2")
                    .newKieSessionModel("ksession6");

        kfs.writeKModuleXML(kModuleModel.toXML());
        kfs.write("src/main/resources/kiemodulemodel/HAL6.drl", getRule());

        KieBuilder kb = ks.newKieBuilder(kfs);
        kb.setDependencies(ex1Res, ex2Res);
        kb.buildAll(); // kieModule is automatically deployed to KieRepository if successfully built.
View Full Code Here

        when( kieJar.getFileNames() ).thenReturn( drlFs );
        return ( InternalKieModule ) kieJar;
    }
   
    private KieModuleModel createKieProjectWithPackages(KieServices ks, ReleaseId releaseId) {
        KieModuleModel kproj = ks.newKieModuleModel();

        KieBaseModel kieBaseModel1 = kproj.newKieBaseModel("KBase1")
                .setEqualsBehavior( EqualityBehaviorOption.EQUALITY )
                .setEventProcessingMode( EventProcessingOption.STREAM )
                .addPackage("org.pkg1");

        KieSessionModel ksession1 = kieBaseModel1.newKieSessionModel("KSession1")
View Full Code Here

    @Test
    public void testMarshallingUnmarshalling() {
        KieServices ks = KieServices.Factory.get();

        KieModuleModel kproj = ks.newKieModuleModel();

        KieBaseModel kieBaseModel1 = kproj.newKieBaseModel("KBase1")
                .setEqualsBehavior( EqualityBehaviorOption.EQUALITY )
                .setEventProcessingMode( EventProcessingOption.STREAM )
                .setDeclarativeAgenda( DeclarativeAgendaOption.ENABLED )
                .addInclude("OtherKBase")
                .addPackage("org.kie.pkg1")
                .addPackage("org.kie.pkg2");

        KieSessionModel ksession1 = kieBaseModel1.newKieSessionModel("KSession1")
                .setType(KieSessionType.STATEFUL)
                .setClockType(ClockTypeOption.get("realtime"))
                .setBeliefSystem(BeliefSystemTypeOption.get("jtms"))
                .setFileLogger("drools.log", 10, true)
                .setDefault(true);

        ksession1.newListenerModel("org.domain.FirstInterface", ListenerModel.Kind.AGENDA_EVENT_LISTENER);

        ksession1.newListenerModel("org.domain.SecondInterface", ListenerModel.Kind.RULE_RUNTIME_EVENT_LISTENER)
                .newQualifierModel("MyQualfier2");

        ksession1.newListenerModel("org.domain.ThirdInterface", ListenerModel.Kind.PROCESS_EVENT_LISTENER)
                .newQualifierModel("MyQualfier3")
                .setValue("v1");

        ksession1.newListenerModel("org.domain.FourthInterface", ListenerModel.Kind.AGENDA_EVENT_LISTENER)
                .newQualifierModel("MyQualfier4")
                .addArgument("name1", "xxxx")
                .addArgument("name2", "yyyy");

        ksession1.newWorkItemHandlerModel("name","org.domain.FifthInterface")
                .newQualifierModel("MyQualfier5")
                .addArgument("name1", "aaa")
                .addArgument("name2", "bbb");
       
//        KieBaseModel kieBaseModel2 = kproj.newKieBaseModel("KBase2")
//                .setEqualsBehavior( EqualityBehaviorOption.EQUALITY )
//                .setEventProcessingMode( EventProcessingOption.STREAM );       

        String xml = kproj.toXML();

        // System.out.println( xml );

        KieModuleModel kprojXml = fromXML(xml);

        KieBaseModel kieBaseModelXML = kprojXml.getKieBaseModels().get("KBase1");
        assertSame(kprojXml, ((KieBaseModelImpl)kieBaseModelXML).getKModule());
        assertEquals(EqualityBehaviorOption.EQUALITY, kieBaseModelXML.getEqualsBehavior());
        assertEquals(EventProcessingOption.STREAM, kieBaseModelXML.getEventProcessingMode());
        assertEquals(DeclarativeAgendaOption.ENABLED, kieBaseModelXML.getDeclarativeAgenda());
        assertFalse(kieBaseModelXML.isDefault());
View Full Code Here

    @Test
    public void createMultpleJarAndFileResources() throws IOException,
                                                  ClassNotFoundException,
                                                  InterruptedException {
        KieModuleModel kProjModel1 = createKieModule( "jar1", true );
        KieModuleModel kProjModel2 = createKieModule( "jar2", true );
        KieModuleModel kProjModel3 = createKieModule( "jar3", true );
        KieModuleModel kProjModel4 = createKieModule( "fol4", false );

        ReleaseId releaseId1 = KieServices.Factory.get().newReleaseId("jar1",
                                                                      "art1",
                                                                      "1.0-SNAPSHOT");
        ReleaseId releaseId2 = KieServices.Factory.get().newReleaseId("jar2",
View Full Code Here

    public KieModuleModel createKieModule(String namespace,
                                          boolean createJar,
                                          String version) throws IOException,
                                                       ClassNotFoundException,
                                                       InterruptedException {
        KieModuleModel kproj = new KieModuleModelImpl();

        KieBaseModel kieBaseModel1 = kproj.newKieBaseModel(namespace + ".KBase1")
                .setEqualsBehavior( EqualityBehaviorOption.EQUALITY )
                .setEventProcessingMode( EventProcessingOption.STREAM )
                .addPackage(namespace + ".KBase1")
                .setDefault( true );
           

        KieSessionModel ksession1 = kieBaseModel1.newKieSessionModel(namespace + ".KSession1")
                .setType( KieSessionType.STATELESS )
                .setClockType( ClockTypeOption.get("realtime") )
                .setDefault( true );

        KieSessionModel ksession2 = kieBaseModel1.newKieSessionModel(namespace + ".KSession2")
                .setType( KieSessionType.STATEFUL )
                .setClockType( ClockTypeOption.get( "pseudo" ) )
                .setDefault( true );

        KieBaseModel kieBaseModel2 = kproj.newKieBaseModel(namespace + ".KBase2")
                .setEqualsBehavior( EqualityBehaviorOption.IDENTITY )
                .addPackage(namespace + ".KBase2")
                .setEventProcessingMode( EventProcessingOption.CLOUD );

        KieSessionModel ksession3 = kieBaseModel2.newKieSessionModel(namespace + ".KSession3")
                .setType( KieSessionType.STATEFUL )
                .setClockType( ClockTypeOption.get( "pseudo" ) );

        KieBaseModel kieBaseModel3 = kproj.newKieBaseModel(namespace + ".KBase3")
                .addInclude( kieBaseModel1.getName() )
                .addInclude( kieBaseModel2.getName() )
                .setEqualsBehavior( EqualityBehaviorOption.IDENTITY )
                .setEventProcessingMode( EventProcessingOption.CLOUD );
View Full Code Here

    public void testInMemory() throws ClassNotFoundException, InterruptedException, IOException {
        String namespace = "org.kie.test";

        ReleaseId releaseId = KieServices.Factory.get().newReleaseId(namespace, "memory", "1.0-SNAPSHOT");
       
        KieModuleModel kProj = createKieProject(namespace);
       
        KieFileSystem kfs = KieServices.Factory.get().newKieFileSystem();
        generateAll(kfs, namespace, releaseId, kProj);
       
        createAndTestKieContainer(releaseId, createKieBuilder(kfs), namespace );
View Full Code Here

    @Test
    public void testOnDisc() throws ClassNotFoundException, InterruptedException, IOException {
        String namespace = "org.kie.test";

        KieModuleModel kProj = createKieProject(namespace);
       
        ReleaseId releaseId = KieServices.Factory.get().newReleaseId(namespace, "memory", "1.0-SNAPSHOT");
       
        KieFileSystem kfs = KieServices.Factory.get().newKieFileSystem();
        generateAll(kfs, namespace, releaseId, kProj);
View Full Code Here

    public void testKieModuleDepednencies() throws ClassNotFoundException, InterruptedException, IOException {
        KieServices ks = KieServices.Factory.get();
       
        String namespace1 = "org.kie.test1";
        ReleaseId releaseId1 = KieServices.Factory.get().newReleaseId(namespace1, "memory", "1.0-SNAPSHOT");
        KieModuleModel kProj1 = createKieProject(namespace1);       
        KieFileSystem kfs1 = KieServices.Factory.get().newKieFileSystem();
        generateAll(kfs1, namespace1, releaseId1, kProj1);

        KieBuilder kb1 = createKieBuilder(kfs1);
        kb1.buildAll();       
        if ( kb1.getResults().hasMessages(Level.ERROR) ) {
            fail("Unable to build KieJar\n" + kb1.getResults( ).toString() );
        }
        KieRepository kr = ks.getRepository();
        KieModule kModule1 = kr.getKieModule(releaseId1);
        assertNotNull( kModule1 );
       
       
        String namespace2 = "org.kie.test2";
        ReleaseId releaseId2 = KieServices.Factory.get().newReleaseId(namespace2, "memory", "1.0-SNAPSHOT");
        KieModuleModel kProj2 = createKieProject(namespace2);       
        KieBaseModelImpl kieBase2 = ( KieBaseModelImpl ) kProj2.getKieBaseModels().get( namespace2 );
        kieBase2.addInclude( namespace1 );
       
        KieFileSystem kfs2 = KieServices.Factory.get().newKieFileSystem();
        generateAll(kfs2, namespace2, releaseId2, kProj2);
       
View Full Code Here

        KieServices ks = KieServices.Factory.get();

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

        KieModuleModel module = ks.newKieModuleModel();

        final String defaultBaseName = "defaultKBase";
        KieBaseModel defaultBase = module.newKieBaseModel(defaultBaseName)
                                         .addInclude("notExistingKB1")
                                         .addInclude("notExistingKB2");
        defaultBase.setDefault(true);
        defaultBase.addPackage("*");
        defaultBase.newKieSessionModel("defaultKSession").setDefault(true);

        kfs.writeKModuleXML(module.toXML());
        KieBuilder kb = ks.newKieBuilder( kfs ).buildAll();
        assertEquals( 2, kb.getResults().getMessages().size() );
    }
View Full Code Here

TOP

Related Classes of org.kie.api.builder.model.KieModuleModel

Copyright © 2018 www.massapicom. 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.