diff options
author | 2019-03-27 06:40:18 -0400 | |
---|---|---|
committer | 2019-04-01 15:35:43 -0700 | |
commit | d2daf7ef5d003b5c5ae6a7083ccf676cc87a1d7b (patch) | |
tree | 99d83d3772181df83ca48138ca3e86ef757cb443 /applications/guard/src/main/java/org | |
parent | d3438454879ec3f3c31ca8af2fc5903b7f8697ae (diff) |
Adding guard PIP
Adding the PIP support into the translator to setup the count
attribute as an attribute generated by PIP and not sent by
calling application.
Added JUnit for OperationsHistoryPipEngine.
Issue-ID: POLICY-1471
Change-Id: I71773ee8ea0e6c02873506d973a604899383d4b5
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
Diffstat (limited to 'applications/guard/src/main/java/org')
2 files changed, 18 insertions, 25 deletions
diff --git a/applications/guard/src/main/java/org/onap/policy/xacml/pdp/application/guard/LegacyGuardPolicyRequest.java b/applications/guard/src/main/java/org/onap/policy/xacml/pdp/application/guard/LegacyGuardPolicyRequest.java index 0b5b5675..7346dded 100644 --- a/applications/guard/src/main/java/org/onap/policy/xacml/pdp/application/guard/LegacyGuardPolicyRequest.java +++ b/applications/guard/src/main/java/org/onap/policy/xacml/pdp/application/guard/LegacyGuardPolicyRequest.java @@ -138,8 +138,8 @@ public class LegacyGuardPolicyRequest { if (guard.containsKey("clname")) { request.clnameId = guard.get("clname").toString(); } - if (guard.containsKey("targets")) { - request.targetId = guard.get("targets").toString(); + if (guard.containsKey("target")) { + request.targetId = guard.get("target").toString(); } if (guard.containsKey("vfCount")) { request.vfCount = Integer.decode(guard.get("vfCount").toString()); diff --git a/applications/guard/src/main/java/org/onap/policy/xacml/pdp/application/guard/LegacyGuardTranslator.java b/applications/guard/src/main/java/org/onap/policy/xacml/pdp/application/guard/LegacyGuardTranslator.java index 81340b4d..48861d86 100644 --- a/applications/guard/src/main/java/org/onap/policy/xacml/pdp/application/guard/LegacyGuardTranslator.java +++ b/applications/guard/src/main/java/org/onap/policy/xacml/pdp/application/guard/LegacyGuardTranslator.java @@ -398,23 +398,16 @@ public class LegacyGuardTranslator implements ToscaPolicyTranslator { // Now combine into an And // ApplyType applyAnd = new ApplyType(); - applyAnd.setDescription("return true if all the apply's are true."); + applyAnd.setDescription("return true if time range and count checks are true."); applyAnd.setFunctionId(XACML3.ID_FUNCTION_AND.stringValue()); applyAnd.getExpression().add(new ObjectFactory().createApply(timeRange)); applyAnd.getExpression().add(new ObjectFactory().createApply(countCheck)); - // - // And create an outer negation of the And - // - ApplyType applyNot = new ApplyType(); - applyNot.setDescription("Negate the and"); - applyNot.setFunctionId(XACML3.ID_FUNCTION_NOT.stringValue()); - applyNot.getExpression().add(new ObjectFactory().createApply(applyAnd)); // // Create our condition // final ConditionType condition = new ConditionType(); - condition.setExpression(new ObjectFactory().createApply(applyNot)); + condition.setExpression(new ObjectFactory().createApply(applyAnd)); // // Now we can create our rule @@ -617,8 +610,8 @@ public class LegacyGuardTranslator implements ToscaPolicyTranslator { // // Right now I am faking the count value by re-using the request-id field // - //String issuer = "org:onap:xacml:guard:historydb:tw:" + timeWindow + ":" + timeUnits; - //designator.setIssuer(issuer); + String issuer = ToscaDictionary.GUARD_ISSUER + ":tw:" + timeWindow + ":" + timeUnits; + designator.setIssuer(issuer); AttributeValueType valueLimit = new AttributeValueType(); valueLimit.setDataType(XACML3.ID_DATATYPE_INTEGER.stringValue()); @@ -636,13 +629,13 @@ public class LegacyGuardTranslator implements ToscaPolicyTranslator { applyOneAndOnly.setFunctionId(XACML3.ID_FUNCTION_INTEGER_ONE_AND_ONLY.stringValue()); applyOneAndOnly.getExpression().add(factory.createAttributeDesignator(designator)); - ApplyType applyGreaterThanEqual = new ApplyType(); - applyGreaterThanEqual.setDescription("return true if current count is greater than or equal."); - applyGreaterThanEqual.setFunctionId(XACML3.ID_FUNCTION_INTEGER_GREATER_THAN_OR_EQUAL.stringValue()); - applyGreaterThanEqual.getExpression().add(factory.createApply(applyOneAndOnly)); - applyGreaterThanEqual.getExpression().add(factory.createAttributeValue(valueLimit)); + ApplyType applyLessThan = new ApplyType(); + applyLessThan.setDescription("return true if current count is less than."); + applyLessThan.setFunctionId(XACML3.ID_FUNCTION_INTEGER_LESS_THAN.stringValue()); + applyLessThan.getExpression().add(factory.createApply(applyOneAndOnly)); + applyLessThan.getExpression().add(factory.createAttributeValue(valueLimit)); - return applyGreaterThanEqual; + return applyLessThan; } private static ApplyType generateMinCheck(Integer min) { @@ -706,13 +699,13 @@ public class LegacyGuardTranslator implements ToscaPolicyTranslator { applyOneAndOnly.setFunctionId(XACML3.ID_FUNCTION_INTEGER_ONE_AND_ONLY.stringValue()); applyOneAndOnly.getExpression().add(factory.createAttributeDesignator(designator)); - ApplyType applyGreaterThanEqual = new ApplyType(); - applyGreaterThanEqual.setDescription("return true if current count is less than or equal."); - applyGreaterThanEqual.setFunctionId(XACML3.ID_FUNCTION_INTEGER_LESS_THAN_OR_EQUAL.stringValue()); - applyGreaterThanEqual.getExpression().add(factory.createApply(applyOneAndOnly)); - applyGreaterThanEqual.getExpression().add(factory.createAttributeValue(valueLimit)); + ApplyType applyLessThanEqual = new ApplyType(); + applyLessThanEqual.setDescription("return true if current count is less than or equal."); + applyLessThanEqual.setFunctionId(XACML3.ID_FUNCTION_INTEGER_LESS_THAN_OR_EQUAL.stringValue()); + applyLessThanEqual.getExpression().add(factory.createApply(applyOneAndOnly)); + applyLessThanEqual.getExpression().add(factory.createAttributeValue(valueLimit)); - return applyGreaterThanEqual; + return applyLessThanEqual; } private static AdviceExpressionsType generateRequestIdAdvice() { |