Author: shalin
Date: Tue Dec 9 03:18:48 2008
New Revision: 724662
URL: http://svn.apache.org/viewvc?rev=724662&view=rev
Log:
Adding a convenience method which passes attributes in a Map
Modified:
lucene/solr/trunk/src/common/org/apache/solr/common/util/XML.java
Modified: lucene/solr/trunk/src/common/org/apache/solr/common/util/XML.java
URL:
http://svn.apache.org/viewvc/lucene/solr/trunk/src/common/org/apache/solr/common/util/XML.java?rev=724662&r1=724661&r2=724662&view=diff
==============================================================================
--- lucene/solr/trunk/src/common/org/apache/solr/common/util/XML.java (original)
+++ lucene/solr/trunk/src/common/org/apache/solr/common/util/XML.java Tue Dec
9 03:18:48 2008
@@ -19,6 +19,7 @@
import java.io.Writer;
import java.io.IOException;
+import java.util.Map;
/**
* @version $Id$
@@ -153,6 +154,31 @@
}
}
+ /** escapes character data in val */
+ public static void writeXML(Writer out, String tag, String val, Map<String,
String> attrs) throws IOException {
+ out.write('<');
+ out.write(tag);
+ for (Map.Entry<String, String> entry : attrs.entrySet()) {
+ out.write(' ');
+ out.write(entry.getKey());
+ out.write('=');
+ out.write('"');
+ escapeAttributeValue(entry.getValue(), out);
+ out.write('"');
+ }
+ if (val == null) {
+ out.write('/');
+ out.write('>');
+ } else {
+ out.write('>');
+ escapeCharData(val,out);
+ out.write('<');
+ out.write('/');
+ out.write(tag);
+ out.write('>');
+ }
+ }
+
private static void escape(char [] chars, int offset, int length, Writer
out, String [] escapes) throws IOException{
for (int i=offset; i<length; i++) {
char ch = chars[i];