diff options
4 files changed, 76 insertions, 58 deletions
diff --git a/sli/common/pom.xml b/sli/common/pom.xml index 7ba72192..8290a42b 100755 --- a/sli/common/pom.xml +++ b/sli/common/pom.xml @@ -43,6 +43,10 @@ <artifactId>commons-lang3</artifactId> </dependency> <dependency> + <groupId>org.apache.commons</groupId> + <artifactId>commons-text</artifactId> + </dependency> + <dependency> <groupId>org.onap.ccsdk.sli.core</groupId> <artifactId>dblib-provider</artifactId> <version>${project.version}</version> @@ -56,7 +60,7 @@ <dependency> <groupId>org.onap.logging-analytics</groupId> <artifactId>logging-slf4j</artifactId> - </dependency> + </dependency> <!-- Testing Dependencies --> <dependency> <groupId>junit</groupId> diff --git a/sli/common/src/main/java/org/onap/ccsdk/sli/core/sli/SvcLogicNode.java b/sli/common/src/main/java/org/onap/ccsdk/sli/core/sli/SvcLogicNode.java index 72cfea50..b0d4fc05 100644 --- a/sli/common/src/main/java/org/onap/ccsdk/sli/core/sli/SvcLogicNode.java +++ b/sli/common/src/main/java/org/onap/ccsdk/sli/core/sli/SvcLogicNode.java @@ -10,9 +10,9 @@ * 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. @@ -22,7 +22,7 @@ */ /** - * + * */ package org.onap.ccsdk.sli.core.sli; @@ -36,17 +36,17 @@ import java.util.Set; import java.util.HashSet; import java.util.TreeMap; -import org.apache.commons.lang3.StringEscapeUtils; +import org.apache.commons.text.StringEscapeUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class SvcLogicNode implements Serializable { - + private static final Logger LOG = LoggerFactory .getLogger(SvcLogicExprListener.class); - + private static final long serialVersionUID = 2L; - + private String nodeName; private int nodeId; private String nodeType; @@ -57,7 +57,7 @@ public class SvcLogicNode implements Serializable { private HashMap<String, SvcLogicExpression> attributes; private HashMap<String, SvcLogicNode> outcomes; private HashMap<String, SvcLogicExpression> parameters; - + public SvcLogicNode(int nodeId, String nodeType, SvcLogicGraph graph) { this.nodeId = nodeId; @@ -67,9 +67,9 @@ public class SvcLogicNode implements Serializable { attributes = new HashMap<> (); parameters = new HashMap<> (); outcomes = null; - + } - + public SvcLogicNode(int nodeId, String nodeType, String nodeName, SvcLogicGraph graph) throws DuplicateValueException { this.nodeId = nodeId; @@ -81,28 +81,28 @@ public class SvcLogicNode implements Serializable { outcomes = null; graph.setNamedNode(nodeName, this); } - - + + public int getNodeId() { return nodeId; } - + public String getNodeName() { return nodeName; } - + public String getNodeType() { return nodeType; } - + public SvcLogicGraph getGraph() { return graph; } - + public int getNumOutcomes() { if (outcomes == null) @@ -114,7 +114,7 @@ public class SvcLogicNode implements Serializable { return outcomes.size(); } } - + public SvcLogicExpression getAttribute(String name) { if (attributes.containsKey(name)) @@ -125,28 +125,28 @@ public class SvcLogicNode implements Serializable { { return null; } - + } - + public void setAttribute(String name, String value) throws SvcLogicException { setAttribute(name, new SvcLogicAtom("STRING", value)); } - + public void setAttribute(String name, SvcLogicExpression value) throws SvcLogicException { if (attributes.containsKey(name)) { throw new DuplicateValueException("Duplicate attribute "+name); } - + attributes.put(name, value); } - + public void mapParameter(String name, String value) throws SvcLogicException { - + if (parameters.containsKey(name)) { throw new DuplicateValueException("Duplicate parameter "+name); @@ -163,7 +163,7 @@ public class SvcLogicNode implements Serializable { int lastParen = value.lastIndexOf("`"); String evalExpr = value.trim().substring(1, lastParen); parmValue = SvcLogicExpressionFactory.parse(evalExpr); - + } else { @@ -185,7 +185,7 @@ public class SvcLogicNode implements Serializable { throw new SvcLogicException(e.getMessage()); } } - + public SvcLogicExpression getParameter(String name) { if (parameters.containsKey(name)) @@ -197,23 +197,23 @@ public class SvcLogicNode implements Serializable { return null; } } - + public boolean isVisited() { return visited; } public void setVisited(boolean visited, boolean recursive) { this.visited = visited; - + if (recursive) { Set<Map.Entry<String, SvcLogicNode>> outcomeSet = getOutcomeSet(); - + if (outcomeSet == null) { return; } - + for (Iterator<Map.Entry<String, SvcLogicNode>> iter = outcomeSet.iterator(); iter.hasNext();) { Map.Entry<String, SvcLogicNode> curOutcome = iter.next(); @@ -222,14 +222,14 @@ public class SvcLogicNode implements Serializable { } } } - + public void addOutcome(String outcomeValue, SvcLogicNode node) throws SvcLogicException { if (outcomes == null) { outcomes = new HashMap<>(); } - + if (outcomeValue.length() == 0) { outcomeValue = "\"\""; } @@ -237,35 +237,35 @@ public class SvcLogicNode implements Serializable { { throw new DuplicateValueException("Duplicate outcome value "+outcomeValue); } - + outcomes.put(outcomeValue, node); } - + public Set<Map.Entry<String, SvcLogicNode>> getOutcomeSet() { if (outcomes == null) { return new HashSet<>(); } - + return outcomes.entrySet(); - + } - + public Set<Map.Entry<String, SvcLogicExpression>> getParameterSet() { if (parameters == null) { return new HashSet<>(); } - + return parameters.entrySet(); - + } - + public void printAsGv(PrintStream pstr) { - + if (visited) { return; @@ -274,9 +274,9 @@ public class SvcLogicNode implements Serializable { { visited = true; } - + StringBuffer sbuff = new StringBuffer(); - + sbuff.append("node"); sbuff.append(nodeId); sbuff.append(" [ shape=none, margin=0, label=<<table border=\"0\" cellborder=\"1\" align=\"left\">"); @@ -292,7 +292,7 @@ public class SvcLogicNode implements Serializable { sbuff.append(nodeName); sbuff.append("</td></tr>"); } - + Set<Map.Entry<String, SvcLogicExpression>> attrSet = attributes.entrySet(); for (Iterator<Map.Entry<String, SvcLogicExpression>> iter = attrSet.iterator() ; iter.hasNext();) { @@ -304,15 +304,15 @@ public class SvcLogicNode implements Serializable { sbuff.append("</td></tr>"); } sbuff.append("</table>>];"); - + pstr.println(sbuff.toString()); - - + + if (outcomes != null) { TreeMap<String, SvcLogicNode> sortedOutcomes = new TreeMap<>(outcomes); Set<Map.Entry<String, SvcLogicNode>> outcomeSet = sortedOutcomes.entrySet(); - + for (Iterator<Map.Entry<String, SvcLogicNode>> iter = outcomeSet.iterator(); iter.hasNext();) { Map.Entry<String, SvcLogicNode> curOutcome = iter.next(); @@ -323,7 +323,7 @@ public class SvcLogicNode implements Serializable { } } } - + public void printAsXml(PrintStream pstr, int indentLvl) { if (visited) @@ -337,7 +337,7 @@ public class SvcLogicNode implements Serializable { } pstr.print("<"); pstr.print(this.getNodeType()); - + Set<Map.Entry<String, SvcLogicExpression>> attrSet = attributes.entrySet(); for (Iterator<Map.Entry<String, SvcLogicExpression>> iter = attrSet.iterator() ; iter.hasNext();) { @@ -348,7 +348,7 @@ public class SvcLogicNode implements Serializable { pstr.print(curAttr.getValue()); pstr.print("'`"); } - + if ((parameters == null || parameters.isEmpty()) && (outcomes == null || outcomes.isEmpty())) { @@ -360,7 +360,7 @@ public class SvcLogicNode implements Serializable { { pstr.print(">\n"); } - + // Print parameters (if any) if (parameters != null) { @@ -405,7 +405,7 @@ public class SvcLogicNode implements Serializable { pstr.print("</outcome>\n"); } } - + // Print node end tag for (int i = 0 ; i < indentLvl ; i++) { @@ -415,7 +415,7 @@ public class SvcLogicNode implements Serializable { pstr.print(this.getNodeType()); pstr.print(">\n"); pstr.flush(); - + } @@ -429,7 +429,7 @@ public class SvcLogicNode implements Serializable { { return null; } - + if (outcomes.containsKey(value)) { return outcomes.get(value); diff --git a/sli/provider/src/test/java/org/onap/ccsdk/sli/core/sli/provider/MdsalHelperTest.java b/sli/provider/src/test/java/org/onap/ccsdk/sli/core/sli/provider/MdsalHelperTest.java index 50a6bbce..5f8c4c22 100755 --- a/sli/provider/src/test/java/org/onap/ccsdk/sli/core/sli/provider/MdsalHelperTest.java +++ b/sli/provider/src/test/java/org/onap/ccsdk/sli/core/sli/provider/MdsalHelperTest.java @@ -745,4 +745,18 @@ public class MdsalHelperTest extends TestCase { assertEquals(Uri.getDefaultInstance("http://wiki.onap.org:8080"), result.getUri()); } + public void testToLowerHyphen() throws Exception { + String camelCase = "HelloWorld"; + String hypenCase = MdsalHelper.toLowerHyphen(camelCase); + assertEquals("hello-world", hypenCase); + + camelCase = "L2SwitchInterfaces"; + hypenCase = MdsalHelper.toLowerHyphen(camelCase); + assertEquals("l2-switch-interfaces", hypenCase); + + camelCase = "ABC"; + hypenCase = MdsalHelper.toLowerHyphen(camelCase); + assertEquals("a-b-c", hypenCase); + } + } diff --git a/sliPluginUtils/provider/src/main/java/org/onap/ccsdk/sli/core/slipluginutils/SliStringUtils.java b/sliPluginUtils/provider/src/main/java/org/onap/ccsdk/sli/core/slipluginutils/SliStringUtils.java index d343ce25..fdc057b2 100644 --- a/sliPluginUtils/provider/src/main/java/org/onap/ccsdk/sli/core/slipluginutils/SliStringUtils.java +++ b/sliPluginUtils/provider/src/main/java/org/onap/ccsdk/sli/core/slipluginutils/SliStringUtils.java @@ -27,7 +27,7 @@ import java.io.UnsupportedEncodingException; import java.net.URLDecoder; import java.net.URLEncoder; import java.util.Map; -import org.apache.commons.lang3.StringEscapeUtils; +import org.apache.commons.text.StringEscapeUtils; import org.apache.commons.lang3.StringUtils; import org.onap.ccsdk.sli.core.sli.SvcLogicContext; import org.onap.ccsdk.sli.core.sli.SvcLogicException; @@ -334,7 +334,7 @@ public class SliStringUtils implements SvcLogicJavaPlugin { ctx.setAttribute(parameters.get("outputPath"), parameters.get(INPUT_PARAM_SOURCE) .replaceAll(parameters.get(INPUT_PARAM_TARGET), parameters.get("replacement"))); } - + /** * Provides substring functionality to Directed Graphs. * <p> @@ -456,7 +456,7 @@ public class SliStringUtils implements SvcLogicJavaPlugin { public static void xmlEscapeText(Map<String, String> inParams, SvcLogicContext ctx) { String source = inParams.get(INPUT_PARAM_SOURCE); String target = inParams.get(INPUT_PARAM_TARGET); - source = StringEscapeUtils.escapeXml(source); + source = StringEscapeUtils.escapeXml10(source); ctx.setAttribute(target, source); } |