diff options
Diffstat (limited to 'examples/examples-pcvs/src/main/resources/org/onap/policy')
19 files changed, 0 insertions, 1292 deletions
diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/customers.avsc b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/customers.avsc deleted file mode 100644 index eca3836a3..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/customers.avsc +++ /dev/null @@ -1,16 +0,0 @@ -{ - "type" : "record", - "name" : "Customer", - "fields" : [ - {"name" : "customerName", "type" : "string"}, - {"name" : "dtSLA" , "type" : "int"}, - {"name" : "dtYTD" , "type" : "int"}, - {"name" : "priority" , "type" : "boolean"}, - {"name" : "satisfaction", "type" : "int"}, - { - "name": "links", - "doc": "Links used by this customer", - "type": {"type" : "array", "items" : "string"} - } - ] -} diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/decision.avsc b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/decision.avsc deleted file mode 100644 index 5961cb6f6..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/decision.avsc +++ /dev/null @@ -1,22 +0,0 @@ -{ - "type" : "record", - "name" : "Situation", - "fields" : [ - {"name": "description", "type": "string", "doc": "Description of the taken decision"}, - { - "name": "decision", - "doc": "taken decision", - "type": { - "type": "enum", - "name": "decisionEnum", - "symbols" : [ - "IMPEDE", - "REBUILD", - "NONE" - ] - } - }, - {"name": "customers", "type": {"type" : "array", "items" : "string"}, "doc": "List of customers affected by the decision"}, - {"name": "problemID", "type": "string", "doc": "Identifier of the problem for lookup in problemMap"} - ] -} diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/link-status.avsc b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/link-status.avsc deleted file mode 100644 index 440a3d0a9..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/link-status.avsc +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "enum", - "name": "Status", - "symbols" : [ - "UP", - "DOWN" - ] -} diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/problems.avsc b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/problems.avsc deleted file mode 100644 index c633c129d..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/problems.avsc +++ /dev/null @@ -1,34 +0,0 @@ -{ - "type" : "record", - "name" : "Problem", - "fields" : [ - {"name": "edge", "type": "string"}, - {"name": "startTime", "type": "long"}, - {"name": "lastUpdate", "type": "long"}, - {"name": "endTime", "type": "long"}, - { - "name": "status", - "doc": "problem status", - "type": { - "type": "enum", - "name": "statusEnum", - "symbols" : [ - "NONE", - "STILL", - "SOLVED", - "NEW" - ] - } - }, - { - "name": "edgeUsedBy", - "doc": "customers using the edge", - "type": {"type" : "array", "items" : "string"} - }, - { - "name": "impededLast", - "doc": "customers last impeded", - "type": {"type" : "array", "items" : "string"} - } - ] -} diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/situation.avsc b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/situation.avsc deleted file mode 100644 index 622f8af61..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/situation.avsc +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type" : "record", - "name" : "Situation", - "fields" : [ - {"name": "problemID", "type": "string", "doc": "Identifier of the problem for lookup in problemMap"}, - {"name": "violatedSLAs", "type": {"type" : "array", "items" : "string"}, "doc": "List of customers with SLA violations"} - ] -} diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/topology-edges.avsc b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/topology-edges.avsc deleted file mode 100644 index 993f608ab..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/topology-edges.avsc +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type" : "record", - "name" : "TopologyEdges", - "fields" : [ - {"name": "name", "type": "string", "doc": "Name of the Edge, typically a link name"}, - {"name": "start", "type": "string", "doc": "Edge endpoint: start - a node name"}, - {"name": "end", "type": "string", "doc": "Edge endpoint: end - a node name"}, - {"name": "active", "type": "boolean", "doc": "Flag for active/inactive edges, inactive means a link is down"} - ] -} diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/topology-nodes.avsc b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/topology-nodes.avsc deleted file mode 100644 index bf5e62796..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/topology-nodes.avsc +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type" : "record", - "name" : "TopologyNodes", - "fields" : [ - {"name" : "name", "type" : "string", "doc": "The name of the node"}, - {"name" : "mnname", "type" : "string", "doc": "The name of the node in Mininet"} - ] -} diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/ctxt-customer.js b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/ctxt-customer.js deleted file mode 100644 index d62bed609..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/ctxt-customer.js +++ /dev/null @@ -1,79 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * Copyright (C) 2016-2018 Ericsson. All rights reserved. - * Modifications Copyright (C) 2020 Nordix Foundation. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -var logger = executor.logger; -logger.trace("start: " + executor.subject.id); -logger.trace("-- infields: " + executor.inFields); - -var ifCustomerName = executor.inFields["customerName"]; -var ifLinks = executor.inFields["links"]; - -logger.trace("-- got infields, testing existing customer"); -var ctxtCustomer = executor.getContextAlbum("albumCustomerMap").get(ifCustomerName); -if (ctxtCustomer != null) { - executor.getContextAlbum("albumCustomerMap").remove(ifCustomerName); - logger.trace("-- removed customer: <" + ifCustomerName + ">"); -} - -logger.trace("-- creating customer: <" + ifCustomerName + ">"); -var links = new Array(); -for (var i = 0; i < ifLinks.split(" ").length; i++) { - var link = executor.getContextAlbum("albumTopoEdges").get(ifLinks.split(" ")[i]); - if (link != null) { - logger.trace("-- link: <" + ifLinks.split(" ")[i] + ">"); - links.push(ifLinks.split(" ")[i]); - } else { - logger.trace("-- unknown link: <" + ifLinks.split(" ")[i] + "> for customer <" + ifCustomerName + ">"); - } -} -logger.trace("-- links: <" + links + ">"); -ctxtCustomer = "{customerName:" + ifCustomerName + ", dtSLA:" + executor.inFields["dtSLA"] + ", dtYTD:" - + executor.inFields["dtYTD"] + ", priority:" + executor.inFields["priority"] + ", satisfaction:" - + executor.inFields["satisfaction"] + ", links:[" + links + "]}"; - -executor.getContextAlbum("albumCustomerMap").put(ifCustomerName, ctxtCustomer); - -if (logger.isTraceEnabled()) { - logger.trace(" >> *** Customers ***"); - if (executor.getContextAlbum("albumCustomerMap") != null) { - for (var i = 0; i < executor.getContextAlbum("albumCustomerMap").values().size(); i++) { - logger.trace(" >> >> " + executor.getContextAlbum("albumCustomerMap").values().get(i).get("customerName") - + " : " + "dtSLA=" + executor.getContextAlbum("albumCustomerMap").values().get(i).get("dtSLA") - + " : " + "dtYTD=" + executor.getContextAlbum("albumCustomerMap").values().get(i).get("dtYTD") - + " : " + "links=" + executor.getContextAlbum("albumCustomerMap").values().get(i).get("links") - + " : " + "priority=" - + executor.getContextAlbum("albumCustomerMap").values().get(i).get("priority") + " : " - + "satisfaction=" - + executor.getContextAlbum("albumCustomerMap").values().get(i).get("satisfaction")); - } - } else { - logger.trace(" >> >> customer album is null"); - } -} - -executor.outFields["report"] = "customer ctxt :: added customer: " + ifCustomerName; - -logger.info("vpnsla: ctxt added customer " + ifCustomerName); - -logger.trace("finished: " + executor.subject.id); -logger.debug("."); - -true; diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/ctxt-edges.js b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/ctxt-edges.js deleted file mode 100644 index 1e9d6be71..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/ctxt-edges.js +++ /dev/null @@ -1,64 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * Copyright (C) 2016-2018 Ericsson. All rights reserved. - * Modifications Copyright (C) 2020 Nordix Foundation. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -var logger = executor.logger; -logger.trace("start: " + executor.subject.id); -logger.trace("-- infields: " + executor.inFields); - -var ifEdgeName = executor.inFields["edgeName"]; -var ifEdgeStatus = executor.inFields["status"]; - -var albumTopoEdges = executor.getContextAlbum("albumTopoEdges"); - -logger.trace("-- got infields, testing existing edge"); - -var ctxtEdge = albumTopoEdges.get(ifEdgeName); -if (ctxtEdge != null) { - albumTopoEdges.remove(ifEdgeName); - logger.trace("-- removed edge: <" + ifEdgeName + ">"); -} - -logger.trace("-- creating edge: <" + ifEdgeName + ">"); -ctxtEdge = "{name:" + ifEdgeName + ", start:" + executor.inFields["start"] + ", end:" + executor.inFields["end"] - + ", active:" + ifEdgeStatus + "}"; -albumTopoEdges.put(ifEdgeName, ctxtEdge); - -if (logger.isTraceEnabled()) { - logger.trace(" >> *** Edges ***"); - if (albumTopoEdges != null) { - for (var i = 0; i < albumTopoEdges.values().size(); i++) { - logger.trace(" >> >> " + albumTopoEdges.values().get(i).get("name") + " \t " - + albumTopoEdges.values().get(i).get("start") + " --> " + albumTopoEdges.values().get(i).get("end") - + " \t " + albumTopoEdges.values().get(i).get("active")); - } - } else { - logger.trace(" >> >> edge album is null"); - } -} - -executor.outFields["report"] = "edge ctxt :: added edge " + ifEdgeName; - -logger.info("vpnsla: ctxt added edge " + ifEdgeName); - -logger.trace("finished: " + executor.subject.id); -logger.debug("."); - -true; diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/ctxt-nodes.js b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/ctxt-nodes.js deleted file mode 100644 index bc360f280..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/ctxt-nodes.js +++ /dev/null @@ -1,62 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * Copyright (C) 2016-2018 Ericsson. All rights reserved. - * Modifications Copyright (C) 2020 Nordix Foundation. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -var logger = executor.logger; -logger.trace("start: " + executor.subject.id); -logger.trace("-- infields: " + executor.inFields); - -var ifNodeName = executor.inFields["nodeName"]; -var ifMininetName = executor.inFields["mininetName"]; - -var albumTopoNodes = executor.getContextAlbum("albumTopoNodes"); - -logger.trace("-- got infields, testing existing node"); - -var ctxtNode = albumTopoNodes.get(ifNodeName); -if (ctxtNode != null) { - albumTopoNodes.remove(ifNodeName); - logger.trace("-- removed node: <" + ifNodeName + ">"); -} - -logger.trace("-- creating node: <" + ifNodeName + ">"); -ctxtNode = "{name:" + ifNodeName + ", mnname:" + ifMininetName + "}"; -albumTopoNodes.put(ifNodeName, ctxtNode); - -if (logger.isTraceEnabled()) { - logger.trace(" >> *** Nodes ***"); - if (albumTopoNodes != null) { - for (var i = 0; i < albumTopoNodes.values().size(); i++) { - logger.trace(" >> >> " + albumTopoNodes.values().get(i).get("name") + " : " - + albumTopoNodes.values().get(i).get("mnname")); - } - } else { - logger.trace(" >> >> node album is null"); - } -} - -executor.outFields["report"] = "node ctxt :: added node " + ifNodeName; - -logger.info("vpnsla: ctxt added node " + ifNodeName); - -logger.trace("finished: " + executor.subject.id); -logger.debug("."); - -true; diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-act.js b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-act.js deleted file mode 100644 index 6ab792693..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-act.js +++ /dev/null @@ -1,67 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * Copyright (C) 2016-2018 Ericsson. All rights reserved. - * Modifications Copyright (C) 2020 Nordix Foundation. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -var logger = executor.logger; -logger.trace("start: " + executor.subject.id); -logger.trace("-- infields: " + executor.inFields); - -var ifDecision = executor.inFields["decision"]; -var ifMatchStart = executor.inFields["matchStart"]; - -var albumCustomerMap = executor.getContextAlbum("albumCustomerMap"); -var albumProblemMap = executor.getContextAlbum("albumProblemMap"); - -switch (ifDecision.get("decision").toString()) { -case "NONE": - executor.outFields["edgeName"] = ""; - executor.outFields["action"] = ""; - break; -case "IMPEDE": - for (var i = 0; i < ifDecision.get("customers").size(); i++) { - customer = albumCustomerMap.get(ifDecision.get("customers").get(i).toString()); - executor.outFields["edgeName"] = customer.get("links").get(0); - executor.outFields["action"] = "firewall"; - } - break; -case "REBUILD": - // finally solved, remove problem - albumProblemMap.remove(ifDecision.get("problemID")); - executor.outFields["edgeName"] = "L10"; // this is ###static### - executor.outFields["action"] = "rebuild"; // this is ###static### - break; -default: - -} - -if (executor.outFields["action"] != "") { - logger.info("vpnsla: action is to " + executor.outFields["action"] + " " + executor.outFields["edgeName"]); -} else { - logger.info("vpnsla: no action required"); -} - -logger.trace("-- outfields: " + executor.outFields); -logger.trace("finished: " + executor.subject.id); -logger.debug(".a"); - -var now = new Date().getTime(); -logger.info("VPN SLA finished in " + (now - ifMatchStart) + " ms"); - -true; diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-decide-none.js b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-decide-none.js deleted file mode 100644 index 9471b02d0..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-decide-none.js +++ /dev/null @@ -1,59 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * Copyright (C) 2016-2018 Ericsson. All rights reserved. - * Modifications Copyright (C) 2020 Nordix Foundation. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -importClass(org.slf4j.LoggerFactory); - -importClass(java.util.ArrayList); - -importClass(org.apache.avro.generic.GenericData.Array); -importClass(org.apache.avro.generic.GenericRecord); -importClass(org.apache.avro.Schema); - -var logger = executor.logger; -logger.trace("start: " + executor.subject.id); -logger.trace("-- infields: " + executor.inFields); - -var rootLogger = LoggerFactory.getLogger(logger.ROOT_LOGGER_NAME); - -var ifSituation = executor.inFields["situation"]; - -// create outfiled for decision -var decision = executor.subject.getOutFieldSchemaHelper("decision").createNewInstance(); -decision.put("description", "None, everything is ok"); -decision.put("decision", "NONE"); -decision.put("customers", new ArrayList()); - -var returnValue = true; -if (ifSituation.get("problemID") == "NONE") { - logger.trace("-- no problem, everything ok"); -} else { - logger.trace("-- wrong problemID <" + problemID + "> for NONE task, we should not be here"); - rootLogger.error(executor.subject.id + " " + "-- wrong problemID <" + problemID - + "> for NONE task, we should not be here"); - returnValue = false; -} - -executor.outFields["decision"] = decision; - -logger.trace("finished: " + executor.subject.id); -logger.debug(".d-non"); - -returnValue; diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-decide-priority.js b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-decide-priority.js deleted file mode 100644 index 2afedfd0c..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-decide-priority.js +++ /dev/null @@ -1,77 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * Copyright (C) 2016-2018 Ericsson. All rights reserved. - * Modifications Copyright (C) 2020 Nordix Foundation. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -importClass(org.slf4j.LoggerFactory); - -importClass(java.util.ArrayList); - -importClass(org.apache.avro.generic.GenericData.Array); -importClass(org.apache.avro.generic.GenericRecord); -importClass(org.apache.avro.Schema); - -var logger = executor.logger; -logger.trace("start: " + executor.subject.id); -logger.trace("-- infields: " + executor.inFields); - -var rootLogger = LoggerFactory.getLogger(logger.ROOT_LOGGER_NAME); - -var ifSituation = executor.inFields["situation"]; - -var albumCustomerMap = executor.getContextAlbum("albumCustomerMap"); -var albumProblemMap = executor.getContextAlbum("albumProblemMap"); - -// create outfiled for decision -var decision = executor.subject.getOutFieldSchemaHelper("decision").createNewInstance(); -decision.put("description", "None, everything is ok"); -decision.put("decision", "IMPEDE"); -decision.put("problemID", ifSituation.get("problemID")); -decision.put("customers", new ArrayList()); - -var problem = albumProblemMap.get(ifSituation.get("problemID")); -var returnValue = true; -if (problem != null && ifSituation.get("violatedSLAs").size() > 0) { - logger.trace("-- impede by priority"); - for (var i = 0; i < problem.get("edgeUsedBy").size(); i++) { - customerCtxt = albumCustomerMap.get(problem.get("edgeUsedBy").get(i).toString()); - if (customerCtxt.get("priority") == false) { - decision.get("customers").add(customerCtxt.get("customerName")); - } - } -} else { - logger.trace("-- wrong problemID <" + ifSituation.get("problemID") + "> for PRIORITY task, we should not be here"); - rootLogger.error(executor.subject.id + " " + "-- wrong problemID <" + ifSituation.get("problemID") - + "> for PRIORITY task, we should not be here"); - returnValue = false; -} - -// set impededLast to decision[customers] -problem.get("impededLast").clear(); -problem.get("impededLast").addAll(decision.get("customers")); - -executor.outFields["decision"] = decision; -logger.trace("-- decision: " + decision); - -logger.info("vpnsla: priority, impeding customers " + decision.get("customers")); - -logger.trace("finished: " + executor.subject.id); -logger.debug(".d-pri"); - -returnValue; diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-decide-sla.js b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-decide-sla.js deleted file mode 100644 index a65814fbd..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-decide-sla.js +++ /dev/null @@ -1,84 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * Copyright (C) 2016-2018 Ericsson. All rights reserved. - * Modifications Copyright (C) 2020 Nordix Foundation. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -importClass(org.slf4j.LoggerFactory); - -importClass(java.util.ArrayList); - -importClass(org.apache.avro.generic.GenericData.Array); -importClass(org.apache.avro.generic.GenericRecord); -importClass(org.apache.avro.Schema); - -var logger = executor.logger; -logger.trace("start: " + executor.subject.id); -logger.trace("-- infields: " + executor.inFields); - -var rootLogger = LoggerFactory.getLogger(logger.ROOT_LOGGER_NAME); - -var ifSituation = executor.inFields["situation"]; - -var albumCustomerMap = executor.getContextAlbum("albumCustomerMap"); -var albumProblemMap = executor.getContextAlbum("albumProblemMap"); - -// create outfiled for decision -var decision = executor.subject.getOutFieldSchemaHelper("decision").createNewInstance(); -decision.put("description", "Impede given customers selected based on maximum SLA delta"); -decision.put("decision", "IMPEDE"); -decision.put("problemID", ifSituation.get("problemID")); -decision.put("customers", new ArrayList()); - -var problem = albumProblemMap.get(ifSituation.get("problemID")); -var returnValue = true; -if (problem != null && ifSituation.get("violatedSLAs").size() == 0) { - logger.trace("-- impede by maximum SLA"); - var customer = ""; - var customerSla = 0; - for (var i = 0; i < problem.get("edgeUsedBy").size(); i++) { - customerCtxt = albumCustomerMap.get(problem.get("edgeUsedBy").get(i).toString()); - if (customerSla == 0) { - customerSla = customerCtxt.get("dtSLA") - customerCtxt.get("dtYTD"); - } - if ((customerCtxt.get("dtSLA") - customerCtxt.get("dtYTD")) >= customerSla) { - customer = customerCtxt.get("customerName"); - customerSla = (customerCtxt.get("dtSLA") - customerCtxt.get("dtYTD")); - } - } - decision.get("customers").add(customer); -} else { - logger.trace("-- wrong problemID <" + ifSituation.get("problemID") + "> for SLA task, we should not be here"); - rootLogger.error(executor.subject.id + " " + "-- wrong problemID <" + ifSituation.get("problemID") - + "> for SLA task, we should not be here"); - returnValue = false; -} - -// set impededLast to decision[customers] -problem.get("impededLast").clear(); -problem.get("impededLast").addAll(decision.get("customers")); - -executor.outFields["decision"] = decision; -logger.trace("-- decision: " + decision); - -logger.info("vpnsla: sla balance, impeding customers " + decision.get("customers")); - -logger.trace("finished: " + executor.subject.id); -logger.debug(".d-sla"); - -returnValue; diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-decide-solved.js b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-decide-solved.js deleted file mode 100644 index 6306ee06b..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-decide-solved.js +++ /dev/null @@ -1,64 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * Copyright (C) 2016-2018 Ericsson. All rights reserved. - * Modifications Copyright (C) 2020 Nordix Foundation. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -importClass(org.slf4j.LoggerFactory); - -importClass(java.util.ArrayList); - -importClass(org.apache.avro.generic.GenericData.Array); -importClass(org.apache.avro.generic.GenericRecord); -importClass(org.apache.avro.Schema); - -var logger = executor.logger; -logger.trace("start: " + executor.subject.id); -logger.trace("-- infields: " + executor.inFields); - -var rootLogger = LoggerFactory.getLogger(logger.ROOT_LOGGER_NAME); - -var ifSituation = executor.inFields["situation"]; - -var albumProblemMap = executor.getContextAlbum("albumProblemMap"); - -// create outfiled for decision -var decision = executor.subject.getOutFieldSchemaHelper("decision").createNewInstance(); -decision.put("description", "None, everything is ok"); -decision.put("decision", "REBUILD"); -decision.put("customers", new ArrayList()); -decision.put("problemID", ifSituation.get("problemID")); - -var returnValue = true; -if (albumProblemMap.get(ifSituation.get("problemID")).get("status") == "SOLVED") { - logger.trace("-- problem solved"); -} else { - logger.trace("-- wrong problemID <" + problemID + "> for SOLVED task, we should not be here"); - rootLogger.error(executor.subject.id + " " + "-- wrong problemID <" + problemID - + "> for SOLVED task, we should not be here"); - returnValue = false; -} - -executor.outFields["decision"] = decision; - -logger.info("vpnsla: sla solved, problem solved"); - -logger.trace("finished: " + executor.subject.id); -logger.debug(".d-non"); - -returnValue; diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-establish.js b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-establish.js deleted file mode 100644 index 95a922052..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-establish.js +++ /dev/null @@ -1,170 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * Copyright (C) 2016-2018 Ericsson. All rights reserved. - * Modifications Copyright (C) 2020 Nordix Foundation. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -importClass(org.slf4j.LoggerFactory); - -importClass(java.util.ArrayList); - -importClass(org.apache.avro.generic.GenericData.Array); -importClass(org.apache.avro.generic.GenericRecord); -importClass(org.apache.avro.Schema); - -var logger = executor.logger; -logger.trace("start: " + executor.subject.id); -logger.trace("-- infields: " + executor.inFields); - -var rootLogger = LoggerFactory.getLogger(logger.ROOT_LOGGER_NAME); - -var ifEdgeName = executor.inFields["edgeName"]; -var ifEdgeStatus = executor.inFields["status"].toString(); -var ifhasChanged = executor.inFields["hasChanged"]; -var ifMatchStart = executor.inFields["matchStart"]; - -var albumCustomerMap = executor.getContextAlbum("albumCustomerMap"); -var albumProblemMap = executor.getContextAlbum("albumProblemMap"); - -var linkProblem = albumProblemMap.get(ifEdgeName); - -// create outfiled for situation -var situation = executor.subject.getOutFieldSchemaHelper("situation").createNewInstance(); -situation.put("violatedSLAs", new ArrayList()); - -// create a string as states+hasChanged+linkProblem and switch over it -var switchTest = ifEdgeStatus + ":" + ifhasChanged + ":" + (linkProblem == null ? "no" : "yes"); -switch (switchTest) { -case "UP:false:no": - logger.trace("-- edge <" + ifEdgeName + "> UP:false:no => everything ok"); - logger.info("vpnsla: everything ok"); - situation.put("problemID", "NONE"); - break; -case "UP:false:yes": - logger.trace("-- edge <" + ifEdgeName + "> UP:false:yes ==> did we miss earlier up?, removing problem"); - albumProblemMap.remove(ifEdgeName); - linkProblem = null; - situation.put("problemID", "NONE"); - break; -case "UP:true:no": - logger.trace("-- edge <" + ifEdgeName + "> UP:true:no ==> did we miss the earlier down?, creating new problem"); - situation.put("problemID", ifEdgeName); - break; -case "UP:true:yes": - logger.trace("-- edge <" + ifEdgeName + "> UP:true:yes ==> detected solution, link up again"); - logger.info("vpnsla: problem solved"); - linkProblem.put("endTime", ifMatchStart); - linkProblem.put("status", "SOLVED"); - situation.put("problemID", "NONE"); - break; -case "DOWN:false:no": - logger.trace("-- edge <" + ifEdgeName + "> DOWN:false:no ==> did we miss an earlier down?, creating new problem"); - situation.put("problemID", ifEdgeName); - break; -case "DOWN:false:yes": - logger.trace("-- edge <" + ifEdgeName + "> DOWN:false:yes ==> problem STILL exists"); - logger.info("vpnsla: problem still exists"); - linkProblem.put("status", "STILL"); - situation.put("problemID", ifEdgeName); - break; -case "DOWN:true:no": - logger.trace("-- edge <" + ifEdgeName + "> DOWN:true:no ==> found NEW problem"); - logger.info("vpnsla: this is a new problem"); - situation.put("problemID", ifEdgeName); - break; -case "DOWN:true:yes": - logger.trace("-- edge <" + ifEdgeName - + "> DOWN:true:yes ==> did we miss to remove an earlier problem?, remove and create new problem"); - linkProblem = null; - situation.put("problemID", ifEdgeName); - break; - -default: - logger.error("-- input wrong for edge" + ifEdgeName + ": edge status <" + ifEdgeStatus - + "> unknown or null on hasChanged <" + ifhasChanged + ">"); - rootLogger.error("-- input wrong for edge" + ifEdgeName + ": edge status <" + ifEdgeStatus - + "> unknown or null on hasChanged <" + ifhasChanged + ">"); -} - -// create new problem if situation requires it -if (situation.get("problemID").equals(ifEdgeName) && linkProblem == null) { - logger.trace("-- edge <" + ifEdgeName + "> creating new problem"); - linkProblem = albumProblemMap.getSchemaHelper().createNewInstance(); - linkProblem.put("edge", ifEdgeName); - linkProblem.put("startTime", ifMatchStart); - linkProblem.put("lastUpdate", ifMatchStart); - linkProblem.put("endTime", 0); - linkProblem.put("status", "NEW"); - linkProblem.put("edgeUsedBy", new ArrayList()); - linkProblem.put("impededLast", new ArrayList()); - - for (var i = 0; i < albumCustomerMap.values().size(); i++) { - var customer = albumCustomerMap.values().get(i); - var customerLinks = albumCustomerMap.values().get(i).get("links"); - for (var k = 0; k < customerLinks.size(); k++) { - if (customerLinks.get(k) == ifEdgeName) { - linkProblem.get("edgeUsedBy").add(customer.get("customerName")); - } - } - } - albumProblemMap.put(ifEdgeName, linkProblem); - logger.trace("-- edge <" + ifEdgeName + "> problem created as <" + linkProblem + ">"); -} - -// set dtYTD if situation requires it -if (linkProblem != null && (linkProblem.get("status") == "STILL" || linkProblem.get("status") == "SOLVED")) { - var linkDownTimeinSecs = (ifMatchStart - linkProblem.get("lastUpdate")) / 1000; - logger.trace("-- edge <" + ifEdgeName + "> down time: " + linkDownTimeinSecs + " s"); - for (var k = 0; k < linkProblem.get("impededLast").size(); k++) { - for (var i = 0; i < albumCustomerMap.values().size(); i++) { - var customer = albumCustomerMap.values().get(i); - if (customer.get("customerName").equals(linkProblem.get("impededLast").get(k))) { - logger.info("-- vpnsla: customer " + customer.get("customerName") + " YDT downtime increased from " - + customer.get("dtYTD") + " to " + (customer.get("dtYTD") + linkDownTimeinSecs)); - customer.put("dtYTD", (customer.get("dtYTD") + linkDownTimeinSecs)) - } - } - } - // set lastUpdate to this policy execution for next execution calculation - linkProblem.put("lastUpdate", ifMatchStart); -} - -// check SLA violations if situation requires it -if (linkProblem != null && linkProblem.get("status") != "SOLVED") { - logger.info(">e> customer\tDT SLA\tDT YTD\tviolation"); - for (var i = 0; i < albumCustomerMap.values().size(); i++) { - var customer = albumCustomerMap.values().get(i); - if (customer.get("dtYTD") > customer.get("dtSLA")) { - situation.get("violatedSLAs").add(customer.get("customerName")); - logger.info(">e> " + customer.get("customerName") + "\t\t" + customer.get("dtSLA") + "s\t" - + customer.get("dtYTD") + "s\t" + "!!"); - } else { - logger.info(">e> " + customer.get("customerName") + "\t\t" + customer.get("dtSLA") + "s\t" - + customer.get("dtYTD") + "s"); - } - } -} - -executor.outFields["situation"] = situation; - -logger.trace("-- out fields <" + executor.outFields + ">"); - -logger.trace("finished: " + executor.subject.id); -logger.debug(".e"); - -true; diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-match.js b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-match.js deleted file mode 100644 index 87e5bc377..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-match.js +++ /dev/null @@ -1,79 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * Copyright (C) 2016-2018 Ericsson. All rights reserved. - * Modifications Copyright (C) 2020 Nordix Foundation. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -var now = new Date().getTime(); -executor.outFields["matchStart"] = now; - -importClass(org.slf4j.LoggerFactory); - -var logger = executor.logger; -logger.trace("start: " + executor.subject.id); -logger.trace("-- infields: " + executor.inFields); - -var rootLogger = LoggerFactory.getLogger(logger.ROOT_LOGGER_NAME); - -var ifEdgeName = executor.inFields["edgeName"]; -var ifLinkStatus = executor.inFields["status"]; - -var albumTopoEdges = executor.getContextAlbum("albumTopoEdges"); - -logger.trace("-- got infields, checking albumTopoEdges changes"); - -var active = false; -switch (ifLinkStatus.toString()) { -case "UP": - active = true; - break; -case "DOWN": - active = false; - break; -default: - active = false; - logger.error("-- trigger sent unknown link status <" + ifLinkStatus + "> for link <" + ifEdgeName + ">"); - rootLogger.error(executor.subject.id + " " + "-- trigger sent unknown link status <" + ifLinkStatus - + "> for link <" + ifEdgeName + ">"); -} - -var link = albumTopoEdges.get(ifEdgeName); -if (link == null) { - logger.trace("-- link <" + ifEdgeName + "> not in albumTopoEdges"); -} else { - logger.trace("-- found link <" + link + "> in albumTopoEdges"); - logger.trace("-- active <" + active + "> : link.active <" + link.get("active") + ">"); - if (active != link.get("active")) { - link.put("active", active); - logger.trace("-- link <" + ifEdgeName + "> status changed to <active:" + link.get("active") + ">"); - executor.outFields["hasChanged"] = true; - } else { - logger.trace("-- link <" + ifEdgeName + "> status not changed <active:" + link.get("active") + ">"); - executor.outFields["hasChanged"] = false; - } -} - -executor.outFields["edgeName"] = ifEdgeName; -executor.outFields["status"] = ifLinkStatus; - -logger.info("vpnsla: detected " + ifEdgeName + " as " + ifLinkStatus); - -logger.trace("finished: " + executor.subject.id); -logger.debug(".m"); - -true; diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/tsl-decide.js b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/tsl-decide.js deleted file mode 100644 index 9d4399f27..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/tsl-decide.js +++ /dev/null @@ -1,56 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * Copyright (C) 2016-2018 Ericsson. All rights reserved. - * Modifications Copyright (C) 2020 Nordix Foundation. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -importClass(org.slf4j.LoggerFactory); - -var logger = executor.logger; -logger.trace("start: " + executor.subject.id + " - TSL"); - -var rootLogger = LoggerFactory.getLogger(logger.ROOT_LOGGER_NAME); - -var ifSituation = executor.inFields["situation"]; - -var albumProblemMap = executor.getContextAlbum("albumProblemMap"); - -var returnValue = true; -if (ifSituation.get("problemID") == "NONE") { - logger.trace("-- situation has no problem, selecting <VpnSlaPolicyDecideNoneTask>"); - executor.subject.getTaskKey("VpnSlaPolicyDecideNoneTask").copyTo(executor.selectedTask); -} else if (albumProblemMap.get(ifSituation.get("problemID")).get("status") == "SOLVED") { - logger.trace("-- situation is solved, selecting <VpnSlaPolicyDecideSolvedTask>"); - executor.subject.getTaskKey("VpnSlaPolicyDecideSolvedTask").copyTo(executor.selectedTask); -} else if (ifSituation.get("violatedSLAs") != null && ifSituation.get("violatedSLAs").size() > 0) { - logger.trace("-- situation is problem with violations, selecting <VpnSlaPolicyDecidePriorityTask>"); - executor.subject.getTaskKey("VpnSlaPolicyDecidePriorityTask").copyTo(executor.selectedTask); -} else if (ifSituation.get("violatedSLAs") != null && ifSituation.get("violatedSLAs").size() == 0) { - logger.trace("-- situation is problem without violations, selecting <VpnSlaPolicyDecideSlaTask>"); - executor.subject.getTaskKey("VpnSlaPolicyDecideSlaTask").copyTo(executor.selectedTask); -} else { - logger.error("-- detected unknown decision for situation <" + ifSituation.get("problemID") + ">"); - rootLogger.error(executor.subject.id + " " + "-- detected unknown decision for situation <" - + ifSituation.get("problemID") + ">"); - returnValue = false; -} - -logger.trace("finished: " + executor.subject.id); -logger.debug(".d-tsl"); - -returnValue; diff --git a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/vpnsla.apex b/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/vpnsla.apex deleted file mode 100644 index eb4145788..000000000 --- a/examples/examples-pcvs/src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/vpnsla.apex +++ /dev/null @@ -1,325 +0,0 @@ -#------------------------------------------------------------------------------- -# ============LICENSE_START======================================================= -# Copyright (C) 2016-2018 Ericsson. All rights reserved. -# ================================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# SPDX-License-Identifier: Apache-2.0 -# ============LICENSE_END========================================================= -#------------------------------------------------------------------------------- - -# ============LICENSE_START======================================================= -# Copyright (C) 2016-2018 Ericsson. All rights reserved. -# ================================================================================ -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# SPDX-License-Identifier: Apache-2.0 -# ============LICENSE_END========================================================= - -model create name=PCVS-VpnSla version=1.0.0 description="Policies-Controlled Video Streaming, VPN SLA Policy Model" - - - -schema create name=reportDecl version=1.0.0 description="Report of activities of a policy/task" flavour=Java schema=java.lang.String -event create name=ReportOut version=1.0.0 description="Report of a policy (issued by a task)" nameSpace=org.onap.policy.apex.examples.pcvs.vpnsla source="APEX" target="CtxtManagement" -event parameter create name=ReportOut version=1.0.0 parName=report schemaName=reportDecl schemaVersion=1.0.0 - -schema create name=timestampDecl version=1.0.0 description="Timestamp" flavour=Java schema=java.lang.Long - - - -schema create name=ctxtEdgeNameDecl version=1.0.0 description="Topology Edges: edge (link) name" flavour=Java schema=java.lang.String -schema create name=ctxtEdgeStartDecl version=1.0.0 description="Topology Edges: edge endpoint (start)" flavour=Java schema=java.lang.String -schema create name=ctxtEdgeEndDecl version=1.0.0 description="Topology Edges: edge endpoint (end)" flavour=Java schema=java.lang.String -schema create name=ctxtEdgeStatusDecl version=1.0.0 description="Topology Edges: edge status as up (true) or down (false)" flavour=Java schema=java.lang.Boolean - -schema create name=ctxtTopologyEdgesDecl version=1.0.0 description="Topology Edges Context Map" flavour=Avro schema=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/topology-edges.avsc" -LE -album create name=albumTopoEdges scope=global writable=true schemaName=ctxtTopologyEdgesDecl - - -task create name=EdgeContextTask version=1.0.0 description="This task adds event context to edge context" -task inputfield create name=EdgeContextTask version=1.0.0 fieldName=edgeName schemaName=ctxtEdgeNameDecl schemaVersion=1.0.0 -task inputfield create name=EdgeContextTask version=1.0.0 fieldName=start schemaName=ctxtEdgeStartDecl schemaVersion=1.0.0 -task inputfield create name=EdgeContextTask version=1.0.0 fieldName=end schemaName=ctxtEdgeEndDecl schemaVersion=1.0.0 -task inputfield create name=EdgeContextTask version=1.0.0 fieldName=status schemaName=ctxtEdgeStatusDecl schemaVersion=1.0.0 -task outputfield create name=EdgeContextTask version=1.0.0 fieldName=report schemaName=reportDecl schemaVersion=1.0.0 -task contextref create name=EdgeContextTask albumName=albumTopoEdges -task logic create name=EdgeContextTask logicFlavour=JAVASCRIPT logic=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/ctxt-edges.js" -LE - -event create name=EdgeContextEventIn version=1.0.0 description="Event to add an Edge to engine Context" nameSpace=org.onap.policy.apex.examples.pcvs.vpnsla source="CtxtManagement" target="APEX" -event parameter create name=EdgeContextEventIn version=1.0.0 parName=edgeName schemaName=ctxtEdgeNameDecl schemaVersion=1.0.0 -event parameter create name=EdgeContextEventIn version=1.0.0 parName=start schemaName=ctxtEdgeStartDecl schemaVersion=1.0.0 -event parameter create name=EdgeContextEventIn version=1.0.0 parName=end schemaName=ctxtEdgeEndDecl schemaVersion=1.0.0 -event parameter create name=EdgeContextEventIn version=1.0.0 parName=status schemaName=ctxtEdgeStatusDecl schemaVersion=1.0.0 - -policy create name=EdgeContextPolicy version=1.0.0 description="Policy that adds an edge to context" template=FREEFORM firstState=EdgeContextState -policy state create name=EdgeContextPolicy version=1.0.0 stateName=EdgeContextState triggerName=EdgeContextEventIn triggerVersion=1.0.0 defaultTaskName=EdgeContextTask defaultTaskVersion=1.0.0 -policy state output create name=EdgeContextPolicy version=1.0.0 stateName=EdgeContextState outputName=EdgeContextState_Output_Direct eventName=ReportOut eventVersion=1.0.0 nextState=NULL -policy state taskref create name=EdgeContextPolicy version=1.0.0 stateName=EdgeContextState taskLocalName=doContext taskName=EdgeContextTask taskVersion=1.0.0 outputType=DIRECT outputName=EdgeContextState_Output_Direct - - - -schema create name=ctxtNodeNameDecl version=1.0.0 description="Topology Nodes: node name" flavour=Java schema=java.lang.String -schema create name=ctxtNodeMininetNameDecl version=1.0.0 description="Topology Nodes: node name in Mininet" flavour=Java schema=java.lang.String - -schema create name=ctxtTopologyNodesDecl version=1.0.0 description="Topology Nodes Context Map" flavour=Avro schema=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/topology-nodes.avsc" -LE -album create name=albumTopoNodes scope=global writable=true schemaName=ctxtTopologyNodesDecl - -task create name=NodeContextTask version=1.0.0 description="This task adds event context to node context" -task inputfield create name=NodeContextTask version=1.0.0 fieldName=nodeName schemaName=ctxtNodeNameDecl schemaVersion=1.0.0 -task inputfield create name=NodeContextTask version=1.0.0 fieldName=mininetName schemaName=ctxtNodeMininetNameDecl schemaVersion=1.0.0 -task outputfield create name=NodeContextTask version=1.0.0 fieldName=report schemaName=reportDecl schemaVersion=1.0.0 -task contextref create name=NodeContextTask albumName=albumTopoNodes -task logic create name=NodeContextTask logicFlavour=JAVASCRIPT logic=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/ctxt-nodes.js" -LE - -event create name=NodeContextEventIn version=1.0.0 description="Event to add Node to engine Context" nameSpace=org.onap.policy.apex.examples.pcvs.vpnsla source="CtxtManagement" target="APEX" -event parameter create name=NodeContextEventIn version=1.0.0 parName=nodeName schemaName=ctxtNodeNameDecl schemaVersion=1.0.0 -event parameter create name=NodeContextEventIn version=1.0.0 parName=mininetName schemaName=ctxtNodeMininetNameDecl schemaVersion=1.0.0 - -policy create name=NodeContextPolicy version=1.0.0 description="Policy that adds an node to context" template=FREEFORM firstState=NodeContextState -policy state create name=NodeContextPolicy version=1.0.0 stateName=NodeContextState triggerName=NodeContextEventIn triggerVersion=1.0.0 defaultTaskName=NodeContextTask defaultTaskVersion=1.0.0 -policy state output create name=NodeContextPolicy version=1.0.0 stateName=NodeContextState outputName=NodeContextState_Output_Direct eventName=ReportOut eventVersion=1.0.0 nextState=NULL -policy state taskref create name=NodeContextPolicy version=1.0.0 stateName=NodeContextState taskLocalName=doContext taskName=NodeContextTask taskVersion=1.0.0 outputType=DIRECT outputName=NodeContextState_Output_Direct - - - - -schema create name=ctxtCustomerNameDecl version=1.0.0 description="Customer Context: customer name" flavour=Java schema=java.lang.String -schema create name=ctxtCustomerPriorityDecl version=1.0.0 description="Customer Context: priority flag" flavour=Java schema=java.lang.Boolean -schema create name=ctxtCustomerSatisfactionDecl version=1.0.0 description="Customer Context: satisfaction in percent" flavour=Java schema=java.lang.Integer -schema create name=ctxtCustomerDowntimeSLADecl version=1.0.0 description="Customer Context: contracted downtime as per SLA" flavour=Java schema=java.lang.Integer -schema create name=ctxtCustomerDowntimeYTDDecl version=1.0.0 description="Customer Context: year-to-date downtime experienced" flavour=Java schema=java.lang.Integer -schema create name=ctxtCustomerLinksDecl version=1.0.0 description="Customer Context: links a customer uses (for events/task)" flavour=Java schema=java.lang.String - -schema create name=ctxtCustomerMapDecl version=1.0.0 description="Map of customers with all known information" flavour=Avro schema=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/customers.avsc" -LE -album create name=albumCustomerMap scope=global writable=true schemaName=ctxtCustomerMapDecl - -task create name=CustomerContextTask version=1.0.0 description="This task adds event context to customer context" -task inputfield create name=CustomerContextTask version=1.0.0 fieldName=customerName schemaName=ctxtCustomerNameDecl schemaVersion=1.0.0 -task inputfield create name=CustomerContextTask version=1.0.0 fieldName=priority schemaName=ctxtCustomerPriorityDecl schemaVersion=1.0.0 -task inputfield create name=CustomerContextTask version=1.0.0 fieldName=satisfaction schemaName=ctxtCustomerSatisfactionDecl schemaVersion=1.0.0 -task inputfield create name=CustomerContextTask version=1.0.0 fieldName=dtSLA schemaName=ctxtCustomerDowntimeSLADecl schemaVersion=1.0.0 -task inputfield create name=CustomerContextTask version=1.0.0 fieldName=dtYTD schemaName=ctxtCustomerDowntimeYTDDecl schemaVersion=1.0.0 -task inputfield create name=CustomerContextTask version=1.0.0 fieldName=links schemaName=ctxtCustomerLinksDecl schemaVersion=1.0.0 -task outputfield create name=CustomerContextTask version=1.0.0 fieldName=report schemaName=reportDecl schemaVersion=1.0.0 -task contextref create name=CustomerContextTask albumName=albumCustomerMap -task contextref create name=CustomerContextTask albumName=albumTopoEdges -task logic create name=CustomerContextTask logicFlavour=JAVASCRIPT logic=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/ctxt-customer.js" -LE - -event create name=CustomerContextEventIn version=1.0.0 description="Event to add Customers to engine Context" nameSpace=org.onap.policy.apex.examples.pcvs.vpnsla source="CtxtManagement" target="APEX" -event parameter create name=CustomerContextEventIn version=1.0.0 parName=customerName schemaName=ctxtCustomerNameDecl schemaVersion=1.0.0 -event parameter create name=CustomerContextEventIn version=1.0.0 parName=priority schemaName=ctxtCustomerPriorityDecl schemaVersion=1.0.0 -event parameter create name=CustomerContextEventIn version=1.0.0 parName=satisfaction schemaName=ctxtCustomerSatisfactionDecl schemaVersion=1.0.0 -event parameter create name=CustomerContextEventIn version=1.0.0 parName=dtSLA schemaName=ctxtCustomerDowntimeSLADecl schemaVersion=1.0.0 -event parameter create name=CustomerContextEventIn version=1.0.0 parName=dtYTD schemaName=ctxtCustomerDowntimeYTDDecl schemaVersion=1.0.0 -event parameter create name=CustomerContextEventIn version=1.0.0 parName=links schemaName=ctxtCustomerLinksDecl schemaVersion=1.0.0 - -policy create name=CustomerContextPolicy version=1.0.0 description="Policy that adds Customer information to engine context" template=FREEFORM firstState=CustomerContextState -policy state create name=CustomerContextPolicy version=1.0.0 stateName=CustomerContextState triggerName=CustomerContextEventIn triggerVersion=1.0.0 defaultTaskName=CustomerContextTask defaultTaskVersion=1.0.0 -policy state output create name=CustomerContextPolicy version=1.0.0 stateName=CustomerContextState outputName=CustomerContextState_Output_Direct eventName=ReportOut eventVersion=1.0.0 nextState=NULL -policy state taskref create name=CustomerContextPolicy version=1.0.0 stateName=CustomerContextState taskLocalName=doContext taskName=CustomerContextTask taskVersion=1.0.0 outputType=DIRECT outputName=CustomerContextState_Output_Direct - - - - -schema create name=edgeNameDecl version=1.0.0 description="Edge name" flavour=Java schema=java.lang.String -schema create name=edgeStatusDecl version=1.0.0 description="Statuf of the edge (UP, DOWN)" flavour=Avro schema=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/link-status.avsc" -LE -schema create name=edgeChangedDecl version=1.0.0 description="Status Change (true:change, false:no change)" flavour=Java schema=java.lang.Boolean - -task create name=VpnSlaPolicyMatchTask version=1.0.0 description="Pre-process an edge event" -task inputfield create name=VpnSlaPolicyMatchTask version=1.0.0 fieldName=edgeName schemaName=edgeNameDecl schemaVersion=1.0.0 -task inputfield create name=VpnSlaPolicyMatchTask version=1.0.0 fieldName=status schemaName=edgeStatusDecl schemaVersion=1.0.0 -task outputfield create name=VpnSlaPolicyMatchTask version=1.0.0 fieldName=edgeName schemaName=edgeNameDecl schemaVersion=1.0.0 -task outputfield create name=VpnSlaPolicyMatchTask version=1.0.0 fieldName=status schemaName=edgeStatusDecl schemaVersion=1.0.0 -task outputfield create name=VpnSlaPolicyMatchTask version=1.0.0 fieldName=hasChanged schemaName=edgeChangedDecl schemaVersion=1.0.0 -task outputfield create name=VpnSlaPolicyMatchTask version=1.0.0 fieldName=matchStart schemaName=timestampDecl schemaVersion=1.0.0 -task contextref create name=VpnSlaPolicyMatchTask albumName=albumTopoEdges -task logic create name=VpnSlaPolicyMatchTask logicFlavour=JAVASCRIPT logic=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-match.js" -LE - - - - -schema create name=problemMapDecl version=1.0.0 description="Map of problems with all known Information" flavour=Avro schema=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/problems.avsc" -LE -album create name=albumProblemMap scope=global writable=true schemaName=problemMapDecl - -schema create name=establishSituationDecl version=1.0.0 description="Establish: the situation that was established" flavour=Avro schema=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/situation.avsc" -LE - -task create name=VpnSlaPolicyEstablishTask version=1.0.0 description="Task taking a match event and establishing a situation" -task inputfield create name=VpnSlaPolicyEstablishTask version=1.0.0 fieldName=edgeName schemaName=edgeNameDecl schemaVersion=1.0.0 -task inputfield create name=VpnSlaPolicyEstablishTask version=1.0.0 fieldName=status schemaName=edgeStatusDecl schemaVersion=1.0.0 -task inputfield create name=VpnSlaPolicyEstablishTask version=1.0.0 fieldName=hasChanged schemaName=edgeChangedDecl schemaVersion=1.0.0 -task inputfield create name=VpnSlaPolicyEstablishTask version=1.0.0 fieldName=matchStart schemaName=timestampDecl schemaVersion=1.0.0 -task outputfield create name=VpnSlaPolicyEstablishTask version=1.0.0 fieldName=situation schemaName=establishSituationDecl schemaVersion=1.0.0 -task outputfield create name=VpnSlaPolicyEstablishTask version=1.0.0 fieldName=matchStart schemaName=timestampDecl schemaVersion=1.0.0 -task contextref create name=VpnSlaPolicyEstablishTask albumName=albumProblemMap -task contextref create name=VpnSlaPolicyEstablishTask albumName=albumCustomerMap -task logic create name=VpnSlaPolicyEstablishTask logicFlavour=JAVASCRIPT logic=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-establish.js" -LE - - - - -schema create name=decideDecisionDecl version=1.0.0 description="Decide: the taken decision" flavour=Avro schema=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/avro/decision.avsc" -LE - -task create name=VpnSlaPolicyDecideNoneTask version=1.0.0 description="Decide task for a 'none' problem" -task inputfield create name=VpnSlaPolicyDecideNoneTask version=1.0.0 fieldName=situation schemaName=establishSituationDecl schemaVersion=1.0.0 -task inputfield create name=VpnSlaPolicyDecideNoneTask version=1.0.0 fieldName=matchStart schemaName=timestampDecl schemaVersion=1.0.0 -task outputfield create name=VpnSlaPolicyDecideNoneTask version=1.0.0 fieldName=decision schemaName=decideDecisionDecl schemaVersion=1.0.0 -task outputfield create name=VpnSlaPolicyDecideNoneTask version=1.0.0 fieldName=matchStart schemaName=timestampDecl schemaVersion=1.0.0 -task logic create name=VpnSlaPolicyDecideNoneTask logicFlavour=JAVASCRIPT logic=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-decide-none.js" -LE - - -task create name=VpnSlaPolicyDecideSlaTask version=1.0.0 description="Decide task solving the problem by balancing SLAs" -task inputfield create name=VpnSlaPolicyDecideSlaTask version=1.0.0 fieldName=situation schemaName=establishSituationDecl schemaVersion=1.0.0 -task inputfield create name=VpnSlaPolicyDecideSlaTask version=1.0.0 fieldName=matchStart schemaName=timestampDecl schemaVersion=1.0.0 -task outputfield create name=VpnSlaPolicyDecideSlaTask version=1.0.0 fieldName=decision schemaName=decideDecisionDecl schemaVersion=1.0.0 -task outputfield create name=VpnSlaPolicyDecideSlaTask version=1.0.0 fieldName=matchStart schemaName=timestampDecl schemaVersion=1.0.0 -task contextref create name=VpnSlaPolicyDecideSlaTask albumName=albumCustomerMap -task contextref create name=VpnSlaPolicyDecideSlaTask albumName=albumProblemMap -task logic create name=VpnSlaPolicyDecideSlaTask logicFlavour=JAVASCRIPT logic=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-decide-sla.js" -LE - - -task create name=VpnSlaPolicyDecidePriorityTask version=1.0.0 description="Decide task solving the problem by using customer priorities" -task inputfield create name=VpnSlaPolicyDecidePriorityTask version=1.0.0 fieldName=situation schemaName=establishSituationDecl schemaVersion=1.0.0 -task inputfield create name=VpnSlaPolicyDecidePriorityTask version=1.0.0 fieldName=matchStart schemaName=timestampDecl schemaVersion=1.0.0 -task outputfield create name=VpnSlaPolicyDecidePriorityTask version=1.0.0 fieldName=decision schemaName=decideDecisionDecl schemaVersion=1.0.0 -task outputfield create name=VpnSlaPolicyDecidePriorityTask version=1.0.0 fieldName=matchStart schemaName=timestampDecl schemaVersion=1.0.0 -task contextref create name=VpnSlaPolicyDecidePriorityTask albumName=albumCustomerMap -task contextref create name=VpnSlaPolicyDecidePriorityTask albumName=albumProblemMap -task logic create name=VpnSlaPolicyDecidePriorityTask logicFlavour=JAVASCRIPT logic=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-decide-priority.js" -LE - - -task create name=VpnSlaPolicyDecideSolvedTask version=1.0.0 description="Decide task solving the problem by using customer priorities" -task inputfield create name=VpnSlaPolicyDecideSolvedTask version=1.0.0 fieldName=situation schemaName=establishSituationDecl schemaVersion=1.0.0 -task inputfield create name=VpnSlaPolicyDecideSolvedTask version=1.0.0 fieldName=matchStart schemaName=timestampDecl schemaVersion=1.0.0 -task outputfield create name=VpnSlaPolicyDecideSolvedTask version=1.0.0 fieldName=decision schemaName=decideDecisionDecl schemaVersion=1.0.0 -task outputfield create name=VpnSlaPolicyDecideSolvedTask version=1.0.0 fieldName=matchStart schemaName=timestampDecl schemaVersion=1.0.0 -task contextref create name=VpnSlaPolicyDecideSolvedTask albumName=albumProblemMap -task logic create name=VpnSlaPolicyDecideSolvedTask logicFlavour=JAVASCRIPT logic=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-decide-solved.js" -LE - - - - -schema create name=actionDecl version=1.0.0 description="An action for the actioning system" flavour=Java schema=java.lang.String - -task create name=VpnSlaPolicyActTask version=1.0.0 description="Task issueing an action for taken decision" -task inputfield create name=VpnSlaPolicyActTask version=1.0.0 fieldName=decision schemaName=decideDecisionDecl schemaVersion=1.0.0 -task inputfield create name=VpnSlaPolicyActTask version=1.0.0 fieldName=matchStart schemaName=timestampDecl schemaVersion=1.0.0 -task outputfield create name=VpnSlaPolicyActTask version=1.0.0 fieldName=edgeName schemaName=edgeNameDecl schemaVersion=1.0.0 -task outputfield create name=VpnSlaPolicyActTask version=1.0.0 fieldName=action schemaName=actionDecl schemaVersion=1.0.0 -task contextref create name=VpnSlaPolicyActTask albumName=albumCustomerMap -task contextref create name=VpnSlaPolicyActTask albumName=albumProblemMap -task logic create name=VpnSlaPolicyActTask logicFlavour=JAVASCRIPT logic=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/task-act.js" -LE - - - - - - - -event create name=VpnSlaTrigger version=1.0.0 description="Event triggering the VPN SLA policy" nameSpace=org.onap.policy.apex.examples.pcvs.vpnsla source="TriggerSys" target="VpnSlaMatch" -event parameter create name=VpnSlaTrigger version=1.0.0 parName=edgeName schemaName=edgeNameDecl schemaVersion=1.0.0 -event parameter create name=VpnSlaTrigger version=1.0.0 parName=status schemaName=edgeStatusDecl schemaVersion=1.0.0 - -event create name=VpnSlaMatchOut version=1.0.0 description="Event with matched trigger for the VPN SLA policy" nameSpace=org.onap.policy.apex.examples.pcvs.vpnsla source="VpnSlaMatch" target="VpnSlaEstablish" -event parameter create name=VpnSlaMatchOut version=1.0.0 parName=edgeName schemaName=edgeNameDecl schemaVersion=1.0.0 -event parameter create name=VpnSlaMatchOut version=1.0.0 parName=status schemaName=edgeStatusDecl schemaVersion=1.0.0 -event parameter create name=VpnSlaMatchOut version=1.0.0 parName=hasChanged schemaName=edgeChangedDecl schemaVersion=1.0.0 -event parameter create name=VpnSlaMatchOut version=1.0.0 parName=matchStart schemaName=timestampDecl schemaVersion=1.0.0 - -event create name=VpnSlaEstablishOut version=1.0.0 description="Event with situation for the SLA policy" nameSpace=org.onap.policy.apex.examples.pcvs.vpnsla source="SlaEstablish" target="SlaDecide" -event parameter create name=VpnSlaEstablishOut version=1.0.0 parName=situation schemaName=establishSituationDecl schemaVersion=1.0.0 -event parameter create name=VpnSlaEstablishOut version=1.0.0 parName=matchStart schemaName=timestampDecl schemaVersion=1.0.0 - -event create name=VpnSlaDecideOut version=1.0.0 description="Event with a decision for the SLA policy" nameSpace=org.onap.policy.apex.examples.pcvs.vpnsla source="SlaDecide" target="SlaAct" -event parameter create name=VpnSlaDecideOut version=1.0.0 parName=decision schemaName=decideDecisionDecl schemaVersion=1.0.0 -event parameter create name=VpnSlaDecideOut version=1.0.0 parName=matchStart schemaName=timestampDecl schemaVersion=1.0.0 - -event create name=VpnSlaActOut version=1.0.0 description="Event action" nameSpace=org.onap.policy.apex.examples.pcvs.vpnsla source="SlaAct" target="ActioningSystem" -event parameter create name=VpnSlaActOut version=1.0.0 parName=edgeName schemaName=edgeNameDecl schemaVersion=1.0.0 -event parameter create name=VpnSlaActOut version=1.0.0 parName=action schemaName=actionDecl schemaVersion=1.0.0 - - -policy create name=VpnSlaPolicy version=1.0.0 description="Policy deciding customer treatment based on SLAs as MEDA policy" template=FREEFORM firstState=VpnSlaPolicyMatchState - -policy state create name=VpnSlaPolicy version=1.0.0 stateName=VpnSlaPolicyActState triggerName=VpnSlaDecideOut triggerVersion=1.0.0 defaultTaskName=VpnSlaPolicyActTask defaultTaskVersion=1.0.0 -policy state output create name=VpnSlaPolicy version=1.0.0 stateName=VpnSlaPolicyActState outputName=SlaPolicyAct_Output_Direct eventName=VpnSlaActOut eventVersion=1.0.0 nextState=NULL -policy state taskref create name=VpnSlaPolicy version=1.0.0 stateName=VpnSlaPolicyActState taskLocalName=act taskName=VpnSlaPolicyActTask taskVersion=1.0.0 outputType=DIRECT outputName=SlaPolicyAct_Output_Direct - -policy state create name=VpnSlaPolicy version=1.0.0 stateName=VpnSlaPolicyDecideState triggerName=VpnSlaEstablishOut triggerVersion=1.0.0 defaultTaskName=VpnSlaPolicyDecideSlaTask defaultTaskVersion=1.0.0 -policy state contextref create name=VpnSlaPolicy version=1.0.0 stateName=VpnSlaPolicyDecideState albumName=albumProblemMap -policy state selecttasklogic create name=VpnSlaPolicy stateName=VpnSlaPolicyDecideState logicFlavour=JAVASCRIPT logic=LS -#MACROFILE:"src/main/resources/org/onap/policy/apex/examples/pcvs/vpnsla/logic/tsl-decide.js" -LE -policy state output create name=VpnSlaPolicy version=1.0.0 stateName=VpnSlaPolicyDecideState outputName=VpnSlaPolicyDecide_Output_Direct eventName=VpnSlaDecideOut eventVersion=1.0.0 nextState=VpnSlaPolicyActState -policy state taskref create name=VpnSlaPolicy version=1.0.0 stateName=VpnSlaPolicyDecideState taskLocalName=decideNone taskName=VpnSlaPolicyDecideNoneTask taskVersion=1.0.0 outputType=DIRECT outputName=VpnSlaPolicyDecide_Output_Direct -policy state taskref create name=VpnSlaPolicy version=1.0.0 stateName=VpnSlaPolicyDecideState taskLocalName=decideNone taskName=VpnSlaPolicyDecideSolvedTask taskVersion=1.0.0 outputType=DIRECT outputName=VpnSlaPolicyDecide_Output_Direct -policy state taskref create name=VpnSlaPolicy version=1.0.0 stateName=VpnSlaPolicyDecideState taskLocalName=decideSla taskName=VpnSlaPolicyDecideSlaTask taskVersion=1.0.0 outputType=DIRECT outputName=VpnSlaPolicyDecide_Output_Direct -policy state taskref create name=VpnSlaPolicy version=1.0.0 stateName=VpnSlaPolicyDecideState taskLocalName=decidePriority taskName=VpnSlaPolicyDecidePriorityTask taskVersion=1.0.0 outputType=DIRECT outputName=VpnSlaPolicyDecide_Output_Direct - -policy state create name=VpnSlaPolicy version=1.0.0 stateName=VpmSlaPolicyEstablishState triggerName=VpnSlaMatchOut triggerVersion=1.0.0 defaultTaskName=VpnSlaPolicyEstablishTask defaultTaskVersion=1.0.0 -policy state output create name=VpnSlaPolicy version=1.0.0 stateName=VpmSlaPolicyEstablishState outputName=VpnSlaPolicyEstablish_Output_Direct eventName=VpnSlaEstablishOut eventVersion=1.0.0 nextState=VpnSlaPolicyDecideState -policy state taskref create name=VpnSlaPolicy version=1.0.0 stateName=VpmSlaPolicyEstablishState taskLocalName=establish taskName=VpnSlaPolicyEstablishTask taskVersion=1.0.0 outputType=DIRECT outputName=VpnSlaPolicyEstablish_Output_Direct - -policy state create name=VpnSlaPolicy version=1.0.0 stateName=VpnSlaPolicyMatchState triggerName=VpnSlaTrigger triggerVersion=1.0.0 defaultTaskName=VpnSlaPolicyMatchTask defaultTaskVersion=1.0.0 -policy state output create name=VpnSlaPolicy version=1.0.0 stateName=VpnSlaPolicyMatchState outputName=VpnSlaPolicyMatch_Output_Direct eventName=VpnSlaMatchOut eventVersion=1.0.0 nextState=VpmSlaPolicyEstablishState -policy state taskref create name=VpnSlaPolicy version=1.0.0 stateName=VpnSlaPolicyMatchState taskLocalName=match taskName=VpnSlaPolicyMatchTask taskVersion=1.0.0 outputType=DIRECT outputName=VpnSlaPolicyMatch_Output_Direct - - - -validate -quit - |