package jxl.biff.drawing;

import common.Assert;
import common.Logger;
import java.util.ArrayList;

/* JADX INFO: loaded from: classes.dex */
public class DrawingData implements EscherStream {
    public static /* synthetic */ Class class$jxl$biff$drawing$DrawingData;
    private static Logger logger;
    private EscherRecord[] spContainers;
    private int numDrawings = 0;
    private byte[] drawingData = null;
    private boolean initialized = false;

    static {
        Class clsClass$ = class$jxl$biff$drawing$DrawingData;
        if (clsClass$ == null) {
            clsClass$ = class$("jxl.biff.drawing.DrawingData");
            class$jxl$biff$drawing$DrawingData = clsClass$;
        }
        logger = Logger.getLogger(clsClass$);
    }

    public static /* synthetic */ Class class$(String str) {
        try {
            return Class.forName(str);
        } catch (ClassNotFoundException e2) {
            throw new NoClassDefFoundError(e2.getMessage());
        }
    }

    private void getSpContainers(EscherContainer escherContainer, ArrayList arrayList) {
        EscherRecord[] children = escherContainer.getChildren();
        for (int i2 = 0; i2 < children.length; i2++) {
            if (children[i2].getType() == EscherRecordType.SP_CONTAINER) {
                arrayList.add(children[i2]);
            } else if (children[i2].getType() == EscherRecordType.SPGR_CONTAINER) {
                getSpContainers((EscherContainer) children[i2], arrayList);
            } else {
                logger.warn("Spgr Containers contains a record other than Sp/Spgr containers");
            }
        }
    }

    private void initialize() {
        EscherRecordData escherRecordData = new EscherRecordData(this, 0);
        Assert.verify(escherRecordData.isContainer());
        EscherContainer escherContainer = new EscherContainer(escherRecordData);
        escherContainer.getChildren();
        EscherRecord[] children = escherContainer.getChildren();
        EscherContainer escherContainer2 = null;
        for (int i2 = 0; i2 < children.length && escherContainer2 == null; i2++) {
            EscherRecord escherRecord = children[i2];
            if (escherRecord.getType() == EscherRecordType.SPGR_CONTAINER) {
                escherContainer2 = (EscherContainer) escherRecord;
            }
        }
        Assert.verify(escherContainer2 != null);
        EscherRecord[] children2 = escherContainer2.getChildren();
        boolean z = false;
        for (int i3 = 0; i3 < children2.length && !z; i3++) {
            if (children2[i3].getType() == EscherRecordType.SPGR_CONTAINER) {
                z = true;
            }
        }
        if (z) {
            ArrayList arrayList = new ArrayList();
            getSpContainers(escherContainer2, arrayList);
            EscherRecord[] escherRecordArr = new EscherRecord[arrayList.size()];
            this.spContainers = escherRecordArr;
            this.spContainers = (EscherRecord[]) arrayList.toArray(escherRecordArr);
        } else {
            this.spContainers = children2;
        }
        this.initialized = true;
    }

    public void addData(byte[] bArr) {
        addRawData(bArr);
        this.numDrawings++;
    }

    public void addRawData(byte[] bArr) {
        byte[] bArr2 = this.drawingData;
        if (bArr2 == null) {
            this.drawingData = bArr;
            return;
        }
        byte[] bArr3 = new byte[bArr2.length + bArr.length];
        System.arraycopy(bArr2, 0, bArr3, 0, bArr2.length);
        System.arraycopy(bArr, 0, bArr3, this.drawingData.length, bArr.length);
        this.drawingData = bArr3;
        this.initialized = false;
    }

    @Override // jxl.biff.drawing.EscherStream
    public byte[] getData() {
        return this.drawingData;
    }

    public final int getNumDrawings() {
        return this.numDrawings;
    }

    public EscherContainer getSpContainer(int i2) {
        if (!this.initialized) {
            initialize();
        }
        int i3 = i2 + 1;
        EscherRecord[] escherRecordArr = this.spContainers;
        if (i3 >= escherRecordArr.length) {
            throw new DrawingDataException();
        }
        EscherContainer escherContainer = (EscherContainer) escherRecordArr[i3];
        Assert.verify(escherContainer != null);
        return escherContainer;
    }
}
