package com.epam.wilma.service.configuration.stub.helper.response; /*========================================================================== Copyright 2013-2017 EPAM Systems This file is part of Wilma. Wilma is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. Wilma is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with Wilma. If not, see <http://www.gnu.org/licenses/>. ===========================================================================*/ /** * Class to escape xml/html strings. * * @author Tamas_Kohegyi */ public class EscapeXml { /** * Escape text so that it can be used as values of XML attributes, and can be viewed in an HTML page. * * @param text is the text that should be escaped * @return with a xml/html safe text */ public String escapeXML(final String text) { String revisedText = null; if (text != null) { StringBuilder sb = new StringBuilder(text.length() * 2); for (int i = 0; i < text.length(); i++) { char c = text.charAt(i); switch (c) { case '\"': sb.append("""); break; case '\'': sb.append("'"); break; case '&': sb.append("&"); break; case '<': sb.append("<"); break; case '>': sb.append(">"); break; default: sb.append(c); } } //with escaped string we return revisedText = sb.toString(); } return revisedText; } }