aboutsummaryrefslogtreecommitdiffstats
path: root/policy-management/src/main/java/org/onap/policy/drools/controller/internal/MavenDroolsController.java
diff options
context:
space:
mode:
authorjhh <jorge.hernandez-herrero@att.com>2019-04-08 11:13:14 -0500
committerjhh <jorge.hernandez-herrero@att.com>2019-04-08 19:46:52 -0500
commit3f90dba2636b06bcb90b8f1e158b30886af574d5 (patch)
treea4244aecdd658984afb46bb1d2720e363092eec5 /policy-management/src/main/java/org/onap/policy/drools/controller/internal/MavenDroolsController.java
parent420fb3114baf6dc468b3babf5b45304647fcb04d (diff)
Initial support for deploy
This is a first pass, some functionality is missing (undeploy). Compile error fix from changes in policy/models repo. Change-Id: If448492ab665c135bace99d4d684d403e2a6be03 Issue-ID: POLICY-1624 Signed-off-by: jhh <jorge.hernandez-herrero@att.com>
Diffstat (limited to 'policy-management/src/main/java/org/onap/policy/drools/controller/internal/MavenDroolsController.java')
-rw-r--r--policy-management/src/main/java/org/onap/policy/drools/controller/internal/MavenDroolsController.java45
1 files changed, 21 insertions, 24 deletions
diff --git a/policy-management/src/main/java/org/onap/policy/drools/controller/internal/MavenDroolsController.java b/policy-management/src/main/java/org/onap/policy/drools/controller/internal/MavenDroolsController.java
index eb401eba..95b053fb 100644
--- a/policy-management/src/main/java/org/onap/policy/drools/controller/internal/MavenDroolsController.java
+++ b/policy-management/src/main/java/org/onap/policy/drools/controller/internal/MavenDroolsController.java
@@ -480,19 +480,9 @@ public class MavenDroolsController implements DroolsController {
@Override
public boolean offer(String topic, String event) {
- logger.debug("{}: OFFER: {} <- {}", this, topic, event);
+ logger.debug("{}: OFFER raw event from {}", this, topic);
- if (this.locked) {
- return true;
- }
- if (!this.alive) {
- return true;
- }
-
- // 0. Check if the policy container has any sessions
-
- if (this.policyContainer.getPolicySessions().isEmpty()) {
- // no sessions
+ if (this.locked || !this.alive || this.policyContainer.getPolicySessions().isEmpty()) {
return true;
}
@@ -525,48 +515,55 @@ public class MavenDroolsController implements DroolsController {
return true;
}
+ return offer(anEvent);
+
+ }
+
+ @Override
+ public <T> boolean offer(T event) {
+ logger.debug("{}: OFFER event", this);
+
+ if (this.locked || !this.alive || this.policyContainer.getPolicySessions().isEmpty()) {
+ return true;
+ }
+
synchronized (this.recentSourceEvents) {
- this.recentSourceEvents.add(anEvent);
+ this.recentSourceEvents.add(event);
}
- // increment event count for Nagios monitoring
PdpJmx.getInstance().updateOccured();
// Broadcast
- if (logger.isInfoEnabled()) {
- logger.info("{} BROADCAST-INJECT of {} FROM {} INTO {}",
- this, event, topic, this.policyContainer.getName());
- }
-
for (DroolsControllerFeatureAPI feature : DroolsControllerFeatureAPI.providers.getList()) {
try {
- if (feature.beforeInsert(this, anEvent)) {
+ if (feature.beforeInsert(this, event)) {
return true;
}
} catch (Exception e) {
logger.error("{}: feature {} before-insert failure because of {}",
- this, feature.getClass().getName(), e.getMessage(), e);
+ this, feature.getClass().getName(), e.getMessage(), e);
}
}
- boolean successInject = this.policyContainer.insertAll(anEvent);
+ boolean successInject = this.policyContainer.insertAll(event);
if (!successInject) {
logger.warn(this + "Failed to inject into PolicyContainer {}", this.getSessionNames());
}
for (DroolsControllerFeatureAPI feature : DroolsControllerFeatureAPI.providers.getList()) {
try {
- if (feature.afterInsert(this, anEvent, successInject)) {
+ if (feature.afterInsert(this, event, successInject)) {
return true;
}
} catch (Exception e) {
logger.error("{}: feature {} after-insert failure because of {}",
- this, feature.getClass().getName(), e.getMessage(), e);
+ this, feature.getClass().getName(), e.getMessage(), e);
}
}
return true;
+
}
@Override