本文整理了Java中org.apache.solr.common.util.XML
类的一些代码示例,展示了XML
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。XML
类的具体详情如下:
包路径:org.apache.solr.common.util.XML
类名称:XML
暂无
代码示例来源:origin: org.dspace.dependencies.solr/dspace-solr-core
public void writeAttr(String name, String val) throws IOException {
if (val != null) {
writer.write(' ');
writer.write(name);
writer.write("=\"");
XML.escapeAttributeValue(val, writer);
writer.write('"');
}
}
代码示例来源:origin: org.apache.solr/solr-solrj
/** escapes character data in val and attributes */
public final static void writeXML(Writer out, String tag, String val, Object... attrs) throws IOException {
final Writable writable = val != null ? (writer1) -> XML.escapeCharData(val, writer1) : null;
writeXML(out, tag, writable, attrs);
}
代码示例来源:origin: com.hynnet/solr-solrj
/*********
*
* @throws IOException If there is a low-level I/O error.
*/
public static void escapeCharData(String str, Writer out) throws IOException {
escape(str, out, chardata_escapes);
}
代码示例来源:origin: com.hynnet/solr-solrj
/** 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('>');
}
}
代码示例来源:origin: com.hynnet/solr-solrj
public final static void writeXML(Writer out, String tag, String val) throws IOException {
out.write('<');
out.write(tag);
if (val == null) {
out.write('/');
out.write('>');
} else {
out.write('>');
escapeCharData(val,out);
out.write('<');
out.write('/');
out.write(tag);
out.write('>');
}
}
代码示例来源:origin: org.apache.solr/solr-solrj
/** does NOT escape character data in val; it must already be valid XML. Attributes are always escaped. */
public final static void writeUnescapedXML(Writer out, String tag, String val, Object... attrs) throws IOException {
writeXML(out, tag, (writer1) -> writer1.write(val), attrs);
}
代码示例来源:origin: org.apache.solr/solr-test-framework
/**
* Generates a delete xml string
* @param val text that has not already been xml escaped
* @param args 0 and Even numbered args are params, Odd numbered args are XML escaped values.
*/
private static String delete(String val, String... args) {
try {
StringWriter r = new StringWriter();
XML.writeUnescapedXML(r, "delete", val, (Object[]) args);
return r.getBuffer().toString();
} catch(IOException e) {
throw new RuntimeException
("this should never happen with a StringWriter", e);
}
}
代码示例来源:origin: org.apache.solr/solr-common
/** escapes character data in val */
public final static void writeXML(Writer out, String tag, String val, Object... attrs) throws IOException {
out.write('<');
out.write(tag);
for (int i=0; i<attrs.length; i++) {
out.write(' ');
out.write(attrs[i++].toString());
out.write('=');
out.write('"');
escapeAttributeValue(attrs[i].toString(), 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('>');
}
}
代码示例来源:origin: org.apache.solr/solr-common
public final static void writeXML(Writer out, String tag, String val) throws IOException {
out.write('<');
out.write(tag);
if (val == null) {
out.write('/');
out.write('>');
} else {
out.write('>');
escapeCharData(val,out);
out.write('<');
out.write('/');
out.write(tag);
out.write('>');
}
}
代码示例来源:origin: org.apache.solr/solr-test-framework
public static String simpleTag(String tag, String... args) {
try {
StringWriter writer = new StringWriter();
XML.writeXML(writer, tag, (String) null, (Object[])args);
return writer.getBuffer().toString();
} catch (IOException e) {
throw new RuntimeException
("this should never happen with a StringWriter", e);
}
}
代码示例来源:origin: org.dspace.dependencies.solr/dspace-solr-core
/**
* Generates an <add><doc>... XML String with options
* on the add.
*
* @param doc the Document to add
* @param args 0th and Even numbered args are param names, Odds are param values.
* @see #add
* @see #doc
*/
public String add(Doc doc, String... args) {
try {
StringWriter r = new StringWriter();
// this is anoying
if (null == args || 0 == args.length) {
r.write("<add>");
r.write(doc.xml);
r.write("</add>");
} else {
XML.writeUnescapedXML(r, "add", doc.xml, (Object[])args);
}
return r.getBuffer().toString();
} catch (IOException e) {
throw new RuntimeException
("this should never happen with a StringWriter", e);
}
}
代码示例来源:origin: com.hynnet/solr-solrj
/** escapes character data in val */
public final static void writeXML(Writer out, String tag, String val, Object... attrs) throws IOException {
out.write('<');
out.write(tag);
for (int i=0; i<attrs.length; i++) {
out.write(' ');
out.write(attrs[i++].toString());
out.write('=');
out.write('"');
escapeAttributeValue(attrs[i].toString(), 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('>');
}
}
代码示例来源:origin: org.dspace.dependencies.solr/dspace-solr-core
public void writePrim(String tag, String name, String val, boolean escape) throws IOException {
// OPT - we could use a temp char[] (or a StringBuilder) and if the
// size was small enough to fit (if escape==false we can calc exact size)
// then we could put things directly in the temp buf.
// need to see what percent of CPU this takes up first though...
// Could test a reusable StringBuilder...
// is this needed here???
// Only if a fieldtype calls writeStr or something
// with a null val instead of calling writeNull
/***
if (val==null) {
if (name==null) writer.write("<null/>");
else writer.write("<null name=\"" + name + "/>");
}
***/
int contentLen=val.length();
startTag(tag, name, contentLen==0);
if (contentLen==0) return;
if (escape) {
XML.escapeCharData(val,writer);
} else {
writer.write(val,0,contentLen);
}
writer.write("</");
writer.write(tag);
writer.write('>');
}
代码示例来源:origin: org.apache.solr/solr-solrj
/** escapes character data in val and attributes */
public static void writeXML(Writer out, String tag, String val, Map<String, String> attrs) throws IOException {
writeXML(out, tag, val, attrs.entrySet().stream().flatMap((entry) -> Stream.of(entry.getKey(), entry.getValue())).toArray());
}
代码示例来源:origin: org.apache.solr/solr-solrj
private static void writeVal(Writer writer, String name, Object v, String update) throws IOException {
if (v instanceof Date) {
v = ((Date)v).toInstant().toString();
} else if (v instanceof byte[]) {
byte[] bytes = (byte[]) v;
v = Base64.byteArrayToBase64(bytes, 0, bytes.length);
} else if (v instanceof ByteBuffer) {
ByteBuffer bytes = (ByteBuffer) v;
v = Base64.byteArrayToBase64(bytes.array(), bytes.position(),bytes.limit() - bytes.position());
}
XML.Writable valWriter = null;
if(v instanceof SolrInputDocument) {
final SolrInputDocument solrDoc = (SolrInputDocument) v;
valWriter = (writer1) -> writeXML(solrDoc, writer1);
} else if(v != null) {
final Object val = v;
valWriter = (writer1) -> XML.escapeCharData(val.toString(), writer1);
}
if (update == null) {
if (v != null) {
XML.writeXML(writer, "field", valWriter, "name", name);
}
} else {
if (v == null) {
XML.writeXML(writer, "field", (XML.Writable) null, "name", name, "update", update, "null", true);
} else {
XML.writeXML(writer, "field", valWriter, "name", name, "update", update);
}
}
}
代码示例来源:origin: org.dspace.dependencies.solr/dspace-solr-core
private void writeAttribute(Writer w, String name, Object value) throws IOException {
if (value == null) return;
w.write(" ");
w.write(name);
w.write("=\"");
XML.escapeAttributeValue(value.toString(), w);
w.write("\"");
}
代码示例来源:origin: org.apache.solr/solr-solrj
public static void escapeAttributeValue(String str, Writer out) throws IOException {
escape(str, out, attribute_escapes);
}
代码示例来源:origin: org.apache.solr/solr-test-framework
/**
* Generates an <add><doc>... XML String with options
* on the add.
*
* @param doc the Document to add
* @param args 0th and Even numbered args are param names, Odds are param values.
* @see #add
* @see #doc
*/
public static String add(XmlDoc doc, String... args) {
try {
StringWriter r = new StringWriter();
// this is annoying
if (null == args || 0 == args.length) {
r.write("<add>");
r.write(doc.xml);
r.write("</add>");
} else {
XML.writeUnescapedXML(r, "add", doc.xml, (Object[])args);
}
return r.getBuffer().toString();
} catch (IOException e) {
throw new RuntimeException
("this should never happen with a StringWriter", e);
}
}
代码示例来源:origin: mattweber/elasticsearch-mocksolrplugin
/**Write a complete tag w/ attributes and cdata (the cdata is not enclosed in $lt;!CDATA[]!>
* @param tag
* @param attributes
* @param cdata
* @param escapeCdata
* @param escapeAttr
* @throws IOException
*/
public void writeCdataTag(String tag, Map<String,String> attributes, String cdata, boolean escapeCdata, boolean escapeAttr) throws IOException {
writer.write('<');
writer.write(tag);
if (!attributes.isEmpty()) {
for (Map.Entry<String, String> entry : attributes.entrySet()) {
writeAttr(entry.getKey(), entry.getValue(), escapeAttr);
}
}
writer.write('>');
if (cdata != null && cdata.length() > 0) {
if (escapeCdata) {
XML.escapeCharData(cdata, writer);
} else {
writer.write(cdata, 0, cdata.length());
}
}
writer.write("</");
writer.write(tag);
writer.write('>');
}
代码示例来源:origin: org.dspace.dependencies.solr/dspace-solr-core
private static String simpleTag(String tag, String... args) {
try {
StringWriter r = new StringWriter();
// this is annoying
if (null == args || 0 == args.length) {
XML.writeXML(r, tag, null);
} else {
XML.writeXML(r, tag, null, (Object[])args);
}
return r.getBuffer().toString();
} catch (IOException e) {
throw new RuntimeException
("this should never happen with a StringWriter", e);
}
}
内容来源于网络,如有侵权,请联系作者删除!