X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=appc-core%2Fappc-common-bundle%2Fjava%2Forg%2Fonap%2Fappc%2Futil%2FMessageFormatter.java;fp=appc-core%2Fappc-common-bundle%2Fjava%2Forg%2Fonap%2Fappc%2Futil%2FMessageFormatter.java;h=0000000000000000000000000000000000000000;hb=3533ff6d195b9966cbf407238bb5d2fd7ca68bb1;hp=a46047eaa6565edd2b14cce54df18e55e6492143;hpb=9c74c5729c9a52268342e583d6493bb19df80aa6;p=appc.git diff --git a/appc-core/appc-common-bundle/java/org/onap/appc/util/MessageFormatter.java b/appc-core/appc-common-bundle/java/org/onap/appc/util/MessageFormatter.java deleted file mode 100644 index a46047eaa..000000000 --- a/appc-core/appc-common-bundle/java/org/onap/appc/util/MessageFormatter.java +++ /dev/null @@ -1,90 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * ONAP : APPC - * ================================================================================ - * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Copyright (C) 2017 Amdocs - * ============================================================================= - * 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========================================================= - */ - -package org.onap.appc.util; - -import org.apache.commons.lang3.StringUtils; -import java.util.*; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - - -public class MessageFormatter { - private final static String paramNameRegexGroupName = "paramName"; - - /** - * start with ${ and after there is one or more characters that are not $ and not } and ended with } - */ - private final static String paramRegex = "\\$\\{(?[^}$]+)\\}"; - - public static String format(String messageTemplate, Map params) { - if (StringUtils.isEmpty(messageTemplate)) - return ""; - if (params == null || params.isEmpty()) - return messageTemplate; - - String formattedMessage = messageTemplate; - if (formattedMessage.contains("$")) { - for (Map.Entry entry : params.entrySet()) { - formattedMessage = formattedMessage.replaceAll("\\$\\{" + entry.getKey() + "\\}", - escapeDollarChar(String.valueOf(entry.getValue()))); - } - } - - return formattedMessage; - } - - private static String escapeDollarChar(String msg) { - String formatedMsg = msg; - if (formatedMsg.contains("$")) { - formatedMsg = formatedMsg.replaceAll("\\$", "\\\\\\$"); - - } - return formatedMsg; - } - - public static List getParamsNamesList(String messageTemplate) { - List paramsNames = null; - if (!StringUtils.isEmpty(messageTemplate)) { - paramsNames = new ArrayList<>(); - Matcher m = Pattern.compile(paramRegex).matcher(messageTemplate); - while (m.find()) { - String paramName = m.group(paramNameRegexGroupName); - paramsNames.add(paramName); - } - } - return paramsNames; - } - - public static Set getParamsNamesSet(String messageTemplate) { - List paramsNamesList = getParamsNamesList(messageTemplate); - Set paramsNamesSet = null; - if (paramsNamesList != null && !paramsNamesList.isEmpty()) { - paramsNamesSet = new HashSet(); - for (String paramName : paramsNamesList) { - paramsNamesSet.add(paramName); - } - } - return paramsNamesSet; - } -}