package io.netty.handler.codec.xml;

import com.fasterxml.aalto.AsyncByteArrayFeeder;
import com.fasterxml.aalto.AsyncXMLInputFactory;
import com.fasterxml.aalto.AsyncXMLStreamReader;
import com.fasterxml.aalto.stax.InputFactoryImpl;
import io.netty.buffer.ByteBuf;
import io.netty.channel.ChannelHandlerContext;
import io.netty.handler.codec.ByteToMessageDecoder;
import java.util.List;
import javax.xml.stream.XMLStreamException;

/* JADX INFO: loaded from: classes.dex */
public class XmlDecoder extends ByteToMessageDecoder {
    private final AsyncByteArrayFeeder streamFeeder;
    private final AsyncXMLStreamReader<AsyncByteArrayFeeder> streamReader;
    private static final AsyncXMLInputFactory XML_INPUT_FACTORY = new InputFactoryImpl();
    private static final XmlDocumentEnd XML_DOCUMENT_END = XmlDocumentEnd.INSTANCE;

    public XmlDecoder() {
        AsyncXMLStreamReader<AsyncByteArrayFeeder> asyncXMLStreamReaderCreateAsyncForByteArray = XML_INPUT_FACTORY.createAsyncForByteArray();
        this.streamReader = asyncXMLStreamReaderCreateAsyncForByteArray;
        this.streamFeeder = asyncXMLStreamReaderCreateAsyncForByteArray.getInputFeeder();
    }

    /* JADX INFO: Thrown type has an unknown type hierarchy: javax.xml.stream.XMLStreamException */
    /* JADX WARN: Multi-variable type inference failed */
    /* JADX WARN: Type inference failed for: r10v10, types: [io.netty.handler.codec.xml.XmlCharacters] */
    /* JADX WARN: Type inference failed for: r10v11, types: [io.netty.handler.codec.xml.XmlComment] */
    /* JADX WARN: Type inference failed for: r10v12, types: [io.netty.handler.codec.xml.XmlSpace] */
    /* JADX WARN: Type inference failed for: r10v13, types: [io.netty.handler.codec.xml.XmlDocumentStart] */
    /* JADX WARN: Type inference failed for: r10v14, types: [io.netty.handler.codec.xml.XmlDocumentEnd] */
    /* JADX WARN: Type inference failed for: r10v15, types: [io.netty.handler.codec.xml.XmlEntityReference] */
    /* JADX WARN: Type inference failed for: r10v16, types: [io.netty.handler.codec.xml.XmlDTD] */
    /* JADX WARN: Type inference failed for: r10v17, types: [java.lang.Object] */
    /* JADX WARN: Type inference failed for: r10v18, types: [io.netty.handler.codec.xml.XmlCdata] */
    /* JADX WARN: Type inference failed for: r10v7, types: [io.netty.handler.codec.xml.XmlElement, io.netty.handler.codec.xml.XmlElementStart] */
    /* JADX WARN: Type inference failed for: r10v8, types: [io.netty.handler.codec.xml.XmlElement, io.netty.handler.codec.xml.XmlElementEnd] */
    /* JADX WARN: Type inference failed for: r10v9, types: [io.netty.handler.codec.xml.XmlProcessingInstruction] */
    /* JADX WARN: Type inference failed for: r12v0, types: [java.util.List, java.util.List<java.lang.Object>] */
    @Override // io.netty.handler.codec.ByteToMessageDecoder
    public void decode(ChannelHandlerContext channelHandlerContext, ByteBuf byteBuf, List<Object> list) throws XMLStreamException {
        ?? xmlElementStart;
        int i2 = byteBuf.readableBytes();
        byte[] bArr = new byte[i2];
        byteBuf.readBytes(bArr);
        try {
            this.streamFeeder.feedInput(bArr, 0, i2);
            while (!this.streamFeeder.needMoreInput()) {
                switch (this.streamReader.next()) {
                    case 1:
                        xmlElementStart = new XmlElementStart(this.streamReader.getLocalName(), this.streamReader.getName().getNamespaceURI(), this.streamReader.getPrefix());
                        for (int i3 = 0; i3 < this.streamReader.getAttributeCount(); i3++) {
                            xmlElementStart.attributes().add(new XmlAttribute(this.streamReader.getAttributeType(i3), this.streamReader.getAttributeLocalName(i3), this.streamReader.getAttributePrefix(i3), this.streamReader.getAttributeNamespace(i3), this.streamReader.getAttributeValue(i3)));
                        }
                        for (int i4 = 0; i4 < this.streamReader.getNamespaceCount(); i4++) {
                            xmlElementStart.namespaces().add(new XmlNamespace(this.streamReader.getNamespacePrefix(i4), this.streamReader.getNamespaceURI(i4)));
                        }
                        list.add(xmlElementStart);
                        break;
                    case 2:
                        xmlElementStart = new XmlElementEnd(this.streamReader.getLocalName(), this.streamReader.getName().getNamespaceURI(), this.streamReader.getPrefix());
                        for (int i5 = 0; i5 < this.streamReader.getNamespaceCount(); i5++) {
                            xmlElementStart.namespaces().add(new XmlNamespace(this.streamReader.getNamespacePrefix(i5), this.streamReader.getNamespaceURI(i5)));
                        }
                        list.add(xmlElementStart);
                        break;
                    case 3:
                        xmlElementStart = new XmlProcessingInstruction(this.streamReader.getPIData(), this.streamReader.getPITarget());
                        list.add(xmlElementStart);
                        break;
                    case 4:
                        xmlElementStart = new XmlCharacters(this.streamReader.getText());
                        list.add(xmlElementStart);
                        break;
                    case 5:
                        xmlElementStart = new XmlComment(this.streamReader.getText());
                        list.add(xmlElementStart);
                        break;
                    case 6:
                        xmlElementStart = new XmlSpace(this.streamReader.getText());
                        list.add(xmlElementStart);
                        break;
                    case 7:
                        xmlElementStart = new XmlDocumentStart(this.streamReader.getEncoding(), this.streamReader.getVersion(), this.streamReader.isStandalone(), this.streamReader.getCharacterEncodingScheme());
                        list.add(xmlElementStart);
                        break;
                    case 8:
                        xmlElementStart = XML_DOCUMENT_END;
                        list.add(xmlElementStart);
                        break;
                    case 9:
                        xmlElementStart = new XmlEntityReference(this.streamReader.getLocalName(), this.streamReader.getText());
                        list.add(xmlElementStart);
                        break;
                    case 11:
                        xmlElementStart = new XmlDTD(this.streamReader.getText());
                        list.add(xmlElementStart);
                        break;
                    case 12:
                        xmlElementStart = new XmlCdata(this.streamReader.getText());
                        list.add(xmlElementStart);
                        break;
                }
            }
        } catch (XMLStreamException e2) {
            byteBuf.skipBytes(byteBuf.readableBytes());
            throw e2;
        }
    }
}
