juergen 01/03/22 07:47:25
Modified: src/share/org/apache/slide/util/logger
XMLTestCaseGenerator.java
Log:
Really: escape some characters used in XML to their escape characters. Needed for
locktoken.
Revision Changes Path
1.4 +29 -9
jakarta-slide/src/share/org/apache/slide/util/logger/XMLTestCaseGenerator.java
Index: XMLTestCaseGenerator.java
===================================================================
RCS file:
/home/cvs/jakarta-slide/src/share/org/apache/slide/util/logger/XMLTestCaseGenerator.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- XMLTestCaseGenerator.java 2001/03/22 15:37:43 1.3
+++ XMLTestCaseGenerator.java 2001/03/22 15:47:24 1.4
@@ -125,14 +125,6 @@
//hak String result = new String( printXMLheader() + printXMLbody() +
SEPARATOR_LINE);
String result = new String( printXMLbody());
try {
- System.out.println("######################################");
- System.out.println("######################################");
- System.out.println(result);
- System.out.println("######################################");
- System.out.println("######################################");
- System.out.println("");
- System.out.println("");
- System.out.println("");
Element elem = (new SAXBuilder(false).build(new
StringReader(result)).getRootElement());
result = new XMLOutputter(" ", true).outputString(elem);
}
@@ -197,6 +189,7 @@
return result;
}
+
/*
* this method prints the XML request header attributes.
*/
@@ -207,8 +200,35 @@
while ( e.hasMoreElements() ) {
String headerName = (String)e.nextElement();
String headerValue = request.getHeader(headerName);
- result = result + "<header>" + headerName + ": " + headerValue +
"</header>";
+ result = result + "<header>" + headerName + ": " +
escapeXMLcharacters(headerValue) + "</header>";
}
+ }
+ return result;
+ }
+
+ /*
+ * this method converts a string containing XML characters
+ * to a string containing the equvivalent escape characters
+ */
+ private String escapeXMLcharacters(String input){
+ String result = input;
+ result = escapeXMLcharacters(result, "<", "<" );
+ result = escapeXMLcharacters(result, ">", ">" );
+ return result;
+ }
+
+ /*
+ * this method converts a string containing XML characters
+ * to a string containing the equvivalent escape characters
+ */
+ private String escapeXMLcharacters(String input, String pattern, String
replacement){
+ String result = input;
+ int position = result.indexOf(pattern);
+ while (position != (-1)) {
+ result = result.substring(0, position) +
+ replacement +
+ result.substring(position+pattern.length(), result.length());
+ position = result.indexOf(pattern);
}
return result;
}