/*- * ============LICENSE_START======================================================= * ONAP : APPC * ================================================================================ * Copyright (C) 2017 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. * * ECOMP is a trademark and service mark of AT&T Intellectual Property. * ============LICENSE_END========================================================= */ package org.onap.appc.executor.impl; import java.io.IOException; import java.io.StringWriter; import java.io.Writer; import java.util.HashMap; class CommonMethods { private static final HashMap m = new HashMap(); static { m.put(34, """); // < - less-than m.put(60, "<"); // < - less-than m.put(62, ">"); // > - greater-than m.put(38, "&"); // & - Ampersand } static String escapeHtml(String source) { try { StringWriter writer = new StringWriter((int) (source.length() * 1.5)); escape(writer, source); return writer.toString(); } catch (IOException ioe) { ioe.printStackTrace(); return null; } } private static void escape(Writer writer, String str) throws IOException { int len = str.length(); for (int i = 0; i < len; i++) { char c = str.charAt(i); int ascii = (int) c; String entityName = (String) m.get(ascii); if (entityName == null) { if (c > 0x7F) { writer.write("&#"); writer.write(Integer.toString(c, 10)); writer.write(';'); } else { writer.write(c); } } else { writer.write(entityName); } } } }