diff options
Diffstat (limited to 'src/main')
25 files changed, 36 insertions, 2037 deletions
diff --git a/src/main/java/org/onap/clamp/clds/client/StringMatchPolicyDelegate.java b/src/main/java/org/onap/clamp/clds/client/StringMatchPolicyDelegate.java deleted file mode 100644 index d149137b6..000000000 --- a/src/main/java/org/onap/clamp/clds/client/StringMatchPolicyDelegate.java +++ /dev/null @@ -1,74 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. 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. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.client; - -import java.util.UUID; - -import org.camunda.bpm.engine.delegate.DelegateExecution; -import org.camunda.bpm.engine.delegate.JavaDelegate; -import org.onap.clamp.clds.client.req.StringMatchPolicyReq; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.prop.StringMatch; -import org.onap.clamp.clds.model.refprop.RefProp; -import org.springframework.beans.factory.annotation.Autowired; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; - -/** - * Send String Match info to policy api. - */ -public class StringMatchPolicyDelegate implements JavaDelegate { - protected static final EELFLogger logger = EELFManager.getInstance() - .getLogger(StringMatchPolicyDelegate.class); - protected static final EELFLogger metricsLogger = EELFManager.getInstance().getMetricsLogger(); - - @Autowired - private PolicyClient policyClient; - - @Autowired - private RefProp refProp; - - /** - * Perform activity. Send String Match info to policy api. - * - * @param execution - */ - @Override - public void execute(DelegateExecution execution) throws Exception { - String stringMatchPolicyRequestUuid = UUID.randomUUID().toString(); - execution.setVariable("stringMatchPolicyRequestUuid", stringMatchPolicyRequestUuid); - - ModelProperties prop = ModelProperties.create(execution); - StringMatch stringMatch = prop.getType(StringMatch.class); - if (stringMatch.isFound()) { - String policyJson = StringMatchPolicyReq.format(refProp, prop); - String responseMessage = policyClient.sendMicroServiceInJson(policyJson, prop, stringMatchPolicyRequestUuid); - if (responseMessage != null) { - execution.setVariable("stringMatchPolicyResponseMessage", responseMessage.getBytes()); - } - } - } - -} diff --git a/src/main/java/org/onap/clamp/clds/client/StringMatchPolicyDeleteDelegate.java b/src/main/java/org/onap/clamp/clds/client/StringMatchPolicyDeleteDelegate.java deleted file mode 100644 index 5bda8d361..000000000 --- a/src/main/java/org/onap/clamp/clds/client/StringMatchPolicyDeleteDelegate.java +++ /dev/null @@ -1,62 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. 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. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.client; - -import org.camunda.bpm.engine.delegate.DelegateExecution; -import org.camunda.bpm.engine.delegate.JavaDelegate; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.prop.StringMatch; -import org.springframework.beans.factory.annotation.Autowired; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; - -/** - * Delete String Match Policy via policy api. - */ -public class StringMatchPolicyDeleteDelegate implements JavaDelegate { - protected static final EELFLogger logger = EELFManager.getInstance() - .getLogger(StringMatchPolicyDeleteDelegate.class); - protected static final EELFLogger metricsLogger = EELFManager.getInstance().getMetricsLogger(); - - @Autowired - private PolicyClient policyClient; - - /** - * Perform activity. Delete String Match Policy via policy api. - * - * @param execution - */ - @Override - public void execute(DelegateExecution execution) throws Exception { - ModelProperties prop = ModelProperties.create(execution); - StringMatch stringMatch = prop.getType(StringMatch.class); - if (stringMatch.isFound()) { - prop.setCurrentModelElementId(stringMatch.getId()); - - policyClient.deleteMicrosService(prop); - } - } - -} diff --git a/src/main/java/org/onap/clamp/clds/client/req/SdcReq.java b/src/main/java/org/onap/clamp/clds/client/req/SdcReq.java index f8351ca5d..c5e26f30a 100644 --- a/src/main/java/org/onap/clamp/clds/client/req/SdcReq.java +++ b/src/main/java/org/onap/clamp/clds/client/req/SdcReq.java @@ -50,7 +50,6 @@ import org.onap.clamp.clds.model.CldsSdcResource; import org.onap.clamp.clds.model.CldsSdcServiceDetail; import org.onap.clamp.clds.model.prop.Global; import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.prop.StringMatch; import org.onap.clamp.clds.model.prop.Tca; import org.onap.clamp.clds.model.refprop.RefProp; @@ -88,22 +87,8 @@ public class SdcReq { String yamlvalue = getYamlvalue(docText); String updatedBlueprint = ""; - StringMatch stringMatch = prop.getType(StringMatch.class); Tca tca = prop.getType(Tca.class); - if (stringMatch.isFound()) { - prop.setCurrentModelElementId(stringMatch.getId()); - ObjectMapper objectMapper = new ObjectMapper(); - ObjectNode serviceConfigurations = objectMapper.createObjectNode(); - - StringMatchPolicyReq.appendServiceConfigurations(refProp, service, serviceConfigurations, stringMatch, - prop); - logger.info("Value of serviceConfigurations:" + serviceConfigurations); - ObjectNode servConfNode = (ObjectNode) serviceConfigurations.get("serviceConfigurations"); - - // get updated blueprint by attaching service Conf from - // globalProperties - updatedBlueprint = getUpdatedBlueprintWithServiceConf(refProp, prop, yamlvalue, servConfNode); - } else if (tca.isFound()) { + if (tca.isFound()) { prop.setCurrentModelElementId(tca.getId()); ObjectNode rootNode = (ObjectNode) refProp.getJsonTemplate("tca.template", service); ObjectNode content = rootNode.with("content"); @@ -121,50 +106,6 @@ public class SdcReq { return updatedBlueprint; } - private static String getUpdatedBlueprintWithServiceConf(RefProp refProp, ModelProperties prop, String yamlValue, - ObjectNode serviceConf) throws IOException { - Yaml yaml = new Yaml(); - - // Serialiaze Yaml file - Map<String, Map> loadedYaml = (Map<String, Map>) yaml.load(yamlValue); - // Get node templates information from Yaml - Map<String, Map> nodeTemplates = loadedYaml.get("node_templates"); - logger.info("value of NodeTemplates:" + nodeTemplates); - - // Get StringMatch Object information from node templates of Yaml - Map<String, Map> smObject = nodeTemplates.get("SM"); - logger.info("value of StringMatch:" + smObject); - - // Get Properties Object information from stringmatch of Yaml - Map<String, String> propsObject = smObject.get("properties"); - logger.info("value of PropsObject:" + propsObject); - - String deploymentJsonObject = propsObject.get("deployment_JSON"); - logger.info("value of deploymentJson:" + deploymentJsonObject); - - ObjectMapper mapper = new ObjectMapper(); - ObjectNode deployJsonNode = (ObjectNode) mapper.readTree(deploymentJsonObject); - ObjectNode configurationObjectNode = (ObjectNode) deployJsonNode.get("configuration"); - - // "policyName":"example_model06.ClosedLoop_FRWL_SIG_0538e6f2_8c1b_4656_9999_3501b3c59ad7_StringMatch_", - String policyNamePrefix = refProp.getStringValue("policy.ms.policyNamePrefix"); - String policyName = prop.getCurrentPolicyScopeAndFullPolicyName(policyNamePrefix); - configurationObjectNode.put("policyName", policyName); - - // "closedLoopControlName":"ClosedLoop-FRWL-SIG-0538e6f2-8c1b-4656-9999-3501b3c59ad7", - configurationObjectNode.put("closedLoopControlName", prop.getControlName()); - configurationObjectNode.put("messageReaderConsumerGroup", prop.getModelName()); - configurationObjectNode.set("serviceConfigurations", serviceConf); - propsObject.put("deployment_JSON", deployJsonNode.toString()); - String blueprint = yaml.dump(loadedYaml); - logger.info("value of updated Yaml File:" + blueprint); - - blueprint = yaml.dump(loadedYaml); - logger.info("value of updated Yaml File:" + blueprint); - - return blueprint; - } - private static String getUpdatedBlueprintWithConfiguration(RefProp refProp, ModelProperties prop, String yamlValue, ObjectNode serviceConf) throws JsonProcessingException, IOException { String blueprint = ""; diff --git a/src/main/java/org/onap/clamp/clds/client/req/StringMatchPolicyReq.java b/src/main/java/org/onap/clamp/clds/client/req/StringMatchPolicyReq.java deleted file mode 100644 index 5884c3dd2..000000000 --- a/src/main/java/org/onap/clamp/clds/client/req/StringMatchPolicyReq.java +++ /dev/null @@ -1,139 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. 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. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.client.req; - -import java.io.IOException; -import java.util.Iterator; -import java.util.Map.Entry; - -import org.onap.clamp.clds.model.prop.Global; -import org.onap.clamp.clds.model.prop.ModelProperties; -import org.onap.clamp.clds.model.prop.ResourceGroup; -import org.onap.clamp.clds.model.prop.ServiceConfiguration; -import org.onap.clamp.clds.model.prop.StringMatch; -import org.onap.clamp.clds.model.refprop.RefProp; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.databind.node.ArrayNode; -import com.fasterxml.jackson.databind.node.ObjectNode; - -/** - * Construct a Policy for String Match Micro Service request given CLDS objects. - */ -public class StringMatchPolicyReq { - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(StringMatchPolicyReq.class); - protected static final EELFLogger metricsLogger = EELFManager.getInstance().getMetricsLogger(); - - /** - * Format Policy String Match request. - * - * @param refProp - * @param prop - * @return - * @throws IOException - */ - public static String format(RefProp refProp, ModelProperties prop) throws IOException { - Global global = prop.getGlobal(); - String service = global.getService(); - - StringMatch sm = prop.getType(StringMatch.class); - prop.setCurrentModelElementId(sm.getId()); - ObjectNode rootNode = (ObjectNode) refProp.getJsonTemplate("sm.template", service); - rootNode.put("policyName", prop.getCurrentPolicyScopeAndPolicyName()); - ObjectNode content = rootNode.with("content"); - appendServiceConfigurations(refProp, service, content, sm, prop); - - String stringMatchPolicyReq = rootNode.toString(); - logger.info("stringMatchPolicyReq=" + stringMatchPolicyReq); - return stringMatchPolicyReq; - } - - /** - * Add serviceConfigurations to json - * - * @param appendToNode - * @param sm - * @throws IOException - */ - public static void appendServiceConfigurations(RefProp refProp, String service, ObjectNode appendToNode, - StringMatch sm, ModelProperties prop) throws IOException { - // "serviceConfigurations":{ - ObjectNode scNodes = appendToNode.with("serviceConfigurations"); - - int index = 0; - if (sm != null && sm.getResourceGroups() != null) { - for (ResourceGroup resourceGroup : sm.getResourceGroups()) { - Iterator<ServiceConfiguration> scItr = resourceGroup.getServiceConfigurations().iterator(); - - while (scItr.hasNext()) { - ServiceConfiguration sc = scItr.next(); - - // "ItemX":{ - index++; - String keyValue = "Item" + index; - ObjectNode scNode = (ObjectNode) refProp.getJsonTemplate("sm.sc.template", service); - scNodes.set(keyValue, scNode); - - // "rulegroup":"abc", - String rulegroupInd = refProp.getStringValue("sm.rulegroup", service); - String groupNumber = resourceGroup.getGroupNumber(); - if (rulegroupInd != null && rulegroupInd.equalsIgnoreCase("true") && groupNumber != null - && groupNumber.length() > 0) { - scNode.put("rulegroup", groupNumber); - } - - // "closedLoopControlName": - prop.setPolicyUniqueId(resourceGroup.getPolicyId()); - scNode.put("closedLoopControlName", prop.getControlNameAndPolicyUniqueId()); - - // "aaiMatchingFields" : ["VM_NAME"], - JsonUtil.addArrayField(scNode, "aaiMatchingFields", sc.getaaiMatchingFields()); - // "aaiSendFields" : ["VMID", "TenantID"], - JsonUtil.addArrayField(scNode, "aaiSendFields", sc.getaaiSendFields()); - - // "stringSet": [ - ArrayNode ssNode = scNode.putArray("stringSet"); - - for (Entry<String, String> entry : sc.getStringSet().entrySet()) { - // exclude eventSourceType - if (!entry.getKey().equals("eventSourceType")) { - ssNode.add(entry.getKey()); - ssNode.add(entry.getValue()); - } - } - - // timeWindow": "0", - scNode.put("timeWindow", sc.getTimeWindow()); - // "ageLimit": "3600", - scNode.put("ageLimit", sc.getAgeLimit()); - // "createClosedLoopEventId" : "Initial", - scNode.put("createClosedLoopEventId", sc.getCreateClosedLoopEventId()); - // "outputEventName": "OnSet" - scNode.put("outputEventName", sc.getOutputEventName()); - } - } - } - } -} diff --git a/src/main/java/org/onap/clamp/clds/config/CldsConfiguration.java b/src/main/java/org/onap/clamp/clds/config/CldsConfiguration.java index a6baa969e..6b7d337ec 100644 --- a/src/main/java/org/onap/clamp/clds/config/CldsConfiguration.java +++ b/src/main/java/org/onap/clamp/clds/config/CldsConfiguration.java @@ -42,8 +42,6 @@ import org.onap.clamp.clds.client.OperationalPolicyDeleteDelegate; import org.onap.clamp.clds.client.PolicyClient; import org.onap.clamp.clds.client.SdcCatalogServices; import org.onap.clamp.clds.client.SdcSendReqDelegate; -import org.onap.clamp.clds.client.StringMatchPolicyDelegate; -import org.onap.clamp.clds.client.StringMatchPolicyDeleteDelegate; import org.onap.clamp.clds.client.TcaPolicyDelegate; import org.onap.clamp.clds.client.TcaPolicyDeleteDelegate; import org.onap.clamp.clds.dao.CldsDao; @@ -128,16 +126,6 @@ public class CldsConfiguration { return new OperationalPolicyDeleteDelegate(); } - @Bean(name = "stringMatchPolicyDelegate") - public StringMatchPolicyDelegate getStringMatchPolicyDelegate() { - return new StringMatchPolicyDelegate(); - } - - @Bean(name = "stringMatchPolicyDeleteDelegate") - public StringMatchPolicyDeleteDelegate getStringMatchPolicyDeleteDelegate() { - return new StringMatchPolicyDeleteDelegate(); - } - @Bean(name = "sdcCatalogServices") public SdcCatalogServices getSdcCatalogServices() { return new SdcCatalogServices(); diff --git a/src/main/java/org/onap/clamp/clds/model/prop/AbstractModelElement.java b/src/main/java/org/onap/clamp/clds/model/prop/AbstractModelElement.java index 7038dc6cf..9ced01998 100644 --- a/src/main/java/org/onap/clamp/clds/model/prop/AbstractModelElement.java +++ b/src/main/java/org/onap/clamp/clds/model/prop/AbstractModelElement.java @@ -33,7 +33,7 @@ import java.util.List; /** * Provide base ModelElement functionality. Perform base parsing of properties - * for a ModelElement (such as, Collector, StringMatch, Policy, Tca, Holmes, + * for a ModelElement (such as, VesCollector, Policy, Tca, Holmes, * ...) */ public abstract class AbstractModelElement { @@ -54,7 +54,7 @@ public abstract class AbstractModelElement { /** * Perform base parsing of properties for a ModelElement (such as, - * Collector, StringMatch, Policy and Tca) + * VesCollector, Policy and Tca) * * @param type * @param modelProp diff --git a/src/main/java/org/onap/clamp/clds/model/prop/Collector.java b/src/main/java/org/onap/clamp/clds/model/prop/Collector.java deleted file mode 100644 index be30f3ec2..000000000 --- a/src/main/java/org/onap/clamp/clds/model/prop/Collector.java +++ /dev/null @@ -1,54 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. 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. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model.prop; - -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; -import com.fasterxml.jackson.databind.JsonNode; - -/** - * Parse Collector json properties. - */ -public class Collector extends AbstractModelElement { - protected static final EELFLogger logger = EELFManager.getInstance().getLogger(Collector.class); - protected static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger(); - - private static final String TYPE_COLLECTOR = "collector"; - - /** - * Parse Collector given json node. - * - * @param modelBpmn - * @param modelJson - */ - public Collector(ModelProperties modelProp, ModelBpmn modelBpmn, JsonNode modelJson) { - super(TYPE_COLLECTOR, modelProp, modelBpmn, modelJson); - topicPublishes = getValueByName("topicPublishes"); - } - - public static final String getType() { - return TYPE_COLLECTOR; - } - -} diff --git a/src/main/java/org/onap/clamp/clds/model/prop/ModelBpmn.java b/src/main/java/org/onap/clamp/clds/model/prop/ModelBpmn.java index ae7028dcd..f3d344a79 100644 --- a/src/main/java/org/onap/clamp/clds/model/prop/ModelBpmn.java +++ b/src/main/java/org/onap/clamp/clds/model/prop/ModelBpmn.java @@ -45,9 +45,8 @@ import org.onap.clamp.clds.service.CldsService; /** * Parse Model BPMN properties. * <p> - * Example json: {"collector":[{"id":"Collector_11r50j1", - * "from":"StartEvent_1"}],"stringMatch":[{"id":"StringMatch_0h6cbdv"}],"policy" - * :[{"id":"Policy_0oxeocn", "from":"StringMatch_0h6cbdv"}]} + * Example json: {"policy" + * :[{"id":"Policy_0oxeocn", "from":"StartEvent_1"}]} */ public class ModelBpmn { protected static final EELFLogger logger = EELFManager.getInstance() @@ -77,7 +76,7 @@ public class ModelBpmn { ObjectMapper objectMapper = new ObjectMapper(); ObjectNode root = objectMapper.readValue(modelBpmnPropText, ObjectNode.class); // iterate over each entry like: - // "collector":[{"id":"Collector_11r50j1","from":"StartEvent_1"}] + // "Policy":[{"id":"Policy","from":"StartEvent_1"}] Iterator<Entry<String, JsonNode>> entryItr = root.fields(); List<String> bpmnElementIdList = new ArrayList<>(); while (entryItr.hasNext()) { @@ -86,7 +85,7 @@ public class ModelBpmn { String type = entry.getKey(); ArrayNode arrayNode = (ArrayNode) entry.getValue(); // process each id/from object, like: - // {"id":"Collector_11r50j1","from":"StartEvent_1"} + // {"id":"Policy","from":"StartEvent_1"} for (JsonNode anArrayNode : arrayNode) { ObjectNode node = (ObjectNode) anArrayNode; String id = node.get("id").asText(); @@ -123,11 +122,11 @@ public class ModelBpmn { } /** - * This method verifies if the ModelElement Type (collector, holmes, tca, + * This method verifies if the ModelElement Type (holmes, tca, * ...) is in the list. * * @param type - * A model Element type (tca, collector, ...) + * A model Element type (tca, ...) * @return true if the element is found or false otherwise */ public boolean isModelElementTypeInList(String type) { diff --git a/src/main/java/org/onap/clamp/clds/model/prop/ModelBpmnEntry.java b/src/main/java/org/onap/clamp/clds/model/prop/ModelBpmnEntry.java index 210795be4..dc6682297 100644 --- a/src/main/java/org/onap/clamp/clds/model/prop/ModelBpmnEntry.java +++ b/src/main/java/org/onap/clamp/clds/model/prop/ModelBpmnEntry.java @@ -29,9 +29,8 @@ import com.att.eelf.configuration.EELFManager; /** * Model BPMN property entry * <p> - * Example json: {"collector":[{"id":"Collector_11r50j1", - * "from":"StartEvent_1"}],"stringMatch":[{"id":"StringMatch_0h6cbdv"],"policy": - * [{"id":"Policy_0oxeocn", "from":"StringMatch_0h6cbdv"}]} + * Example json: {"policy": + * [{"id":"Policy_0oxeocn", "from":"StartEvent_1"}]} */ public class ModelBpmnEntry { protected static final EELFLogger logger = EELFManager.getInstance().getLogger(ModelBpmnEntry.class); diff --git a/src/main/java/org/onap/clamp/clds/model/prop/ModelProperties.java b/src/main/java/org/onap/clamp/clds/model/prop/ModelProperties.java index dc0de326b..b9effc57a 100644 --- a/src/main/java/org/onap/clamp/clds/model/prop/ModelProperties.java +++ b/src/main/java/org/onap/clamp/clds/model/prop/ModelProperties.java @@ -72,10 +72,9 @@ public class ModelProperties { static { synchronized (lock) { - modelElementClasses.put(Collector.class, Collector.getType()); modelElementClasses.put(Policy.class, Policy.getType()); - modelElementClasses.put(StringMatch.class, StringMatch.getType()); modelElementClasses.put(Tca.class, Tca.getType()); + modelElementClasses.put(Holmes.class, Holmes.getType()); } } diff --git a/src/main/java/org/onap/clamp/clds/model/prop/ResourceGroup.java b/src/main/java/org/onap/clamp/clds/model/prop/ResourceGroup.java index 7395ced00..8b2dbeb83 100644 --- a/src/main/java/org/onap/clamp/clds/model/prop/ResourceGroup.java +++ b/src/main/java/org/onap/clamp/clds/model/prop/ResourceGroup.java @@ -35,7 +35,7 @@ import java.util.List; * Parse Resource Group json properties. * * Example json: - * {"StringMatch_0aji7go":{"Group1":[{"name":"rgname","value":"1493749598520"},{ + * {"TCA_0aji7go":{"Group1":[{"name":"rgname","value":"1493749598520"},{ * "name":"rgfriendlyname","value":"Group1"},{"name":"policyName","value": * "Policy1"},{"name":"policyId","value":"1"},{"serviceConfigurations":[[{"name" * :"aaiMatchingFields","value":["complex.city","vserver.vserver-name"]},{"name" diff --git a/src/main/java/org/onap/clamp/clds/model/prop/ServiceConfiguration.java b/src/main/java/org/onap/clamp/clds/model/prop/ServiceConfiguration.java index f15d70196..418afbb9f 100644 --- a/src/main/java/org/onap/clamp/clds/model/prop/ServiceConfiguration.java +++ b/src/main/java/org/onap/clamp/clds/model/prop/ServiceConfiguration.java @@ -33,10 +33,10 @@ import com.att.eelf.configuration.EELFManager; import com.fasterxml.jackson.databind.JsonNode; /** - * Parse serviceConfigurations from StringMatch json properties. + * Parse serviceConfigurations from Tca json properties. * <p> * Example json: - * {"StringMatch_0aji7go":{"Group1":[{"name":"rgname","value":"1493749598520"},{ + * {"Tca_0aji7go":{"Group1":[{"name":"rgname","value":"1493749598520"},{ * "name":"rgfriendlyname","value":"Group1"},{"name":"policyName","value": * "Policy1"},{"name":"policyId","value":"1"},{"serviceConfigurations":[[{"name" * :"aaiMatchingFields","value":["complex.city","vserver.vserver-name"]},{"name" diff --git a/src/main/java/org/onap/clamp/clds/model/prop/StringMatch.java b/src/main/java/org/onap/clamp/clds/model/prop/StringMatch.java deleted file mode 100644 index b74e7d134..000000000 --- a/src/main/java/org/onap/clamp/clds/model/prop/StringMatch.java +++ /dev/null @@ -1,98 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP CLAMP - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. 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. - * ============LICENSE_END============================================ - * =================================================================== - * ECOMP is a trademark and service mark of AT&T Intellectual Property. - */ - -package org.onap.clamp.clds.model.prop; - -import com.fasterxml.jackson.databind.JsonNode; - -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; - -/** - * Parse StringMatch json properties. - * <p> - * Example json: - * {"StringMatch_0aji7go":{"Group1":[{"name":"rgname","value":"1493749598520"},{ - * "name":"rgfriendlyname","value":"Group1"},{"name":"policyName","value": - * "Policy1"},{"name":"policyId","value":"1"},{"serviceConfigurations":[[{"name" - * :"aaiMatchingFields","value":["complex.city","vserver.vserver-name"]},{"name" - * :"aaiSendFields","value":["complex.city","vserver.vserver-name"]},{"name": - * "eventSeverity","value":["OK"]},{"name":"eventSourceType","value":[""]},{ - * "name":"timeWindow","value":["100"]},{"name":"ageLimit","value":["100"]},{ - * "name":"createClosedLoopEventId","value":["Initial"]},{"name": - * "outputEventName","value":["ONSET"]}]]}],"Group2":[{"name":"rgname","value": - * "1493749665149"},{"name":"rgfriendlyname","value":"Group2"},{"name": - * "policyName","value":"Policy2"},{"name":"policyId","value":"2"},{ - * "serviceConfigurations":[[{"name":"aaiMatchingFields","value":[ - * "cloud-region.identity-url","vserver.vserver-name"]},{"name":"aaiSendFields", - * "value":["cloud-region.identity-url","vserver.vserver-name"]},{"name": - * "eventSeverity","value":["NORMAL"]},{"name":"eventSourceType","value":[""]},{ - * "name":"timeWindow","value":["1000"]},{"name":"ageLimit","value":["1000"]},{ - * "name":"createClosedLoopEventId","value":["Initial"]},{"name": - * "outputEventName","value":["ONSET"]}],[{"name":"aaiMatchingFields","value":[ - * "generic-vnf.vnf-name","vserver.vserver-name"]},{"name":"aaiSendFields", - * "value":["generic-vnf.vnf-name","vserver.vserver-name"]},{"name": - * "eventSeverity","value":["CRITICAL"]},{"name":"eventSourceType","value":[""]} - * ,{"name":"timeWindow","value":["3000"]},{"name":"ageLimit","value":["3000"]}, - * {"name":"createClosedLoopEventId","value":["Initial"]},{"name": - * "outputEventName","value":["ABATED"]}]]}]}} - * - */ -public class StringMatch extends AbstractModelElement { - - private List<ResourceGroup> resourceGroups; - - private static final String TYPE_STRING_MATCH = "stringMatch"; - - /** - * Parse StringMatch given json node. - * - * @param modelBpmn - * @param modelJson - */ - public StringMatch(ModelProperties modelProp, ModelBpmn modelBpmn, JsonNode modelJson) { - super(TYPE_STRING_MATCH, modelProp, modelBpmn, modelJson); - - // process Server_Configurations - if (modelElementJsonNode != null) { - Iterator<JsonNode> itr = modelElementJsonNode.elements(); - resourceGroups = new ArrayList<>(); - while (itr.hasNext()) { - resourceGroups.add(new ResourceGroup(itr.next())); - } - } - } - - /** - * @return the resourceGroups - */ - public List<ResourceGroup> getResourceGroups() { - return resourceGroups; - } - - public static final String getType() { - return TYPE_STRING_MATCH; - } - -} diff --git a/src/main/java/org/onap/clamp/clds/service/CldsTemplateService.java b/src/main/java/org/onap/clamp/clds/service/CldsTemplateService.java index e6e7325a9..e29b18879 100644 --- a/src/main/java/org/onap/clamp/clds/service/CldsTemplateService.java +++ b/src/main/java/org/onap/clamp/clds/service/CldsTemplateService.java @@ -65,8 +65,6 @@ import org.springframework.beans.factory.annotation.Value; @Path("/cldsTempate") public class CldsTemplateService extends SecureServiceBase { - private static final String COLLECTOR_KEY = "Collector"; - private static final String STRING_MATCH_KEY = "StringMatch"; private static final String POLICY_KEY = "Policy"; @Value("${CLDS_PERMISSION_TYPE_TEMPLATE:permission-type-template}") @@ -314,16 +312,12 @@ public class CldsTemplateService extends SecureServiceBase { if (keyPropName != null && keyPropName.equalsIgnoreCase(currElementId)) { ArrayNode arrayNode = (ArrayNode) entry.getValue(); // process each id/from object, like: - // {"id":"Collector_11r50j1", "from":"StartEvent_1"} + // {"id":"Policy_11r50j1", "from":"StartEvent_1"} for (JsonNode anArrayNode : arrayNode) { ObjectNode node = (ObjectNode) anArrayNode; String valueNode = node.get("value").asText(); logger.info("value of node:" + valueNode); - if (keyPropName.startsWith(COLLECTOR_KEY)) { - valueNode = COLLECTOR_KEY + "_" + valueNode; - } else if (keyPropName.startsWith(STRING_MATCH_KEY)) { - valueNode = STRING_MATCH_KEY + "_" + valueNode; - } else if (keyPropName.startsWith(POLICY_KEY)) { + if (keyPropName.startsWith(POLICY_KEY)) { valueNode = POLICY_KEY + "_" + valueNode; } bpmnIoIdsMap.put(keyPropName, valueNode); diff --git a/src/main/resources/META-INF/resources/designer/css/app.css b/src/main/resources/META-INF/resources/designer/css/app.css index 333c96669..e387dc030 100644 --- a/src/main/resources/META-INF/resources/designer/css/app.css +++ b/src/main/resources/META-INF/resources/designer/css/app.css @@ -170,20 +170,18 @@ svg:not(:root) { } /* '' */ .define-path:before{ - content: url('../images/DefinePath.png'); + content: url('../images/DefinePath.png'); position:relative; /*or absolute*/ z-index:100000; /*a number that's more than the modal box*/ } /* '' */ -.define-decision:before{ +.define-decision:before{ content: url('../images/DefineDecision.png'); position:relative; /*or absolute*/ z-index:100000; /*a number that's more than the modal box*/ } /* '' */ .icon-initial-node:before{ content: url('../images/InitialProcess.png'); } /* '' */ -.icon-collector-node:before{ content: url('../images/clds-collector-icon.png'); } /* '' */ .icon-holmes-node:before{ content: url('../images/clds-holmes-icon.png'); } /* '' */ .icon-ves-collector-node:before{ content: url('../images/clds-ves-collector-icon.png'); } /* '' */ -.icon-stringmatch-node:before{ content: url('../images/clds-string-match-icon.png'); } /* '' */ .icon-tca-node:before{ content: url('../images/clds-tca-icon.png'); } /* '' */ .icon-policy-node:before{ content: url('../images/clds-policy-icon.png'); } /* '' */ .icon-goc-node:before{ content: url('../images/GOC.png'); } /* '' */ diff --git a/src/main/resources/META-INF/resources/designer/images/clds-string-match-icon.png b/src/main/resources/META-INF/resources/designer/images/clds-string-match-icon.png Binary files differdeleted file mode 100644 index 6b00414fd..000000000 --- a/src/main/resources/META-INF/resources/designer/images/clds-string-match-icon.png +++ /dev/null diff --git a/src/main/resources/META-INF/resources/designer/index.js b/src/main/resources/META-INF/resources/designer/index.js index 89a688aca..33b84e6fc 100644 --- a/src/main/resources/META-INF/resources/designer/index.js +++ b/src/main/resources/META-INF/resources/designer/index.js @@ -1450,58 +1450,6 @@ function visibility_model() { }, - 'bpmn:Collector': function(p, element) { - var lane = renderer('bpmn:Lane')(p, element, { - fill: 'White' - }); - - var expandedPool = DiUtil.isExpanded(element); - - if (expandedPool) { - drawLine(p, [{ - x: element.width, - y: 80 - }, { - x: element.width, - y: 20 - }]); - - drawLine(p, [{ - x: 20, - y: 0 - }, { - x: 20, - y: element.height - }]); - var text2 = getSemantic(element).name; - if (text2 == undefined) { - text2 = 'Collector'; - } - - renderLabel(p, text2, { - box: element, - align: 'center-middle' - }); - - } else { - // Collapsed pool draw text inline - var text2 = getSemantic(element).name; - renderLabel(p, text2, { - box: element, - align: 'center-middle' - }); - } - - var participantMultiplicity = !!(getSemantic(element).participantMultiplicity); - - if (participantMultiplicity) { - renderer('ParticipantMultiplicityMarker')(p, element); - } - - return lane; - - - }, 'bpmn:VesCollector': function(p, element) { var lane = renderer('bpmn:Lane')(p, element, { fill: 'White' @@ -1626,52 +1574,6 @@ function visibility_model() { return lane; }, - - 'bpmn:StringMatch': function(p, element) { - var lane = renderer('bpmn:Lane')(p, element, { - fill: 'White' - }); - - var expandedPool = DiUtil.isExpanded(element); - - if (expandedPool) { - - drawLine(p, [{ - x: 0, - y: 20 - }, { - x: element.width, - y: 20 - }]); - var text2 = getSemantic(element).name; - if (text2 == undefined) { - text2 = 'StringMatch'; - } - renderLabel(p, text2, { - box: element, - align: 'center-middle' - }); - - } else { - // Collapsed pool draw text inline - var text2 = getSemantic(element).name; - renderLabel(p, text2, { - box: element, - align: 'center-middle' - }); - } - - var participantMultiplicity = !!(getSemantic(element).participantMultiplicity); - - if (participantMultiplicity) { - renderer('ParticipantMultiplicityMarker')(p, element); - } - - return lane; - - - }, - 'bpmn:TCA': function(p, element) { var lane = renderer('bpmn:Lane')(p, element, { fill: 'White' @@ -3838,39 +3740,6 @@ function visibility_model() { if (bpmnElement.$instanceOf('bpmn:InitiateProcess')) {} if (bpmnElement.$instanceOf('bpmn:StartEvent')) {} - if (bpmnElement.$instanceOf('bpmn:Collector')) { - assign(actions, { - 'Properties': { - group: 'clds', - label: 'Edit Properties', - className: 'clds-edit-properties', - title: 'Properties', - action: { - click: function(event) { - lastElementSelected = bpmnElement.id - CollectorsWindow(bpmnElement); - } - } - } - }); - - } - if (bpmnElement.$instanceOf('bpmn:StringMatch')) { - assign(actions, { - 'Properties': { - group: 'clds', - label: 'Edit Properties', - className: 'clds-edit-properties', - title: 'Properties', - action: { - click: function(event) { - lastElementSelected = bpmnElement.id - StringMatchWindow(bpmnElement); - } - } - } - }); - } if (bpmnElement.$instanceOf('bpmn:Holmes')) { assign(actions, { 'Properties': { @@ -5007,19 +4876,6 @@ function visibility_model() { height: 80 }; } - if (semantic.$instanceOf('bpmn:Collector')) { - return { - width: 120, - height: 80 - }; - } - - if (semantic.$instanceOf('bpmn:StringMatch')) { - return { - width: 120, - height: 80 - }; - } if (semantic.$instanceOf('bpmn:VesCollector')) { return { width: 120, @@ -6541,12 +6397,6 @@ function visibility_model() { 'create.start-event': createAction( 'bpmn:StartEvent', 'event', 'icon-start-event-none', "Start" ), - 'create.collector': createAction( - 'bpmn:Collector', 'event', 'icon-collector-node', 'Collector' - ), - 'create.String-Match': createAction( - 'bpmn:StringMatch', 'event', 'icon-stringmatch-node', 'String Match' - ), 'create.ves-collector': createAction( 'bpmn:VesCollector', 'event', 'icon-ves-collector-node', 'Ves Collector' ), @@ -14382,18 +14232,6 @@ function visibility_model() { "InteractionNode" ] }, { - "name": "Collector", - "superClass": [ - "Activity", - "InteractionNode" - ] - }, { - "name": "StringMatch", - "superClass": [ - "Activity", - "InteractionNode" - ] - }, { "name": "VesCollector", "superClass": [ "Activity", diff --git a/src/main/resources/META-INF/resources/designer/partials/portfolios/Collector_properties.html b/src/main/resources/META-INF/resources/designer/partials/portfolios/Collector_properties.html deleted file mode 100644 index 7537f72aa..000000000 --- a/src/main/resources/META-INF/resources/designer/partials/portfolios/Collector_properties.html +++ /dev/null @@ -1,122 +0,0 @@ -<!-- - ============LICENSE_START======================================================= - ONAP CLAMP - ================================================================================ - Copyright (C) 2017 AT&T Intellectual Property. 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. - ============LICENSE_END============================================ - =================================================================== - ECOMP is a trademark and service mark of AT&T Intellectual Property. - --> - -<style> - .fileUpload { - position: relative; - overflow: hidden; - margin: 10px; - } - .fileUpload input.upload { - position: absolute; - top: 0; - right: 0; - margin: 0; - padding: 0; - font-size: 20px; - cursor: pointer; - opacity: 0; - filter: alpha(opacity=0); - float:left; - } - .fileDisplay { - - display: inline-block; - overflow: hidden; - float: right; - margin-left: 0px; - z-index: initial; - text-align: center; - margin-top: 17px; - } - - -</style> - - -<div attribute-test="collectorproperties" id="configure-widgets" > - <div attribute-test="cldsopentemplateh" class="modal-header"> - <button type="button" class="close" ng-click="close(false)" aria-hidden="true" style="margin-top: -3px">×</button> - <h4>Collector</h4> - </div> - <div attribute-test="cldsopentemplateb" class="modal-body" style="height: 280px"> - <div style="height: 10px"> - </div> - <form id="saveProps" class="form-horizontal"> - - <div> - <div class="form-group"> - <label for="schemaLocation" class="col-sm-4 control-label">Topic Publishes</label> - - <div class="col-sm-8"> - <select class="form-control" focus="true" name="topicPublishes" id="topicPublishes"> - <!-- <option value="volvo">volvo</option> - <option value="saab">saab</option> - <option value="opel">opel</option> --> - </select> - </div> - </div> - - - </div> - - </form> - - </div> - <div class="modal-footer"> - <!--<button ng-click="reset()" class="btn btn-primary" style="float:left">Reset</button>--> - <button id="savePropsBtn" class="btn btn-primary">Close</button> - <button ng-click="close(true)" id="close_button" class="btn btn-primary">Cancel</button> - - </div> - <script> - loadPropertyWindow("collector"); - var el=elementMap[lastElementSelected]; - if(el!==undefined){ - for(var i=0;i<el.length;i++){ - - $("#"+el[i].name).val(el[i].value); - } - - - } - $("#saveProps").on('submit', function (event) { - console.log("clicksaveprop"); - //alert("lol"); - //console.log($(this).serializeArray()[0].name); - saveProperties($(this).serializeArray()) - event.preventDefault(); - - $("#close_button").click(); - - }) - $("#savePropsBtn").click(function (event) { - console.log("savepropbtn"); - //alert($("#CProp_Target").val()) - //alert(las) - $("#saveProps").submit(); - }) -</script> -</div> - - diff --git a/src/main/resources/META-INF/resources/designer/partials/portfolios/stringMatch_properties.html b/src/main/resources/META-INF/resources/designer/partials/portfolios/stringMatch_properties.html deleted file mode 100644 index 49ac07d73..000000000 --- a/src/main/resources/META-INF/resources/designer/partials/portfolios/stringMatch_properties.html +++ /dev/null @@ -1,1019 +0,0 @@ -<!-- - ============LICENSE_START======================================================= - ONAP CLAMP - ================================================================================ - Copyright (C) 2017 AT&T Intellectual Property. 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. - ============LICENSE_END============================================ - =================================================================== - ECOMP is a trademark and service mark of AT&T Intellectual Property. - --> -<style> -#deleteStringMatch{ - height:34px; - background-color:#dddd; -} - -.disabled{ - background-color: #dddd; -} -.fileUpload { - position: relative; - overflow: hidden; - margin: 10px; -} - -.fileUpload input.upload { - position: absolute; - top: 0; - right: 0; - margin: 0; - padding: 0; - font-size: 20px; - cursor: pointer; - opacity: 0; - filter: alpha(opacity = 0); - float: left; -} - -.fileDisplay { - display: inline-block; - overflow: hidden; - float: right; - margin-left: 0px; - z-index: initial; - text-align: center; - margin-top: 17px; -} - -.form-group { -/* height:24px; */ -/* box-sizing:border-box; */ - margin-bottom:20px; -} - -.modelSearchBox{ - position:absolute; - padding: 25px 12px; -} - -label{ - text-align:right; - vertical-align:middle; -} - -.leftStringMatchPanel{ - padding: 0 10px 0 0; -} - -#createNewStringMatch{ - height:34px; - width:120px; /*84*/ - background-color:#f2bfab; -} - -.idError{ - color:red; - padding:50px 0px; - text-align:center; - display:none; -} - -#rgname{ - height:28px; - margin-left:-5px; -} - -.stringMatchPanel{ - background-color: #f5f5f5; - padding: 10px 5px; -} - -#stringMatchSearch{ - height: 33px; - font-size: 12px; - padding: 2px 2px 2px 30px; - margin-bottom: 5px; - width:100%; -} -#stringMatchTable{ - cursor: pointer; - width:100%; -} - -#stringMatchTable tr{ - border-bottom: 1px solid #ddd; - border-collapse: collapse; - text-align: left; - font-size: 12px; - font-weight: normal; -} - -#stringMatchTable td{ - padding: 8px 10px; -} - -#stringMatchTable tr.highlight{ - background-color: #f5f5f5; - font-weight: bold; - font-size: 13px; -} - -#stringMatchTableHolder{ - height:200px; - width: 100%; - overflow:auto; -} - -#timeout{ - height:28px; - margin-left:10px; -} - -</style> - -<script type="text/javascript"> - function disablefile() { - - document.getElementById("fileUpload").disabled = true; - - } - - function disableSVN() { - var selectLength = document.querySelectorAll(".disabled-block-container .tab-close-popup"); - if(selectLength && selectLength.length>0){ - for(var i = 0; i< selectLength.length ; i++){ - selectLength[i].disabled = true; - } - } - - document.getElementById("schemaLocation").disabled = true; - document.getElementById("userID").disabled = true; - document.getElementById("password").disabled = true; - - } -</script> - - -<div attribute-test="stringMatchwindowproperties" id="configure-widgets" class="disabled-block-container"> - <div attribute-test="stringMatchwindowpropertiesh" class="modal-header"> - <button type="button" class="close" ng-click="close(false)" - aria-hidden="true" style="margin-top: -3px">×</button> - <h4>String Matching Micro Service</h4> - </div> - - - <div class="modal-body"> - <div attribute-test="stringMatchwindowpropertiesb" class="modal-body row"> - - <div class="leftStringMatchPanel"> - <div class="panel panel-default"> - <i class="modelSearchBox"></i> <input type="text" - id="stringMatchSearch" onkeyup="searchStringMatchList()" - placeholder="Search ..."> - <div id="stringMatchTableHolder"> - <table id="stringMatchTable"></table> - </div> - </div> - <div style="float: left"> - <button type="button" id="createNewStringMatch" class="btn btn-sm">New Group</button> - </span> - </div> - <div style="float: right"> - <button type="button" id="deleteStringMatch" class="btn btn-sm glyphicon glyphicon-trash" disabled></button> - </span> - </div> - <div id="repeatIdError" class="idError">Error: This Group name is already taken.</div> - <div id="newIdError" class="idError">Error: Please rename your new Group.</div> - </div> - - <div class="panel panel-default col-sm-9 stringMatchPanel" - style="display: none;"> - <form id="topicPublish" class="form-horizontal"> - <div> -<!-- As per the last minute new requirements for 1707 the ID needs to be hidden and we need to have a friendly name instead --> - <div style="display: none;"> - <div class="form-group clearfix"> - <label class="col-sm-4 control-label">Resource Group Id</label> - <div class="col-sm-8"> - <input class="form-control" id="rgname" name="rgname" readOnly> </input> - </div> - </div> - </div> - - <div> - <div class="form-group clearfix"> - <label class="col-sm-4 control-label">Resource Group</label> - <div class="col-sm-8"> - <input class="form-control" maxlength="48" placeholder="Enter Unique Name" id="rgfriendlyname" name="rgfriendlyname"> </input> - </div> - </div> - </div> - - <!--Policy's drop down box --> - <div class="form-group clearfix"> - <label class="col-sm-4 control-label">Ops Policy:</label> - <div class="col-sm-8"> - <select class="form-control" id="policyName" name="policyName" - autofocus="autofocus" required ng-trim="true" enableFilter="true"> - <option ng-repeat="x in policyNames" value="{{x}}">{{x}}</option> - </select> - </div> - </div> - - </div> - </form> - - <div class="panel-heading" style="background-color: white;"> - <ul id="nav_Tabs" class="nav nav-tabs"> - <li class><a id="add_one_more" href="#desc_tab"><span - class="glyphicon glyphicon-plus" aria-hidden="true"></span></a></li> - </ul> - </div> - <div class="panel-body"> - <div class="tab-content"> - <div id="properties_tab" class="tab-pane fade in active"></div> - </div> - </div> - </div> - - <span id="formSpan" style="display: none"> - <form class="saveProps" class="form-horizontal"> - - <div> - <div class="form-group clearfix"> - <label for="aaiMatchingFields" class="col-sm-4 control-label">AAI Fields Matching </label> - <div class="col-sm-8"> - <select class="form-control" name="aaiMatchingFields" id="aaiMatchingFields" multiple size=2></select> - </div> - - </div> - <div class="form-group clearfix"> - <label for="aaiSendFields" class="col-sm-4 control-label">AAI Fields Send (Select Multiple)</label> - - <div class="col-sm-8 "> - <select class="form-control" id="aaiSendFields" - name="aaiSendFields" multiple size=2> - </select> - - </div> - </div> -<!-- <div class="form-group clearfix"> --> -<!-- <label for="groupNumber" class="col-sm-4 control-label"> --> -<!-- Resource-Group</label> --> - -<!-- <div class="col-sm-8"> --> -<!-- <input type="number" class="form-control" id="groupNumber" --> -<!-- name="groupNumber" min="0"> </input> --> - -<!-- </div> --> -<!-- </div> --> - <div class="form-group clearfix"> - <label for="vfc" class="col-sm-4 control-label">Resource-VFC</label> - <div class="col-sm-8"> - <select class="form-control" id="vfc" name="vfc" enableFilter="true"> - - </select> - - </div> - </div> - <div class="form-group clearfix"> - <label for="alarmCondition" class="col-sm-4 control-label">Alarm Condition</label> - <div class="col-sm-8"> - <select class="form-control" id="alarmCondition" name="alarmCondition" enableFilter="true"> - - </select> - </div> - </div> - <div class="form-group clearfix"> - <label for="eventSeverity" class="col-sm-4 control-label">Event Severity</label> - <div class="col-sm-8"> - <select class="form-control" id="eventSeverity" - name="eventSeverity" enableFilter="false"></select> - </div> - </div> - <div class="form-group clearfix"> - <label for="eventSourceType" class="col-sm-4 control-label"> - Event Source Type</label> - <div class="col-sm-8"> - <input type="text" class="form-control" id="eventSourceType" - name="eventSourceType" readOnly></input> - </div> - </div> - - <div class="form-group clearfix"> - <label for="timeWindow" class="col-sm-4 control-label"> - Time Window</label> - - <div class="col-sm-8"> - <input type="text" maxlength="5" class="form-control" - onkeypress="return isNumberKey(event)" - id="timeWindow" name="timeWindow" /> - </div> - </div> - <div class="form-group clearfix"> - <label for="ageLimit" class="col-sm-4 control-label"> Age - Limit</label> - - <div class="col-sm-8"> - <input type="text" maxlength="5" class="form-control" id="ageLimit" - onkeypress="return isNumberKey(event)" - name="ageLimit" /> - </div> - </div> - <div class="form-group clearfix"> - <label for="createClosedLoopEventId" - class="col-sm-4 control-label"> Create CL Event ID</label> - <div class="col-sm-8"> - <select class="form-control" id="createClosedLoopEventId" - name="createClosedLoopEventId" enableFilter="false"> - </select> - - </div> - </div> - - <div class="form-group clearfix"> - <label for="outputEventName" class="col-sm-4 control-label"> - Output Event Name</label> - - <div class="col-sm-8"> - <select class="form-control" id="outputEventName" - name="outputEventName" enableFilter="true"></select> - - </div> - </div> - </div> - - - - </form> - </span> - </div> - </div> - - <div attribute-test="stringMatchwindowpropertiesf" class="modal-footer"> - <!--<button ng-click="reset()" class="btn btn-primary" style="float:left">Reset</button>--> - <button id="savePropsBtn" class="btn btn-primary">Close</button> - <button ng-click="close(true)" id="close_button" - class="btn btn-primary">Cancel</button> - </div> - - <script> - - //Basically this method will add a new form. All forms share the same class. When you want one form to show(active form) the other forms get the - // css attribute display:none - $("#add_one_more").click(function(event) { - event.preventDefault(); - num = add_one_more(); - setMultiSelect(); - addSelectListen(num); - }); - - - //This method will load the existing Strin Match onto the screen - loadPropertyWindow("string_match"); - setASDCFields(); - - // By default, parentStringMatchConditions is disabled - $("#parentStringMatchConditions").prop('disabled', 'disabled'); - - - var parent_stringMatch = {} - var stringMatch_ids = {} - var loadingId = false; - var allSMatch = {}; - var vfc_temp="" - var alarm_conditions_temp="" - var event_severity_temp="" - var event_type_source_temp="" - - //Grab saved values for dropdowns - var obj = elementMap[lastElementSelected]; - - if (!($.isEmptyObject(obj))) { - allSMatch = jQuery.extend({}, obj); - for ( var x in allSMatch) { - $("#stringMatchTable").prepend( - "<tr><td>" + x + "</td></tr>"); - } - } - - - //Load properties_tab for a chosen String Match - function disperseConfig(stringMatchObj, id) { - //remove old gui forms - for (var i = 1; i < ($(".formId").length + 1); i++) { - $("#go_properties_tab" + i).parent().remove(); - } - $(".formId").remove(); - - if (stringMatchObj !== undefined) { - var el = stringMatchObj[id][4]['serviceConfigurations'] - for (var i = 0; i < el.length; i++) { - loadingId = true; - var num = add_one_more(); - loadingId = false; - for (var j = 0; j < el[i].length; j++) { - if (el[i][j]["stringSet"] !== undefined) { - var ss = el[i][j]["stringSet"] - for (var o = 0; o < ss.length; o++) { - if(ss[o].hasOwnProperty("name")){ - if(ss[o].name==="alarmCondition"){ - alarm_conditions_temp=ss[o].value - }else if(ss[o].name==="eventSeverity"){ - event_severity_temp=ss[o].value; - }else if(ss[o].name==="eventSourceType"){ - event_type_source_temp=ss[o].value; - } - else - $("#formId" + num + " #" + ss[o].name).val(ss[o].value); - } - - } - }else if(el[i][j].hasOwnProperty("name") && el[i][j].name==="vfc"){ - vfc_temp=el[i][j].value - } - else if (el[i][j].name === 'outputEventName' && el[i][j].value.toString() !== '') { - $("#go_properties_tab" + num).text(el[i][j].value); - $("#formId" + num + " #" + el[i][j].name).val(el[i][j].value); - } - else { - if(el[i][j].hasOwnProperty("name")){ - $("#formId" + num + " #" + el[i][j].name).val( - el[i][j].value); - } - } - } - set_vfc_alarm_event(num); - vfc_temp=""; - alarm_conditions_temp=""; - event_severity_temp=""; - event_type_source_temp=""; - - addSelectListen(num); - } - - //Adding all the ids for parent String options - for (var i = 1; i <= $(".formId").length; i++) { - for (k in stringMatch_ids) { - if ($("#formId" + i + " #_id").val() !== stringMatch_ids[k].toString() && $(k + " #recipe").val() !== undefined && $(k + " #recipe").val() !== "") { - $("#formId" + i + " #parentStringMatch").append("<option value=\""+stringMatch_ids[k]+"\">"+ $(k + " #recipe").val()+ "</option>"); - } - } - } - - for (k in parent_stringMatch) { - $("#formId" + k + " #parentStringMatch").val(parent_stringMatch[k]); - // force the change event - $("#formId" + k + " #parentStringMatch").change(); - } - - if (stringMatchObj[id][0]) { - $("#" + stringMatchObj[id][0].name).val(stringMatchObj[id][0].value); - } - - if (stringMatchObj[id][1]) { - $("#" + stringMatchObj[id][1].name).val(stringMatchObj[id][1].value); - } - - if (stringMatchObj[id][2]) { - $("#" + stringMatchObj[id][2].name).val(stringMatchObj[id][2].value); - } - } - - setMultiSelect(); - - if (readOnly||readMOnly){ - $('select[multiple] option').each(function() { - var input = $('input[value="' + $(this).val() + '"]'); - input.prop('disabled', true); - input.parent('li').addClass('disabled'); - }); - $('input[value="multiselect-all"]').prop('disabled', true).parent('li').addClass('disabled'); - } - } - - - //This is ensure there are no repeated keys in the map - function noRepeats(form) { - //triggered per String. - var select = {}; - for (var i = 0; i < form.length; i++) { - if (select[form[i].name] === undefined) - select[form[i].name] = [] - select[form[i].name].push(form[i].value); - } - var arr = [] - for (s in select) { - var f = {} - f.name = s - f.value = select[s] - arr.push(f) - } - return arr - } - - $("#savePropsBtn").click(function(event) { - $(".idError").hide(); - if ($("#stringMatchTable .highlight td").html() !== $("#rgfriendlyname").val()){ - //repeated name - if ($.inArray($("#rgfriendlyname").val(), Object.keys(allSMatch)) > -1){ - $("#repeatIdError").show(); - return; - } else { //not repeated - delete allSMatch[$("#stringMatchTable .highlight td").html()]; - } - } - /* //Saves edits - if ($("#stringMatchTable .highlight").length > 0) { - saveLastStringMatchLocally($("#stringMatchTable .highlight td").html()); - } */ - if ($("#rgfriendlyname").val().trim() == "New_Group"){ - $("#newIdError").show(); - return; - } - startNextItem(); - //Removes outdated (deleted) resource Groups by checking against left menu - var finalSaveList = {}; - $("#stringMatchTable td").each(function() { - var tableVal = $(this).text(); - if (tableVal in allSMatch) { - finalSaveList[tableVal] = allSMatch[tableVal]; - } - }); - - saveProperties(finalSaveList); - $("#close_button").click(); - }) - - function add_one_more() { - $("#nav_Tabs li").removeClass("active"); - - //FormSpan contains a block of the form that is not being displayed. We will create clones of that and add them to tabs - var form = $($("#formSpan").children()[0]).clone() - var count = 0; - //Each new tab will have the formId class attached to it. This way we can track how many forms we currently have out there and assign listeners to them - if ($(".formId").length > 0) { - var greatest = 0; - var s = $(".formId"); - for (var i = 0; i < s.length; i++) { - if (parseInt($(s[i]).attr("id").substring(6)) > greatest) { - greatest = parseInt($(s[i]).attr("id").substring(6)) - } - } - count = greatest + 1; - $("#properties_tab").append( - ('<span class="formId" id="formId'+count+'"></span>')); - } else { - count++; - $("#properties_tab").append( - '<span class="formId" id="formId1"></span>'); - } - - //$(form).find("#stringMatchName").val("Recipe "+makid(2)) - //TODO change up how we auto assign stringMatchName. There could be the case where we do this and it will have repeats - //alert($(form).find("#_id").val()) - //stringMatchNameChangeListener(form) - - $("#add_one_more") - .parent() - .before( - ' <li class="active"><a id="go_properties_tab'+count+'">Condition</a><button id="tab_close'+count+'" type="button" class="close tab-close-popup" aria-hidden="true" style="margin-top: -30px;margin-right: 5px">×</button></li>'); - $("#formId" + count).append(form); - $(".formId").not($("#formId" + count)).css("display", "none") - addCustListen(count) - addTabListen(count) - - // This is for when the process is not loading from map but being created - if (!loadingId) { - var l = makeid() - $(form).find("#_id").val(l) - stringMatch_ids["#formId" + count] = l - var answers = {} - - for (k in answers) { - $(k).val(answers[k]) - } - } - return count; - } - - function add_new_stringMatch(issueNewNames) { - //remove old gui forms - for (var i = 1; i < ($(".formId").length + 1); i++) { - $("#go_properties_tab" + i).parent().remove(); - } - $(".formId").remove(); - - //Reset header - var ms = new Date().getTime(); - var defSMatch = ms; - $("#rgname").val(defSMatch); - - $("#rgfriendlyname").val("New_Group"); - - $("#add_one_more").click(); - return defSMatch; - } - - //listener will change the tab name to the recipe - function addTabListen(count) { - $("#formId" + count + " #recipe").on("change",function() { - if ($("#formId" + count + " #recipe").val().toString() !== "") { - $('#go_properties_tab' + count).text($("#formId" + count + " #recipe").val()) - } else - $('#go_properties_tab' + count).text("String"); - - var answers = {} - - for (var i = 1; i <= greatestIdNum(); i++) { - if ($("#formId" + i).length > 0) { - - answers["#formId" + i + " #parentStringMatch"] = $("#formId" + i + " #parentStringMatch").val() - $("#formId" + i + " #parentStringMatch").empty(); - - for (k in stringMatch_ids) { - if ($("#formId" + i + " #_id").val().toString() !== stringMatch_ids[k] && $(k + " #recipe").val() !== 'undefined' && $(k + " #recipe").val() !== "") { - $("#formId" + i + " #parentStringMatch").append("<option value='"+stringMatch_ids[k]+"''> "+ $(k+ " #recipe").val()+ "</option>") - } - } - $("#formId" + i + " #parentStringMatch").prepend("<option value=''></option>") - } - } - for (k in answers) { - $(k).val(answers[k]) - } - }) - - // disable parentStringMatchConditions when a parentStringMatch is not selected - $("#formId" + count + " #parentStringMatch").on("change",function() { - if ($("#formId" + count + " #parentStringMatch").val().toString() == "") { - // deselect all options - $("#formId"+ count+ " #parentStringMatchConditions option:selected").prop("selected", false); - // disable the select box - $("#formId"+ count+ " #parentStringMatchConditions").prop('disabled', 'disabled'); - } else { - $("#formId"+ count+ " #parentStringMatchConditions").prop('disabled', false); - } - }) - } - - function addSelectListen(count) { - var onSelectChange = function() { - var opselected = this.selectedOptions[0].text; - - if (this.id=="outputEventName"){ - if(opselected!==""){ - var stringMatchCount = $(this).closest("[id^='formId']").attr("id").substring(6); - $(this).closest(".stringMatchPanel").find("#go_properties_tab"+stringMatchCount).text(opselected); - } else { - $(this).closest("[id^='go_properties_tab']").text("Condition"); - } - } - - if (this.id=="vfc"){ - var vfcCount = $(this).closest("[id^='formId']").attr("id").substring(6); - if(opselected!==""){ - setAlarmConditions(opselected, vfcCount); - setAlertDescription(opselected, vfcCount); - } else { - $(this).closest(".formId").find("#eventSourceType").val(""); - $(this).closest(".formId").find("#eventSeverity").val(""); - } - } - - if (this.id=="alarmCondition"){ - var alarmCount = $(this).closest("[id^='formId']").attr("id").substring(6); - if(opselected!==""){ - setEventSourceType(opselected.toString(), alarmCount, "alarm"); - } else { - $(this).closest(".formId").find("#eventSourceType").val(""); - $(this).closest(".formId").find("#eventSeverity").val(""); - } - } - - }; - - $("#formId"+count+" select").each( function () { - this.change = onSelectChange; - }); - } - - function addCustListen(count) { - $('#go_properties_tab' + count).click(function(event) { - $("#nav_Tabs li").removeClass("active"); - $(this).parent().addClass("active"); - $("#formId" + count).css("display", "") - $(".formId").not($("#formId" + count)).css("display", "none") - - }) - $('#tab_close' + count).click(function(event) { - - $(this).parent().remove(); - delete stringMatch_ids["#formId" + count + " #_id"] - $("#formId" + count).remove(); - }) - } - - function setStringSet(form) { - var arr = [] - var alarmCondition = {} - var eventSeverity = {} - var eventSourceType = {} - for (var i = 0; i < form.length; i++) { - if (form[i].name === "alarmCondition") { - alarmCondition = form[i] - } else if (form[i].name === "eventSeverity") { - eventSeverity = form[i]; - } else if (form[i].name === "eventSourceType") { - eventSourceType = form[i]; - } else { - - arr.push(form[i]) - } - - } - var stringSet = {}; - stringSet['stringSet'] = [] - stringSet['stringSet'].push(alarmCondition); - stringSet['stringSet'].push(eventSeverity); - stringSet['stringSet'].push(eventSourceType); - arr.push(stringSet) - - return arr; - } - - //this will populate alarmcondition,vfc,eventtypesource if they are saved in elementmap - function set_vfc_alarm_event (count){ - if(vfc_temp!=="" && vfc_temp!==undefined){ - $("#formId"+count+" #vfc").val(vfc_temp) - - if(alarm_conditions_temp!=="" && alarm_conditions_temp!==undefined){ - setAlarmConditions(vfc_temp,count) - $("#formId"+count+" #alarmCondition").val(alarm_conditions_temp); - - if(event_severity_temp!=="" && event_severity_temp!==undefined){ - setEventSourceType(alarm_conditions_temp,count) - $("#formId"+count+" #eventSeverity").val(event_severity_temp) - if(event_type_source_temp!=="" && event_type_source_temp!==undefined){ - $("#formId"+count+" #eventSourceType").val(event_type_source_temp) - } - } - if(event_type_source_temp!=="" && event_type_source_temp!==undefined){ - setEventSourceType(alarm_conditions_temp,count) - $("#formId"+count+" #eventSourceType").val(event_type_source_temp) - if(event_severity_temp!=="" && event_severity_temp!==undefined){ - $("#formId"+count+" #eventSeverity").val(event_severity_temp) - } - } - } - } - } - - function setAlarmConditions(vfcID, count){ - var alarmCondition={} - - if($("#formId"+count+" #vfc").val()!==""){ - if(vf_Services['shared'] && vf_Services['shared']['byVfc'] && vf_Services['shared']['byVfc'][vfcID]){ - alarmCondition=vf_Services['shared']['byVfc'][vfcID]['alarmCondition'] - } - } - - $("#formId"+count+" #alarmCondition").empty(); - $("#formId"+count+" #alarmCondition").append("<option value=\"\"></opton>"); - if(alarmCondition && _.keys(alarmCondition).length>0){ - for(key in alarmCondition){ - var safestring = $('<div>').text(key).html(); - $("#formId"+count+" #alarmCondition").append("<option value='"+safestring+"'>"+alarmCondition[key]+"</opton>"); - } - $("#formId"+count+" #alarmCondition").multiselect("rebuild"); - } - } - - function setEventSourceType(alarm, count){ - var eventSourceTypSeverity={} - if($("#formId"+count+" #alarmCondition").val()!==""){ - if(vf_Services && vf_Services['shared'] && vf_Services['shared']['byAlarmCondition'] && vf_Services['shared']['byAlarmCondition'][alarm]){ - eventSourceTypSeverity=vf_Services['shared']['byAlarmCondition'][alarm] - } - - } - - $("#formId"+count+" #eventSourceType").val(eventSourceTypSeverity.eventSourceType); - $("#formId"+count+" #eventSeverity").val(eventSourceTypSeverity.eventSeverity); - $("#formId"+count+" #eventSeverity").multiselect("rebuild"); - } - - function greatestIdNum() { - var greatest = 0; - var s = $(".formId"); - for (var i = 0; i < s.length; i++) { - if (parseInt($(s[i]).attr("id").substring(6)) > greatest) { - greatest = parseInt($(s[i]).attr("id").substring(6)) - } - } - return greatest; - } - - //Generate random id for each String - //Also made sure ids couldnt be repeated - function makeid(num) { - - var text = ""; - var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; - if (num == null) - num = 7; - for (var i = 0; i < 7; i++) - text += possible.charAt(Math.floor(Math.random() - * possible.length)); - var hasValue = false; - for (k in stringMatch_ids) { - if (text === stringMatch_ids[k]) - hasValue = true - } - if (hasValue) - return makeid(num); - else - return text - } - - var ParentStringMatch = function(id, name) { - this.id = id - this.name = name - } - - //String table search filter - function searchStringMatchList() { - var search = document.getElementById("stringMatchSearch"); - var row = document.getElementsByTagName("td"); - for (var i = 0; i < row.length; i++) { - if (row[i].innerHTML.toUpperCase().indexOf( - search.value.toUpperCase()) > -1) { - row[i].style.display = ""; - } else { - row[i].style.display = "none"; - } - } - } - - function saveLastStringMatchLocally(lastStringMatchId) { - var polForm = [] - - var properties = $(".saveProps").not("#formSpan .saveProps") - - var topicPublish = $("#topicPublish").serializeArray(); - - for (var i = 0; i < topicPublish.length; i++) { - polForm.push(topicPublish[i]); - } - - //The below three lines are added to make sure resource group can be save correctly even if the policy is not present - if (topicPublish.length == 2){ - var pname = {name:"policyName", value:""}; - polForm.push(pname); - var pid = {name:"policyId", value:""}; - polForm.push(pid); - }else{ - var selectedPName = topicPublish[2]["value"]; - var pid = {name:"policyId", value:allPolicies[selectedPName][1]["value"]}; - polForm.push(pid); - } - - var d = {} - d["serviceConfigurations"] = []; - for (var i = 0; i < properties.length; i++) { - var ser = $(properties[i]).serializeArray(); - var s = noRepeats(ser) - var newSer = setStringSet(s); - d["serviceConfigurations"].push(newSer); - } - polForm.push(d); - allSMatch[lastStringMatchId] = polForm; - } - - $("#deleteStringMatch").on('click', function() { - $(".idError").hide(); - var deleteId = $("#stringMatchTable .highlight td").html(); - delete allSMatch.deleteId; - $("#stringMatchTable .highlight").remove(); - $("#rgfriendlyname").val(''); - expandTable(); - }); - - $('#stringMatchTable').on('click', 'tr', function(event) { - $(".idError").hide(); - //edited name - if ($("#stringMatchTable .highlight td").html() !== $("#rgfriendlyname").val()){ - //repeated name - if ($.inArray($("#rgfriendlyname").val(), Object.keys(allSMatch)) > -1){ - $("#repeatIdError").show(); - return; - } else { //not repeated - $("#repeatIdError").hide(); - delete allSMatch[$("#stringMatchTable .highlight td").html()]; - } - } - if ($("#rgfriendlyname").val().trim() == "New_Group"){ - $("#newIdError").show(); - return; - } - if (!(readOnly||readMOnly)){ - startNextItem(); - } else { - if ($("#stringMatchTable .highlight").length == 0){ - collapseTable(); - } - } - - $(this).addClass('highlight').siblings().removeClass('highlight'); - disperseConfig(allSMatch, $(this).find("td").html()); - }); - - - $('#createNewStringMatch').on('click', function() { - $(".idError").hide(); - //edited name - if ($("#stringMatchTable .highlight td").html() !== $("#rgfriendlyname").val()){ - //repeated name - if ($.inArray($("#rgfriendlyname").val(), Object.keys(allSMatch)) > -1){ - $("#repeatIdError").show(); - return; - } else { //not repeated - $("#repeatIdError").hide(); - delete allSMatch[$("#stringMatchTable .highlight td").html()]; - } - } - if ($("#rgfriendlyname").val().trim() == "New_Group"){ - $("#newIdError").show(); - return; - } - startNextItem(); - var defSMatch = add_new_stringMatch(); - - if (("#stringMatchTable .highlight").length > 0) { - $('#stringMatchTable tr.highlight').removeClass('highlight'); - } - //$("#stringMatchTable").prepend("<tr class='highlight' id='" +defSMatch+ "''><td>"+ defSMatch + "</td></tr>"); - $("#stringMatchTable").prepend("<tr class='highlight'><td>New_Group</td></tr>"); - - }); - - function isNumberKey(event){ - var charCode = (event.which) ? event.which : event.keyCode - if (charCode > 31 && (charCode < 48 || charCode > 57)){ - return false; - } - return true; - }; - - function startNextItem() { - //save last item before transitioning - var lastItem = $("#stringMatchTable .highlight"); - - - if (lastItem.length > 0) { - saveLastStringMatchLocally($("#rgfriendlyname").val()); - //lastItem.attr("id", $("#rgfriendlyname").val()); - if($("#rgfriendlyname").val() != ''){ - lastItem.find("td").html($("#rgfriendlyname").val()); - } - } else { - collapseTable(); - } - - //allow deleting - if ($("#deleteStringMatch").prop("disabled")) { - $("#deleteStringMatch").prop("disabled", false); - } - } - - //Show table panel only - function expandTable() { - $(".stringMatchPanel").css("display", "none"); - $(".leftStringMatchPanel").removeClass("col-sm-3"); - $(".modelSearchBox").css("padding", "25px 12px"); - if (!($("#deleteStringMatch").prop("disabled"))) { - $("#deleteStringMatch").prop("disabled", true); - } - } - - //Show both menus - function collapseTable() { - $(".leftStringMatchPanel").addClass("col-sm-3"); - $(".glyphicon-search").css("padding", "10px 12px"); - $(".stringMatchPanel").css("display", "unset"); - } - </script> -</div> diff --git a/src/main/resources/META-INF/resources/designer/scripts/CldsModelService.js b/src/main/resources/META-INF/resources/designer/scripts/CldsModelService.js index b42b5bb56..195886c9f 100644 --- a/src/main/resources/META-INF/resources/designer/scripts/CldsModelService.js +++ b/src/main/resources/META-INF/resources/designer/scripts/CldsModelService.js @@ -30,10 +30,8 @@ app.service('cldsModelService', ['alertService', '$http', '$q', function(alertSe } mapping = { - 'stringmatch': StringMatchWindow, 'tca': TCAWindow, 'policy': PolicyWindow, - 'collector': CollectorsWindow, 'vescollector': VesCollectorWindow, 'holmes': HolmesWindow, }; diff --git a/src/main/resources/META-INF/resources/designer/scripts/app.js b/src/main/resources/META-INF/resources/designer/scripts/app.js index 555b31c55..f300bb092 100644 --- a/src/main/resources/META-INF/resources/designer/scripts/app.js +++ b/src/main/resources/META-INF/resources/designer/scripts/app.js @@ -1296,106 +1296,6 @@ var app = angular.module('clds-app', ['ngRoute', // $modalInstance.close("closed"); }); }; - $scope.CollectorsWindow = function(collectorsWin) { - - if (isTemplate) { - var dlg = dialogs - .create( - 'partials/portfolios/Template_model.html', - 'ImportSchemaCtrl', - collectorsWin, { - closable: true, - draggable: true - }, { - size: 'lg', - keyboard: true, - backdrop: 'static', - windowClass: 'my-class' - }); - dlg.result.then(function(name) { - - }, function() { - - // if(angular.equals($scope.name,'')) - // $scope.name = 'You did not enter in - // your name!'; - }); - } else { - var dlg = dialogs - .create( - 'partials/portfolios/Collector_properties.html', - 'ImportSchemaCtrl', { - closable: true, - draggable: true - }, { - size: 'lg', - keyboard: true, - backdrop: 'static', - windowClass: 'my-class' - }); - dlg.result.then(function(name) { - - }, function() { - - // if(angular.equals($scope.name,'')) - // $scope.name = 'You did not enter in - // your name!'; - }); - - } - - }; - $scope.StringMatchWindow = function(stringMatch) { - - if (isTemplate) { - var dlg = dialogs - .create( - 'partials/portfolios/Template_model.html', - 'ImportSchemaCtrl', - stringMatch, { - closable: true, - draggable: true - }, { - size: 'lg', - keyboard: true, - backdrop: 'static', - windowClass: 'my-class' - }); - dlg.result.then(function(name) { - - }, function() { - - // if(angular.equals($scope.name,'')) - // $scope.name = 'You did not enter in - // your name!'; - }); - } else { - - var dlg = dialogs - .create( - 'partials/portfolios/stringMatch_properties.html', - 'ImportSchemaCtrl', { - closable: true, - draggable: true - }, { - size: 'lg', - keyboard: true, - backdrop: 'static', - windowClass: 'my-class' - }); - - dlg.result.then(function(name) { - - // $scope.name = name; - }, function() { - - // if(angular.equals($scope.name,'')) - // $scope.name = 'You did not enter in - // your name!'; - }); - - } - }; $scope.VesCollectorWindow = function(vesCollector) { if (isTemplate) { @@ -1677,13 +1577,6 @@ function importshema() { } -function CollectorsWindow(collectorsWin) { - - angular.element(document.getElementById('navbar')).scope() - .CollectorsWindow(collectorsWin); - -} - function VesCollectorWindow(vesCollectorWin) { angular.element(document.getElementById('navbar')).scope() .VesCollectorWindow(vesCollectorWin); @@ -1700,13 +1593,6 @@ function F5Window() { } -function StringMatchWindow(stringMatch) { - - angular.element(document.getElementById('navbar')).scope() - .StringMatchWindow(stringMatch); - -} - function TCAWindow(tca) { angular.element(document.getElementById('navbar')).scope().TCAWindow(tca); diff --git a/src/main/resources/bpmn/clds-process-action.bpmn b/src/main/resources/bpmn/clds-process-action.bpmn index 780162403..11edc0714 100644 --- a/src/main/resources/bpmn/clds-process-action.bpmn +++ b/src/main/resources/bpmn/clds-process-action.bpmn @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> -<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="_-A31MBMpEea185sFktMJ7Q" targetNamespace="http://camunda.org/schema/1.0/bpmn" exporter="Camunda Modeler" exporterVersion="1.10.0" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd"> +<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="_-A31MBMpEea185sFktMJ7Q" targetNamespace="http://camunda.org/schema/1.0/bpmn" exporter="Camunda Modeler" exporterVersion="1.7.2" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd"> <bpmn2:collaboration id="_Collaboration_2"> <bpmn2:participant id="_Participant_2" name="Process Action" processRef="clds-process-action-wf" /> </bpmn2:collaboration> @@ -14,18 +14,15 @@ <bpmn2:flowNodeRef>StartEvent_1</bpmn2:flowNodeRef> <bpmn2:flowNodeRef>ServiceTask_0x8ypxf</bpmn2:flowNodeRef> <bpmn2:flowNodeRef>sendTcaReqDistribute</bpmn2:flowNodeRef> - <bpmn2:flowNodeRef>sendStringMatchingReqDistribute</bpmn2:flowNodeRef> <bpmn2:flowNodeRef>sendHolmesReqDistribute</bpmn2:flowNodeRef> </bpmn2:lane> <bpmn2:lane id="Lane_5" name="Delete"> - <bpmn2:flowNodeRef>sendStringMatchingReqDelete</bpmn2:flowNodeRef> <bpmn2:flowNodeRef>sendTcaReqDelete</bpmn2:flowNodeRef> <bpmn2:flowNodeRef>sendOpPolicyReqDelete</bpmn2:flowNodeRef> <bpmn2:flowNodeRef>sendHolmesReqDelete</bpmn2:flowNodeRef> </bpmn2:lane> <bpmn2:lane id="Lane_4" name="Update"> <bpmn2:flowNodeRef>sendOpPolicyReqUpdate</bpmn2:flowNodeRef> - <bpmn2:flowNodeRef>sendStringMatchingReqUpdate</bpmn2:flowNodeRef> <bpmn2:flowNodeRef>sendTcaReqUpdate</bpmn2:flowNodeRef> <bpmn2:flowNodeRef>sendHolmesReqUpdate</bpmn2:flowNodeRef> </bpmn2:lane> @@ -79,7 +76,7 @@ <bpmn2:incoming>SequenceFlow_0ejpmee</bpmn2:incoming> <bpmn2:outgoing>SequenceFlow_28</bpmn2:outgoing> </bpmn2:serviceTask> - <bpmn2:sequenceFlow id="SequenceFlow_27" name="" sourceRef="ExclusiveGateway_2" targetRef="sendStringMatchingReqUpdate"> + <bpmn2:sequenceFlow id="SequenceFlow_27" name="" sourceRef="ExclusiveGateway_2" targetRef="sendTcaReqUpdate"> <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[${ actionCd == 'UPDATE' }]]></bpmn2:conditionExpression> </bpmn2:sequenceFlow> <bpmn2:sequenceFlow id="SequenceFlow_28" name="" sourceRef="sendOpPolicyReqUpdate" targetRef="ExclusiveGateway_3" /> @@ -103,16 +100,11 @@ <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing> </bpmn2:startEvent> <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="StartEvent_1" targetRef="ExclusiveGateway_2" /> - <bpmn2:serviceTask id="sendStringMatchingReqDelete" name="Send String Match Micro Service request to Policy [Delete]" camunda:delegateExpression="${stringMatchPolicyDeleteDelegate}"> - <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming> - <bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing> - </bpmn2:serviceTask> - <bpmn2:sequenceFlow id="SequenceFlow_23" name="" sourceRef="sendStringMatchingReqDelete" targetRef="sendTcaReqDelete" /> <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="sendOpPolicyReqDelete" targetRef="ExclusiveGateway_3" /> - <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="ExclusiveGateway_2" targetRef="sendStringMatchingReqDelete"> + <bpmn2:sequenceFlow id="SequenceFlow_15" name="" sourceRef="ExclusiveGateway_2" targetRef="sendTcaReqDelete"> <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[${ actionCd == 'DELETE' }]]></bpmn2:conditionExpression> </bpmn2:sequenceFlow> - <bpmn2:sequenceFlow id="SequenceFlow_0w39hon" sourceRef="ServiceTask_0x8ypxf" targetRef="sendStringMatchingReqDistribute" /> + <bpmn2:sequenceFlow id="SequenceFlow_0w39hon" sourceRef="ServiceTask_0x8ypxf" targetRef="sendTcaReqDistribute" /> <bpmn2:sequenceFlow id="SequenceFlow_1xlfq66" sourceRef="ExclusiveGateway_2" targetRef="ServiceTask_0x8ypxf"> <bpmn2:conditionExpression xsi:type="bpmn2:tFormalExpression"><![CDATA[${ actionCd == 'SUBMIT' || actionCd == 'RESUBMIT' }]]></bpmn2:conditionExpression> </bpmn2:sequenceFlow> @@ -124,19 +116,14 @@ <bpmn2:sequenceFlow id="SequenceFlow_1rga27p" sourceRef="sendTcaReqDistribute" targetRef="sendHolmesReqDistribute" /> <bpmn2:sequenceFlow id="SequenceFlow_0tpegxf" sourceRef="sendTcaReqDelete" targetRef="sendHolmesReqDelete" /> <bpmn2:serviceTask id="sendTcaReqDelete" name="Send Tca Micro Service request to Policy [Delete]" camunda:delegateExpression="${tcaPolicyDeleteDelegate}"> - <bpmn2:incoming>SequenceFlow_23</bpmn2:incoming> + <bpmn2:incoming>SequenceFlow_15</bpmn2:incoming> <bpmn2:outgoing>SequenceFlow_0tpegxf</bpmn2:outgoing> </bpmn2:serviceTask> <bpmn2:sequenceFlow id="SequenceFlow_1kegg6u" sourceRef="sendTcaReqUpdate" targetRef="sendHolmesReqUpdate" /> <bpmn2:serviceTask id="sendTcaReqDistribute" name="Send Tca Micro Service request to Policy [Submit]" camunda:delegateExpression="${tcaPolicyDelegate}"> - <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming> - <bpmn2:outgoing>SequenceFlow_1rga27p</bpmn2:outgoing> - </bpmn2:serviceTask> - <bpmn2:serviceTask id="sendStringMatchingReqDistribute" name="Send String Match Micro Service request to Policy [Submit]" camunda:delegateExpression="${stringMatchPolicyDelegate}"> <bpmn2:incoming>SequenceFlow_0w39hon</bpmn2:incoming> - <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing> + <bpmn2:outgoing>SequenceFlow_1rga27p</bpmn2:outgoing> </bpmn2:serviceTask> - <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="sendStringMatchingReqDistribute" targetRef="sendTcaReqDistribute" /> <bpmn2:sequenceFlow id="SequenceFlow_1tu9g11" sourceRef="sendHolmesReqDistribute" targetRef="sendOpPolicyReqDistribute" /> <bpmn2:serviceTask id="sendHolmesReqDistribute" name="Send Holmes Micro Service request to Policy [Submit]" camunda:delegateExpression="${holmesPolicyDelegate}"> <bpmn2:incoming>SequenceFlow_1rga27p</bpmn2:incoming> @@ -151,15 +138,10 @@ <bpmn2:outgoing>SequenceFlow_1mtizad</bpmn2:outgoing> </bpmn2:serviceTask> <bpmn2:sequenceFlow id="SequenceFlow_1mtizad" sourceRef="sendHolmesReqDelete" targetRef="sendOpPolicyReqDelete" /> - <bpmn2:serviceTask id="sendStringMatchingReqUpdate" name="Send String Match Micro Service request to Policy [Update]" camunda:delegateExpression="${stringMatchPolicyDelegate}"> - <bpmn2:incoming>SequenceFlow_27</bpmn2:incoming> - <bpmn2:outgoing>SequenceFlow_26</bpmn2:outgoing> - </bpmn2:serviceTask> <bpmn2:serviceTask id="sendTcaReqUpdate" name="Send Tca Micro Service request to Policy [Update]" camunda:delegateExpression="${tcaPolicyDelegate}"> - <bpmn2:incoming>SequenceFlow_26</bpmn2:incoming> + <bpmn2:incoming>SequenceFlow_27</bpmn2:incoming> <bpmn2:outgoing>SequenceFlow_1kegg6u</bpmn2:outgoing> </bpmn2:serviceTask> - <bpmn2:sequenceFlow id="SequenceFlow_26" name="" sourceRef="sendStringMatchingReqUpdate" targetRef="sendTcaReqUpdate" /> <bpmn2:serviceTask id="sendHolmesReqUpdate" name="Send Holmes Micro Service request to Policy [Update]" camunda:delegateExpression="${holmesPolicyDelegate}"> <bpmn2:incoming>SequenceFlow_1kegg6u</bpmn2:incoming> <bpmn2:outgoing>SequenceFlow_0ejpmee</bpmn2:outgoing> @@ -180,19 +162,9 @@ <dc:Bounds x="1338" y="257" width="0" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNShape> - <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_8" bpmnElement="sendStringMatchingReqDistribute"> - <dc:Bounds x="400" y="89" width="100" height="80" /> - </bpmndi:BPMNShape> <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_6" bpmnElement="sendOpPolicyReqDistribute"> <dc:Bounds x="912" y="89" width="100" height="80" /> </bpmndi:BPMNShape> - <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_ScriptTask_8" targetElement="ServiceTask_1r1brt6_di"> - <di:waypoint xsi:type="dc:Point" x="500" y="129" /> - <di:waypoint xsi:type="dc:Point" x="546" y="129" /> - <bpmndi:BPMNLabel> - <dc:Bounds x="624" y="192" width="90" height="6" /> - </bpmndi:BPMNLabel> - </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_7" bpmnElement="insEvent"> <dc:Bounds x="1188" y="194" width="100" height="80" /> </bpmndi:BPMNShape> @@ -249,39 +221,19 @@ <dc:Bounds x="1027" y="178.5" width="90" height="6" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> - <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_11" bpmnElement="sendStringMatchingReqDelete"> - <dc:Bounds x="348" y="385" width="100" height="80" /> - </bpmndi:BPMNShape> <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_12" bpmnElement="sendOpPolicyReqDelete"> <dc:Bounds x="831" y="385" width="100" height="80" /> </bpmndi:BPMNShape> - <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_23" bpmnElement="SequenceFlow_23" sourceElement="_BPMNShape_ServiceTask_11" targetElement="_BPMNShape_ServiceTask_12"> - <di:waypoint xsi:type="dc:Point" x="448" y="425" /> - <di:waypoint xsi:type="dc:Point" x="496" y="425" /> - <bpmndi:BPMNLabel> - <dc:Bounds x="467" y="425" width="6" height="6" /> - </bpmndi:BPMNLabel> - </bpmndi:BPMNEdge> <bpmndi:BPMNShape id="_BPMNShape_Lane_9" bpmnElement="Lane_4" isHorizontal="true"> <dc:Bounds x="30" y="484" width="1339" height="117" /> </bpmndi:BPMNShape> - <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_14" bpmnElement="sendStringMatchingReqUpdate"> - <dc:Bounds x="350" y="500" width="100" height="80" /> - </bpmndi:BPMNShape> <bpmndi:BPMNShape id="_BPMNShape_ServiceTask_15" bpmnElement="sendOpPolicyReqUpdate"> <dc:Bounds x="912" y="500" width="100" height="80" /> </bpmndi:BPMNShape> - <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_26" bpmnElement="SequenceFlow_26" sourceElement="_BPMNShape_ServiceTask_14" targetElement="ServiceTask_08pqhb3_di"> - <di:waypoint xsi:type="dc:Point" x="450" y="540" /> - <di:waypoint xsi:type="dc:Point" x="496" y="540" /> - <bpmndi:BPMNLabel> - <dc:Bounds x="580" y="540" width="90" height="6" /> - </bpmndi:BPMNLabel> - </bpmndi:BPMNEdge> - <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_27" bpmnElement="SequenceFlow_27" sourceElement="_BPMNShape_ExclusiveGateway_3" targetElement="_BPMNShape_ServiceTask_14"> + <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_27" bpmnElement="SequenceFlow_27" sourceElement="_BPMNShape_ExclusiveGateway_3" targetElement="ServiceTask_08pqhb3_di"> <di:waypoint xsi:type="dc:Point" x="169" y="262" /> <di:waypoint xsi:type="dc:Point" x="169" y="540" /> - <di:waypoint xsi:type="dc:Point" x="350" y="540" /> + <di:waypoint xsi:type="dc:Point" x="496" y="540" /> <bpmndi:BPMNLabel> <dc:Bounds x="139" y="398" width="90" height="6" /> </bpmndi:BPMNLabel> @@ -341,10 +293,10 @@ <dc:Bounds x="1028" y="501.5" width="90" height="6" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> - <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_ExclusiveGateway_3" targetElement="_BPMNShape_ServiceTask_11"> + <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_15" sourceElement="_BPMNShape_ExclusiveGateway_3" targetElement="ServiceTask_0y2gwy4_di"> <di:waypoint xsi:type="dc:Point" x="169" y="262" /> <di:waypoint xsi:type="dc:Point" x="169" y="425" /> - <di:waypoint xsi:type="dc:Point" x="348" y="425" /> + <di:waypoint xsi:type="dc:Point" x="496" y="425" /> <bpmndi:BPMNLabel> <dc:Bounds x="139" y="333.5" width="90" height="20" /> </bpmndi:BPMNLabel> @@ -354,9 +306,9 @@ </bpmndi:BPMNShape> <bpmndi:BPMNEdge id="SequenceFlow_0w39hon_di" bpmnElement="SequenceFlow_0w39hon"> <di:waypoint xsi:type="dc:Point" x="304" y="129" /> - <di:waypoint xsi:type="dc:Point" x="400" y="129" /> + <di:waypoint xsi:type="dc:Point" x="546" y="129" /> <bpmndi:BPMNLabel> - <dc:Bounds x="307" y="114" width="90" height="0" /> + <dc:Bounds x="380" y="114" width="90" height="0" /> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge id="SequenceFlow_1xlfq66_di" bpmnElement="SequenceFlow_1xlfq66"> diff --git a/src/main/resources/clds/clds-reference.properties b/src/main/resources/clds/clds-reference.properties index abc25b179..d404e4e37 100644 --- a/src/main/resources/clds/clds-reference.properties +++ b/src/main/resources/clds/clds-reference.properties @@ -27,7 +27,7 @@ #
# DCAE request build properties
#
-dcae.template={"properties":{"service_name":"","service_ids":[],"vnf_ids":[],"location_ids":[]},"template":{"string_matching":{"dcae":{"inputTopic":"","outputTopic":"","closedLoopControlName":"","closedLoopEventClient":"configuration.dcae.microservice.stringmatcher.xml","policyName":"","policyScope":"service=vSCP;resource=F5;type=configuration","policyVersion":"v0.0.1","serviceConfigurations":{}}}}}
+dcae.template={"properties":{"service_name":"","service_ids":[],"vnf_ids":[],"location_ids":[]},"template":{"tca":{"dcae":{"inputTopic":"","outputTopic":"","closedLoopControlName":"","closedLoopEventClient":"configuration.dcae.microservice.tca.xml","policyName":"","policyScope":"service=vSCP;resource=F5;type=configuration","policyVersion":"v0.0.1","serviceConfigurations":{}}}}}
dcae.decode.service_ids={"vUSP":["vUSP - vCTS"],"Trinity":["ASBGv TLS VNF","ASBGv No TLS","ASBGv (NO TLS) VNF","ASBGv TLS","NSBGv VNF","NSBGv"],"vSCP":["AKRON_vSCP_F5_FW-SVC/vSCP_F5_FW 1","ALLEN_vSCP_F5_FW-SVC/vSCP_F5_FW 1"],"vProbes":["vProbes - FW"]}
#
# SDC request blueprint properties
@@ -50,19 +50,6 @@ policy.op.policyNamePrefix=Config_BRMS_Param_ tca.template={"service":"MThresholdCrossingConfiguration","location":"Edge","uuid":"TestUUID","policyName":"???","description":"from clds","configName":"MThresholdCrossingConfiguration","templateVersion":"5.2.0.1","priority":"4","version":"5.2.0.1","policyScope":"resource=F5,service=vSCP,type=configuration,closedLoopControlName=vSCP_F5_Firewall_d925ed73-8231-4d02-9545-db4e101f88f8","content":{"$class": "com.att.ecomp.dcae.clamp.common.MThresholdCrossingConfiguration","domain":"measurementsForVfScaling","policyScope":"pnf=eNodeB;type=configuration","policyName":"policy.dcae.configuration","policyVersion":"1.0.0","subscriberContentType": "application/json","subscriberConsumerId": "c13","subscriberConsumerGroup": "OpenDCAE-c13","subscriberTimeoutMS": "-1","subscriberMessageLimit": "-1","subscriberPollingInterval": "20000","publisherContentType": "application/json","publisherMaxBatchSize": "10","publisherMaxRecoveryQueueSize": "100000","publisherPollingInterval": "20000","publisherAlertWindowingTime": "86400","signatures":[]}}
tca.signature.template={"nfNamingCode":"ENBE","target":"common_id","targetType":"eNodeB","useCaseName":"???","signatureName":"???","signatureUuid":"???","closedLoopControlName":"???","severity":"???","version":"1.0.2","maxInterval":1200,"minMessageViolations":4,"thresholds":[]}
#
-# String Match MicroService Policy request build properties
-#
-# default
-sm.template={"service":"StringMatchingConfiguration","location":"Edge","uuid":"TestUUID","policyName":"???","description":"from clds","configName":"com.att.d2.policy.StringMatchingConfiguration","templateVersion":"1604","priority":"4","version":"1610","policyScope":"resource=F5,service=vSCP,type=configuration,closedLoopControlName=vSCP_F5_Firewall_d925ed73-8231-4d02-9545-db4e101f88f8","content":{"serviceConfigurations":{}}}
-# by service: vSCP
-sm.template.vSCP={"service":"StringMatchingConfiguration","location":"Edge","uuid":"TestUUID","policyName":"???","description":"from clds","configName":"com.att.d2.policy.StringMatchingConfiguration","templateVersion":"1604","priority":"4","version":"0.1.0-SNAPSHOT","policyScope":"resource=F5,service=vSCP,type=configuration,closedLoopControlName=vSCP_F5_Firewall_d925ed73-8231-4d02-9545-db4e101f88f8","content":{"serviceConfigurations":{}}}
-sm.sc.template={}
-#
-# default
-sm.rulegroup=true
-# by service: vSCP
-sm.rulegroup.vSCP=false
-#
#
# Operational Policy request build properties
#
diff --git a/src/main/resources/clds/globalClds.properties b/src/main/resources/clds/globalClds.properties index f6607cb35..ac4f0cf30 100644 --- a/src/main/resources/clds/globalClds.properties +++ b/src/main/resources/clds/globalClds.properties @@ -21,4 +21,4 @@ # ECOMP is a trademark and service mark of AT&T Intellectual Property. ### -globalCldsProps ={"collector":{"topicPublishes":{"DCAE-COLLECTOR-UCSNMP":"DCAE-COLLECTOR-UCSNMP"}},"string_match":{"topicPublishes":{"DCAE-CL-EVENT":"DCAE-CL-EVENT"},"aaiMatchingFields":{"cloud-region.identity-url":"cloud-region.identity-url","complex.city":"complex.city","complex.physical-location-id":"complex.physical-location-id","complex.state":"complex.state","generic-vnf.service-id":"generic-vnf.service-id","generic-vnf.vnf-name":"generic-vnf.vnf-name","generic-vnf.vnf-type":"generic-vnf.vnf-type","tenant.tenant-id":"tenant.tenant-id","vserver.in-maint":"vserver.in-maint","vserver.is-closed-loop-disabled":"vserver.is-closed-loop-disabled","vserver.l-interface.interface-name":"vserver.l-interface.interface-name","vserver.l-interface.l3-interface-ipv4-address-list.l3-inteface-ipv4-address":"vserver.l-interface.l3-interface-ipv4-address-list.l3-inteface-ipv4-address","vserver.l-interface.l3-interface-ipv6-address-list.l3-inteface-ipv6-address":"vserver.l-interface.l3-interface-ipv6-address-list.l3-inteface-ipv6-address","vserver.l-interface.network-name":"vserver.l-interface.network-name","vserver.prov-status":"vserver.prov-status","vserver.selflink":"vserver.selflink","vserver.vserver-id":"vserver.vserver-id","vserver.vserver-name":"vserver.vserver-name"},"aaiSendFields":{"cloud-region.identity-url":"cloud-region.identity-url","complex.city":"complex.city","complex.physical-location-id":"complex.physical-location-id","complex.state":"complex.state","generic-vnf.service-id":"generic-vnf.service-id","generic-vnf.vnf-name":"generic-vnf.vnf-name","generic-vnf.vnf-type":"generic-vnf.vnf-type","tenant.tenant-id":"tenant.tenant-id","vserver.in-maint":"vserver.in-maint","vserver.is-closed-loop-disabled":"vserver.is-closed-loop-disabled","vserver.l-interface.interface-name":"vserver.l-interface.interface-name","vserver.l-interface.l3-interface-ipv4-address-list.l3-inteface-ipv4-address":"vserver.l-interface.l3-interface-ipv4-address-list.l3-inteface-ipv4-address","vserver.l-interface.l3-interface-ipv6-address-list.l3-inteface-ipv6-address":"vserver.l-interface.l3-interface-ipv6-address-list.l3-inteface-ipv6-address","vserver.l-interface.network-name":"vserver.l-interface.network-name","vserver.prov-status":"vserver.prov-status","vserver.selflink":"vserver.selflink","vserver.vserver-id":"vserver.vserver-id","vserver.vserver-name":"vserver.vserver-name"},"eventSourceType":{"f5BigIP":"f5BigIP","vSBG_Alarms":"vSBG_Alarms","vCTS_Alarms":"vCTS_Alarms"},"eventSeverity":{"NORMAL":"NORMAL","not-NORMAL":"not-NORMAL","OK":"OK","WARNING":"WARNING","MINOR":"MINOR","MAJOR":"MAJOR","CRITICAL":"CRITICAL"},"timeWindow":0,"ageLimit":1600,"outputEventName":{"":"","ONSET":"ONSET","ABATED":"ABATED"},"createClosedLoopEventId":{"Initial":"Initial","Close":"Close"}},"tca":{"tname":"New_Set","tcaInt":"1","tcaVio":"1","tcaSev":{"NORMAL":"NORMAL","CRITICAL":"CRITICAL","MAJOR":"MAJOR","MINOR":"MINOR","WARNING":"WARNING"},"fieldPath":{"FIELDPATH_test_1":"FIELDPATH_test_1","FIELDPATH_test_2":"FIELDPATH_test_2"},"operator":{">":"GREATER","=":"EQUAL","<":"LESS"},"opsPolicy":{"POLICY_test_X":"POLICY_test_X","POLICY_test_Y":"POLICY_test_Y"}},"global":{"actionSet":{"vnfRecipe":"VNF", "enbRecipe":"eNodeB"},"location":{"SNDGCA64":"San Diego SAN3","ALPRGAED":"Alpharetta PDK1","LSLEILAA":"Lisle DPA3","MDTWNJC1":"FTL_C_location1","MDTWNJC2":"FTL_C_location2","MDTWNJ21":"FTL_L_location1","MDTWNJ22":"FTL_L_location2","RDM2WAGPLCP":"ISTFTL_location","RDM3":"RDM3WAGPLCP"}},"policy":{"pname":"0","timeout":345,"vnfRecipe":{"":"","restart":"Restart","rebuild":"Rebuild","migrate":"Migrate","healthCheck":"Health Check"},"enbRecipe":{"":"","reset":"Reset"},"maxRetries":"3","retryTimeLimit":180,"resource":{"vCTS":"vCTS","v3CDB":"v3CDB","vUDR":"vUDR","vCOM":"vCOM","vRAR":"vRAR","vLCS":"vLCS","vUDR-BE":"vUDR-BE","vDBE":"vDBE"},"parentPolicyConditions":{"Failure_Retries":"Failure: Max Retries Exceeded","Failure_Timeout":"Failure: Time Limit Exceeded","Failure_Guard":"Failure: Guard","Failure_Exception":"Failure: Exception","Failure":"Failure: Other","Success":"Success"}},"shared":{"byService":{"":{"vf":{"":""},"location":{"":""},"alarmCondition":{"":""}}},"byVf":{"":{"vfc":{"":""}}}}}
\ No newline at end of file +globalCldsProps ={"tca":{"tname":"New_Set","tcaInt":"1","tcaVio":"1","tcaSev":{"NORMAL":"NORMAL","CRITICAL":"CRITICAL","MAJOR":"MAJOR","MINOR":"MINOR","WARNING":"WARNING"},"fieldPath":{"FIELDPATH_test_1":"FIELDPATH_test_1","FIELDPATH_test_2":"FIELDPATH_test_2"},"operator":{">":"GREATER","=":"EQUAL","<":"LESS"},"opsPolicy":{"POLICY_test_X":"POLICY_test_X","POLICY_test_Y":"POLICY_test_Y"}},"global":{"actionSet":{"vnfRecipe":"VNF", "enbRecipe":"eNodeB"},"location":{"SNDGCA64":"San Diego SAN3","ALPRGAED":"Alpharetta PDK1","LSLEILAA":"Lisle DPA3","MDTWNJC1":"FTL_C_location1","MDTWNJC2":"FTL_C_location2","MDTWNJ21":"FTL_L_location1","MDTWNJ22":"FTL_L_location2","RDM2WAGPLCP":"ISTFTL_location","RDM3":"RDM3WAGPLCP"}},"policy":{"pname":"0","timeout":345,"vnfRecipe":{"":"","restart":"Restart","rebuild":"Rebuild","migrate":"Migrate","healthCheck":"Health Check"},"enbRecipe":{"":"","reset":"Reset"},"maxRetries":"3","retryTimeLimit":180,"resource":{"vCTS":"vCTS","v3CDB":"v3CDB","vUDR":"vUDR","vCOM":"vCOM","vRAR":"vRAR","vLCS":"vLCS","vUDR-BE":"vUDR-BE","vDBE":"vDBE"},"parentPolicyConditions":{"Failure_Retries":"Failure: Max Retries Exceeded","Failure_Timeout":"Failure: Time Limit Exceeded","Failure_Guard":"Failure: Guard","Failure_Exception":"Failure: Exception","Failure":"Failure: Other","Success":"Success"}},"shared":{"byService":{"":{"vf":{"":""},"location":{"":""},"alarmCondition":{"":""}}},"byVf":{"":{"vfc":{"":""}}}}}
\ No newline at end of file diff --git a/src/main/resources/xsl/clds-bpmn-transformer.xsl b/src/main/resources/xsl/clds-bpmn-transformer.xsl index 8a39be55a..3cd98e3af 100644 --- a/src/main/resources/xsl/clds-bpmn-transformer.xsl +++ b/src/main/resources/xsl/clds-bpmn-transformer.xsl @@ -34,19 +34,7 @@ <!-- by default copy all attributes and elements --> <xsl:template match="/bpmn2:definitions/bpmn2:process"> - <xsl:text>{"collector":[</xsl:text> - <xsl:for-each select="bpmn2:collector" > - <xsl:call-template name="network-element" /> - </xsl:for-each> - <xsl:text>],</xsl:text> - - <xsl:text>"stringMatch":[</xsl:text> - <xsl:for-each select="bpmn2:stringMatch" > - <xsl:call-template name="network-element" /> - </xsl:for-each> - <xsl:text>],</xsl:text> - - <xsl:text>"policy":[</xsl:text> + <xsl:text>{"policy":[</xsl:text> <xsl:for-each select="bpmn2:policy" > <xsl:call-template name="network-element" /> </xsl:for-each> @@ -63,7 +51,7 @@ <xsl:call-template name="network-element" /> </xsl:for-each> <xsl:text>],</xsl:text> - + <xsl:text>"vesCollector":[</xsl:text> <xsl:for-each select="bpmn2:vesCollector" > <xsl:call-template name="network-element" /> |