mirror of
https://codeberg.org/Mercury-IM/Smack
synced 2024-11-22 22:32:06 +01:00
Remove the dependency on javax.xml.transform
Not all platforms support this API (e.g. Android). Strip the prettyPrint() method since it wasn't used anyway. Also move XmlUtil in a more appropriate package.
This commit is contained in:
parent
24b637876f
commit
352c362e90
4 changed files with 36 additions and 72 deletions
34
core/src/main/java/org/jivesoftware/smack/util/XmlUtils.java
Normal file
34
core/src/main/java/org/jivesoftware/smack/util/XmlUtils.java
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* Copyright the original author or authors
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.jivesoftware.smack.util;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Simple utility for XML.
|
||||||
|
*
|
||||||
|
* @author Robin Collier
|
||||||
|
*/
|
||||||
|
public class XmlUtils {
|
||||||
|
|
||||||
|
static public void appendAttribute(StringBuilder builder, String att, String value) {
|
||||||
|
builder.append(" ");
|
||||||
|
builder.append(att);
|
||||||
|
builder.append("='");
|
||||||
|
builder.append(value);
|
||||||
|
builder.append("'");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -16,7 +16,7 @@
|
||||||
*/
|
*/
|
||||||
package org.jivesoftware.smackx.pubsub;
|
package org.jivesoftware.smackx.pubsub;
|
||||||
|
|
||||||
import org.jivesoftware.smackx.pubsub.util.XmlUtils;
|
import org.jivesoftware.smack.util.XmlUtils;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A packet extension representing the <b>options</b> element.
|
* A packet extension representing the <b>options</b> element.
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
*/
|
*/
|
||||||
package org.jivesoftware.smackx.pubsub;
|
package org.jivesoftware.smackx.pubsub;
|
||||||
|
|
||||||
import org.jivesoftware.smackx.pubsub.util.XmlUtils;
|
import org.jivesoftware.smack.util.XmlUtils;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -1,70 +0,0 @@
|
||||||
/**
|
|
||||||
*
|
|
||||||
* Copyright the original author or authors
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
package org.jivesoftware.smackx.pubsub.util;
|
|
||||||
|
|
||||||
import java.io.StringReader;
|
|
||||||
|
|
||||||
import javax.xml.transform.OutputKeys;
|
|
||||||
import javax.xml.transform.Transformer;
|
|
||||||
import javax.xml.transform.TransformerFactory;
|
|
||||||
import javax.xml.transform.stream.StreamResult;
|
|
||||||
import javax.xml.transform.stream.StreamSource;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Simple utility for pretty printing xml.
|
|
||||||
*
|
|
||||||
* @author Robin Collier
|
|
||||||
*/
|
|
||||||
public class XmlUtils
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* @param header Just a title for the stanza for readability. Single word no spaces since
|
|
||||||
* it is inserted as the root element in the output.
|
|
||||||
* @param xml The string to pretty print
|
|
||||||
*/
|
|
||||||
static public void prettyPrint(String header, String xml)
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
Transformer transformer = TransformerFactory.newInstance().newTransformer();
|
|
||||||
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
|
|
||||||
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "3");
|
|
||||||
|
|
||||||
if (header != null)
|
|
||||||
{
|
|
||||||
xml = "\n<" + header + ">" + xml + "</" + header + '>';
|
|
||||||
}
|
|
||||||
transformer.transform(new StreamSource(new StringReader(xml)), new StreamResult(System.out));
|
|
||||||
}
|
|
||||||
catch (Exception e)
|
|
||||||
{
|
|
||||||
System.out.println("Something wrong with xml in \n---------------\n" + xml + "\n---------------");
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static public void appendAttribute(StringBuilder builder, String att, String value)
|
|
||||||
{
|
|
||||||
builder.append(" ");
|
|
||||||
builder.append(att);
|
|
||||||
builder.append("='");
|
|
||||||
builder.append(value);
|
|
||||||
builder.append("'");
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
Loading…
Reference in a new issue