//
// Copyright (c)1998-2011 Pearson Education, Inc. or its affiliate(s).
// All rights reserved.
//
package openadk.generator;
public class StringUtils {
/**
* Escapes an XML string by replacing the characters shown below with their equivalent entity references as defined
* by the XML specification.
* <p>
*
* <table>
* <tr>
* <td>Character</td>
* <td>Entity Reference</td>
* </tr>
* <tr>
* <td><</td>
* <td><</td>
* </tr>
* <tr>
* <td>></td>
* <td>></td>
* </tr>
* <tr>
* <td>&</td>
* <td>&</td>
* </tr>
* <tr>
* <td>'</td>
* <td>'</td>
* </tr>
* <tr>
* <td>"</td>
* <td>"</td>
* </tr>
* </table>
*
* @param str
* The source string
* @return The escaped string
*/
public static String encodeXML(String str) {
if (str == null)
return null;
StringBuilder b = new StringBuilder();
int cnt = str.length();
for (int i = 0; i < cnt; i++) {
char c = str.charAt(i);
switch (c) {
case '<':
b.append("<");
break;
case '>':
b.append(">");
break;
case '\'':
b.append("'");
break;
case '"':
b.append(""");
break;
case '&':
b.append("&");
break;
default:
b.append((char) c);
}
}
return b.toString();
}
}