summaryrefslogtreecommitdiffstats
path: root/src/main/java/org/onap/pomba/contextbuilder/sdnc/Application.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/onap/pomba/contextbuilder/sdnc/Application.java')
-rw-r--r--src/main/java/org/onap/pomba/contextbuilder/sdnc/Application.java29
1 files changed, 23 insertions, 6 deletions
diff --git a/src/main/java/org/onap/pomba/contextbuilder/sdnc/Application.java b/src/main/java/org/onap/pomba/contextbuilder/sdnc/Application.java
index e0ebfc8..93dd886 100644
--- a/src/main/java/org/onap/pomba/contextbuilder/sdnc/Application.java
+++ b/src/main/java/org/onap/pomba/contextbuilder/sdnc/Application.java
@@ -18,7 +18,13 @@
package org.onap.pomba.contextbuilder.sdnc;
-import org.apache.velocity.app.VelocityEngine;
+import org.kie.api.KieServices;
+import org.kie.api.builder.KieBuilder;
+import org.kie.api.builder.KieFileSystem;
+import org.kie.api.builder.KieRepository;
+import org.kie.api.io.Resource;
+import org.kie.api.io.ResourceType;
+import org.kie.api.runtime.KieContainer;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@@ -30,8 +36,10 @@ import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.scheduling.annotation.EnableAsync;
+import java.io.File;
+
@SpringBootApplication
-@ComponentScan(basePackages = "org.onap.pomba.contextbuilder.sdnc")
+@ComponentScan(basePackages = {"org.onap.pomba.contextbuilder.sdnc","org.kie.api"})
@EnableAsync
@EnableAutoConfiguration(exclude = { DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class })
public class Application extends SpringBootServletInitializer {
@@ -45,9 +53,18 @@ public class Application extends SpringBootServletInitializer {
}
@Bean
- public VelocityEngine velocityEngine() {
- VelocityEngine velocityEngine = new VelocityEngine();
- velocityEngine.init();
- return velocityEngine;
+ public KieContainer kieContainer() {
+
+ KieServices kServices = KieServices.Factory.get();
+ KieFileSystem kfs = kServices.newKieFileSystem();
+ KieRepository kr = kServices.getRepository();
+ File file = new File("config/rules/api-mapping-rules.drl");
+ Resource resource = kServices.getResources().newFileSystemResource(file).setResourceType(ResourceType.DRL);
+ kfs.write(resource);
+
+ KieBuilder kb = kServices.newKieBuilder(kfs);
+ kb.buildAll();
+ KieContainer kContainer = kServices.newKieContainer(kr.getDefaultReleaseId());
+ return kContainer;
}
} \ No newline at end of file