diff options
author | pramod.jamkhedkar <pramod@research.att.com> | 2019-08-28 15:11:22 -0400 |
---|---|---|
committer | pramod.jamkhedkar <pramod@research.att.com> | 2019-09-04 09:06:54 -0400 |
commit | da3ffabb02a1b1823557dcf179fbef613706dfc4 (patch) | |
tree | 5d5f220fff8d0b35bd392d325654e5b4b56e36ab /controlloop/common/controller-usecases | |
parent | c08643d82c6f615da747a8b4dedaac77277d4433 (diff) |
Changes drl files
Changes to the DRL file to change the rules to support custom query.
Added new VdnsControlLoop test for custom query, and supporting yaml
request
Issue-ID: POLICY-1858
Change-Id: Ic1b9e771bd36fe0642e9a3439189076a4906a4b8
Signed-off-by: pramod.jamkhedkar <pramod@research.att.com>
Diffstat (limited to 'controlloop/common/controller-usecases')
-rw-r--r-- | controlloop/common/controller-usecases/src/main/resources/usecases.drl | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/controlloop/common/controller-usecases/src/main/resources/usecases.drl b/controlloop/common/controller-usecases/src/main/resources/usecases.drl index 37d7b6936..02161b8c3 100644 --- a/controlloop/common/controller-usecases/src/main/resources/usecases.drl +++ b/controlloop/common/controller-usecases/src/main/resources/usecases.drl @@ -36,6 +36,7 @@ import org.onap.policy.controlloop.eventmanager.ControlLoopOperationManager; import org.onap.policy.controlloop.utils.ControlLoopUtils; import org.onap.policy.controlloop.actor.so.SoActorServiceProvider; import org.onap.policy.aai.AaiNqResponseWrapper; +import org.onap.policy.aai.AaiCqResponse; import org.onap.policy.appc.Request; import org.onap.policy.appc.Response; import org.onap.policy.appc.CommonHeader; @@ -729,6 +730,7 @@ rule "EVENT.MANAGER.OPERATION.LOCKED.GUARD_NOT_YET_QUERIED" // NOTE: The environment properties uses "guard.disabled" but the boolean is guardEnabled boolean guardEnabled = "false".equalsIgnoreCase(PolicyEngineConstants.getManager().getEnvironmentProperty("guard.disabled")); + boolean cqEnabled = "true".equalsIgnoreCase(PolicyEngineConstants.getManager().getEnvironmentProperty("aai.customQuery")); if(guardEnabled){ @@ -740,8 +742,25 @@ rule "EVENT.MANAGER.OPERATION.LOCKED.GUARD_NOT_YET_QUERIED" $operation.getTargetEntity(), $event.getRequestId().toString(), () -> { - AaiNqResponseWrapper resp = $manager.getNqVserverFromAai(); - return(resp == null ? null : resp.countVfModules()); + if (!cqEnabled) { + AaiNqResponseWrapper resp = $manager.getNqVserverFromAai(); + return(resp == null ? null : resp.countVfModules()); + } else { + try { + AaiCqResponse resp_cq = $manager.getCqResponse($event); + if (resp_cq == null){ + return null; + } else { + String custId = $operation.policy.getTarget().getModelCustomizationId(); + String invId = $operation.policy.getTarget().getModelInvariantId(); + String verId = $operation.policy.getTarget().getModelVersionId(); + return resp_cq.getVfModuleCount(custId, invId, verId); + } + } catch (Exception e){ + logger.warn("{}: {}", $params.getClosedLoopControlName(), drools.getRule().getName(), e); + } + return null; + } })); t.start(); } |