@Test
public void test() {
KieServices kieServices = KieServices.Factory.get();
KieResources resources = kieServices.getResources();
KieModuleModel kieModuleModel = kieServices.newKieModuleModel();//1
KieBaseModel baseModel = kieModuleModel.newKieBaseModel(
"FileSystemKBase").addPackage("rules");//2
baseModel.newKieSessionModel("FileSystemKSession");//3
KieFileSystem fileSystem = kieServices.newKieFileSystem();
String xml = kieModuleModel.toXML();
System.out.println(xml);//4
fileSystem.writeKModuleXML(xml);//5
fileSystem.write("src/main/resources/rules/rule.drl", resources
.newClassPathResource("kiefilesystem/KieFileSystemTest.drl"));//6
KieBuilder kb = kieServices.newKieBuilder(fileSystem);
kb.buildAll();//7
if (kb.getResults().hasMessages(Level.ERROR)) {
throw new RuntimeException("Build Errors:\n"
+ kb.getResults().toString());
}
KieContainer kContainer = kieServices.newKieContainer(kieServices
.getRepository().getDefaultReleaseId());
assertNotNull(kContainer.getKieBase("FileSystemKBase"));
KieSession kSession = kContainer.newKieSession("FileSystemKSession");
kSession.fireAllRules();
}
}