Skip to content

Commit

Permalink
[BZ-1066012] reports an error for each of the evenuatlly missing incl…
Browse files Browse the repository at this point in the history
…uded knowledge bases
  • Loading branch information
mariofusco committed Feb 19, 2014
1 parent 0038572 commit 0464ae2
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 10 deletions.
Expand Up @@ -182,6 +182,7 @@ static KnowledgeBuilder buildKnowledgePackages( KieBaseModelImpl kBaseModel,

Map<String, InternalKieModule> assets = new HashMap<String, InternalKieModule>();

boolean allIncludesAreValid = true;
for (String include : getTransitiveIncludes(kieProject, kBaseModel)) {
if (StringUtils.isEmpty(include)) {
continue;
Expand All @@ -191,16 +192,17 @@ static KnowledgeBuilder buildKnowledgePackages( KieBaseModelImpl kBaseModel,
String text = "Unable to build KieBase, could not find include: " + include;
log.error(text);
messages.addMessage(Message.Level.ERROR, KieModuleModelImpl.KMODULE_SRC_PATH, text);
return null;
allIncludesAreValid = false;
continue;
}
addFiles(assets,
kieProject.getKieBaseModel(include),
includeModule);
addFiles( assets, kieProject.getKieBaseModel(include), includeModule );
}

if (!allIncludesAreValid) {
return null;
}

addFiles(assets,
kBaseModel,
kModule);
addFiles( assets, kBaseModel, kModule );

if (assets.isEmpty()) {
if (kModule instanceof FileKieModule) {
Expand Down
Expand Up @@ -28,7 +28,6 @@
import org.kie.api.builder.model.KieModuleModel;
import org.kie.api.conf.EqualityBehaviorOption;
import org.kie.api.conf.EventProcessingOption;
import org.kie.api.definition.type.FactType;
import org.kie.api.runtime.KieContainer;
import org.kie.api.runtime.KieSession;

Expand Down Expand Up @@ -152,14 +151,16 @@ public void testNotExistingInclude() throws Exception {
KieModuleModel module = ks.newKieModuleModel();

final String defaultBaseName = "defaultKBase";
KieBaseModel defaultBase = module.newKieBaseModel(defaultBaseName).addInclude("notExistingKB");
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( 1, kb.getResults().getMessages().size() );
assertEquals( 2, kb.getResults().getMessages().size() );
}

@Test
Expand Down

0 comments on commit 0464ae2

Please sign in to comment.