jimu-decompiled/sources/com/thoughtworks/xstream/io/xml/AbstractXppDomDriver.java
2025-05-13 19:24:51 +02:00

61 lines
2.3 KiB
Java

package com.thoughtworks.xstream.io.xml;
import com.thoughtworks.xstream.core.util.XmlHeaderAwareReader;
import com.thoughtworks.xstream.io.HierarchicalStreamReader;
import com.thoughtworks.xstream.io.HierarchicalStreamWriter;
import com.thoughtworks.xstream.io.StreamException;
import com.thoughtworks.xstream.io.naming.NameCoder;
import com.thoughtworks.xstream.io.xml.xppdom.XppDom;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.Reader;
import java.io.UnsupportedEncodingException;
import java.io.Writer;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
/* loaded from: classes.dex */
public abstract class AbstractXppDomDriver extends AbstractXmlDriver {
public AbstractXppDomDriver(NameCoder nameCoder) {
super(nameCoder);
}
protected abstract XmlPullParser createParser() throws XmlPullParserException;
@Override // com.thoughtworks.xstream.io.HierarchicalStreamDriver
public HierarchicalStreamReader createReader(Reader reader) {
try {
XmlPullParser createParser = createParser();
createParser.setInput(reader);
return new XppDomReader(XppDom.build(createParser), getNameCoder());
} catch (IOException e) {
throw new StreamException(e);
} catch (XmlPullParserException e2) {
throw new StreamException(e2);
}
}
@Override // com.thoughtworks.xstream.io.HierarchicalStreamDriver
public HierarchicalStreamWriter createWriter(Writer writer) {
return new PrettyPrintWriter(writer, getNameCoder());
}
@Override // com.thoughtworks.xstream.io.HierarchicalStreamDriver
public HierarchicalStreamWriter createWriter(OutputStream outputStream) {
return createWriter(new OutputStreamWriter(outputStream));
}
@Override // com.thoughtworks.xstream.io.HierarchicalStreamDriver
public HierarchicalStreamReader createReader(InputStream inputStream) {
try {
return createReader(new XmlHeaderAwareReader(inputStream));
} catch (UnsupportedEncodingException e) {
throw new StreamException(e);
} catch (IOException e2) {
throw new StreamException(e2);
}
}
}