package io.netty.util.internal;

import java.io.IOException;
import java.util.ArrayList;
import java.util.Formatter;
import java.util.List;
import org.snmp4j.agent.mo.snmp.DisplayString;

/* JADX INFO: loaded from: classes.dex */
public final class StringUtil {
    static final /* synthetic */ boolean $assertionsDisabled = false;
    public static final char CARRIAGE_RETURN = '\r';
    public static final char COMMA = ',';
    private static final int CSV_NUMBER_ESCAPE_CHARACTERS = 7;
    public static final char DOUBLE_QUOTE = '\"';
    public static final String EMPTY_STRING = "";
    public static final char LINE_FEED = '\n';
    public static final String NEWLINE;
    private static final char PACKAGE_SEPARATOR_CHAR = '.';
    public static final char TAB = '\t';
    private static final String[] BYTE2HEX_PAD = new String[256];
    private static final String[] BYTE2HEX_NOPAD = new String[256];

    static {
        String string;
        Formatter formatter = new Formatter();
        int i2 = 0;
        try {
            string = formatter.format("%n", new Object[0]).toString();
        } catch (Exception unused) {
            string = "\n";
        } catch (Throwable th) {
            formatter.close();
            throw th;
        }
        formatter.close();
        NEWLINE = string;
        while (i2 < 10) {
            StringBuilder sb = new StringBuilder(2);
            sb.append('0');
            sb.append(i2);
            BYTE2HEX_PAD[i2] = sb.toString();
            BYTE2HEX_NOPAD[i2] = String.valueOf(i2);
            i2++;
        }
        while (i2 < 16) {
            StringBuilder sb2 = new StringBuilder(2);
            char c2 = (char) ((i2 + 97) - 10);
            sb2.append('0');
            sb2.append(c2);
            BYTE2HEX_PAD[i2] = sb2.toString();
            BYTE2HEX_NOPAD[i2] = String.valueOf(c2);
            i2++;
        }
        while (i2 < BYTE2HEX_PAD.length) {
            StringBuilder sb3 = new StringBuilder(2);
            sb3.append(Integer.toHexString(i2));
            String string2 = sb3.toString();
            BYTE2HEX_PAD[i2] = string2;
            BYTE2HEX_NOPAD[i2] = string2;
            i2++;
        }
    }

    private StringUtil() {
    }

    public static String byteToHexString(int i2) {
        return BYTE2HEX_NOPAD[i2 & DisplayString.MAX_SIZE];
    }

    public static String byteToHexStringPadded(int i2) {
        return BYTE2HEX_PAD[i2 & DisplayString.MAX_SIZE];
    }

    public static boolean commonSuffixOfLength(String str, String str2, int i2) {
        return str != null && str2 != null && i2 >= 0 && str.regionMatches(str.length() - i2, str2, str2.length() - i2, i2);
    }

    /* JADX WARN: Removed duplicated region for block: B:32:0x0078  */
    /*
        Code decompiled incorrectly, please refer to instructions dump.
        To view partially-correct add '--show-bad-code' argument
    */
    public static java.lang.CharSequence escapeCsv(java.lang.CharSequence r13) {
        /*
            java.lang.String r0 = "value"
            java.lang.Object r0 = io.netty.util.internal.ObjectUtil.checkNotNull(r13, r0)
            java.lang.CharSequence r0 = (java.lang.CharSequence) r0
            int r0 = r0.length()
            if (r0 != 0) goto Lf
            return r13
        Lf:
            int r1 = r0 + (-1)
            r2 = 0
            char r3 = r13.charAt(r2)
            boolean r3 = isDoubleQuote(r3)
            r4 = 1
            if (r3 == 0) goto L2b
            char r3 = r13.charAt(r1)
            boolean r3 = isDoubleQuote(r3)
            if (r3 == 0) goto L2b
            if (r0 == r4) goto L2b
            r3 = 1
            goto L2c
        L2b:
            r3 = 0
        L2c:
            java.lang.StringBuilder r5 = new java.lang.StringBuilder
            int r6 = r0 + 7
            r5.<init>(r6)
            r6 = 34
            r5.append(r6)
            r7 = 0
            r8 = 0
        L3a:
            if (r2 >= r0) goto L7f
            char r9 = r13.charAt(r2)
            r10 = 10
            if (r9 == r10) goto L78
            r10 = 13
            if (r9 == r10) goto L78
            if (r9 == r6) goto L4f
            r10 = 44
            if (r9 == r10) goto L78
            goto L79
        L4f:
            if (r2 == 0) goto L73
            if (r2 != r1) goto L54
            goto L73
        L54:
            int r10 = r2 + 1
            char r11 = r13.charAt(r10)
            boolean r11 = isDoubleQuote(r11)
            int r12 = r2 + (-1)
            char r12 = r13.charAt(r12)
            boolean r12 = isDoubleQuote(r12)
            if (r12 != 0) goto L79
            if (r11 == 0) goto L6e
            if (r10 != r1) goto L79
        L6e:
            r5.append(r6)
            r7 = 1
            goto L79
        L73:
            if (r3 != 0) goto L7c
            r5.append(r6)
        L78:
            r8 = 1
        L79:
            r5.append(r9)
        L7c:
            int r2 = r2 + 1
            goto L3a
        L7f:
            if (r7 != 0) goto L85
            if (r8 == 0) goto L89
            if (r3 != 0) goto L89
        L85:
            r5.append(r6)
            r13 = r5
        L89:
            return r13
        */
        throw new UnsupportedOperationException("Method not decompiled: io.netty.util.internal.StringUtil.escapeCsv(java.lang.CharSequence):java.lang.CharSequence");
    }

    private static boolean isDoubleQuote(char c2) {
        return c2 == '\"';
    }

    public static boolean isNullOrEmpty(String str) {
        return str == null || str.isEmpty();
    }

    public static boolean isSurrogate(char c2) {
        return c2 >= 55296 && c2 <= 57343;
    }

    public static int length(String str) {
        if (str == null) {
            return 0;
        }
        return str.length();
    }

    private static IllegalArgumentException newInvalidEscapedCsvFieldException(CharSequence charSequence, int i2) {
        return new IllegalArgumentException("invalid escaped CSV field: " + ((Object) charSequence) + " index: " + i2);
    }

    public static String simpleClassName(Object obj) {
        return obj == null ? "null_object" : simpleClassName(obj.getClass());
    }

    public static String[] split(String str, char c2) {
        int length = str.length();
        ArrayList arrayList = InternalThreadLocalMap.get().arrayList();
        int i2 = 0;
        for (int i3 = 0; i3 < length; i3++) {
            if (str.charAt(i3) == c2) {
                if (i2 == i3) {
                    arrayList.add("");
                } else {
                    arrayList.add(str.substring(i2, i3));
                }
                i2 = i3 + 1;
            }
        }
        if (i2 == 0) {
            arrayList.add(str);
        } else if (i2 != length) {
            arrayList.add(str.substring(i2, length));
        } else {
            for (int size = arrayList.size() - 1; size >= 0 && ((String) arrayList.get(size)).isEmpty(); size--) {
                arrayList.remove(size);
            }
        }
        return (String[]) arrayList.toArray(new String[arrayList.size()]);
    }

    public static String substringAfter(String str, char c2) {
        int iIndexOf = str.indexOf(c2);
        if (iIndexOf >= 0) {
            return str.substring(iIndexOf + 1);
        }
        return null;
    }

    public static String toHexString(byte[] bArr) {
        return toHexString(bArr, 0, bArr.length);
    }

    public static String toHexStringPadded(byte[] bArr) {
        return toHexStringPadded(bArr, 0, bArr.length);
    }

    public static CharSequence unescapeCsv(CharSequence charSequence) {
        int length = ((CharSequence) ObjectUtil.checkNotNull(charSequence, "value")).length();
        if (length == 0) {
            return charSequence;
        }
        int i2 = length - 1;
        boolean z = false;
        if (isDoubleQuote(charSequence.charAt(0)) && isDoubleQuote(charSequence.charAt(i2)) && length != 1) {
            z = true;
        }
        if (!z) {
            validateCsvFormat(charSequence);
            return charSequence;
        }
        StringBuilder sbStringBuilder = InternalThreadLocalMap.get().stringBuilder();
        int i3 = 1;
        while (i3 < i2) {
            char cCharAt = charSequence.charAt(i3);
            if (cCharAt == '\"') {
                int i4 = i3 + 1;
                if (!isDoubleQuote(charSequence.charAt(i4)) || i4 == i2) {
                    throw newInvalidEscapedCsvFieldException(charSequence, i3);
                }
                i3 = i4;
            }
            sbStringBuilder.append(cCharAt);
            i3++;
        }
        return sbStringBuilder.toString();
    }

    public static List<CharSequence> unescapeCsvFields(CharSequence charSequence) {
        ArrayList arrayList = new ArrayList(2);
        StringBuilder sbStringBuilder = InternalThreadLocalMap.get().stringBuilder();
        int length = charSequence.length() - 1;
        int i2 = 0;
        boolean z = false;
        while (i2 <= length) {
            char cCharAt = charSequence.charAt(i2);
            if (!z) {
                if (cCharAt != '\n' && cCharAt != '\r') {
                    if (cCharAt != '\"') {
                        if (cCharAt != ',') {
                            sbStringBuilder.append(cCharAt);
                        } else {
                            arrayList.add(sbStringBuilder.toString());
                            sbStringBuilder.setLength(0);
                        }
                    } else if (sbStringBuilder.length() == 0) {
                        z = true;
                    }
                }
                throw newInvalidEscapedCsvFieldException(charSequence, i2);
            }
            if (cCharAt != '\"') {
                sbStringBuilder.append(cCharAt);
            } else {
                if (i2 == length) {
                    arrayList.add(sbStringBuilder.toString());
                    return arrayList;
                }
                i2++;
                char cCharAt2 = charSequence.charAt(i2);
                if (cCharAt2 == '\"') {
                    sbStringBuilder.append(DOUBLE_QUOTE);
                } else {
                    if (cCharAt2 != ',') {
                        throw newInvalidEscapedCsvFieldException(charSequence, i2 - 1);
                    }
                    arrayList.add(sbStringBuilder.toString());
                    sbStringBuilder.setLength(0);
                    z = false;
                }
            }
            i2++;
        }
        if (z) {
            throw newInvalidEscapedCsvFieldException(charSequence, length);
        }
        arrayList.add(sbStringBuilder.toString());
        return arrayList;
    }

    private static void validateCsvFormat(CharSequence charSequence) {
        int length = charSequence.length();
        for (int i2 = 0; i2 < length; i2++) {
            char cCharAt = charSequence.charAt(i2);
            if (cCharAt == '\n' || cCharAt == '\r' || cCharAt == '\"' || cCharAt == ',') {
                throw newInvalidEscapedCsvFieldException(charSequence, i2);
            }
        }
    }

    public static <T extends Appendable> T byteToHexString(T t, int i2) throws Throwable {
        try {
            t.append(byteToHexString(i2));
        } catch (IOException e2) {
            PlatformDependent.throwException(e2);
        }
        return t;
    }

    public static <T extends Appendable> T byteToHexStringPadded(T t, int i2) throws Throwable {
        try {
            t.append(byteToHexStringPadded(i2));
        } catch (IOException e2) {
            PlatformDependent.throwException(e2);
        }
        return t;
    }

    public static String simpleClassName(Class<?> cls) {
        String name = ((Class) ObjectUtil.checkNotNull(cls, "clazz")).getName();
        int iLastIndexOf = name.lastIndexOf(46);
        return iLastIndexOf > -1 ? name.substring(iLastIndexOf + 1) : name;
    }

    public static String toHexString(byte[] bArr, int i2, int i3) {
        return ((StringBuilder) toHexString(new StringBuilder(i3 << 1), bArr, i2, i3)).toString();
    }

    public static String toHexStringPadded(byte[] bArr, int i2, int i3) {
        return ((StringBuilder) toHexStringPadded(new StringBuilder(i3 << 1), bArr, i2, i3)).toString();
    }

    public static <T extends Appendable> T toHexString(T t, byte[] bArr) {
        return (T) toHexString(t, bArr, 0, bArr.length);
    }

    public static <T extends Appendable> T toHexStringPadded(T t, byte[] bArr) {
        return (T) toHexStringPadded(t, bArr, 0, bArr.length);
    }

    public static <T extends Appendable> T toHexString(T t, byte[] bArr, int i2, int i3) throws Throwable {
        if (i3 == 0) {
            return t;
        }
        int i4 = i3 + i2;
        int i5 = i4 - 1;
        while (i2 < i5 && bArr[i2] == 0) {
            i2++;
        }
        int i6 = i2 + 1;
        byteToHexString(t, bArr[i2]);
        toHexStringPadded(t, bArr, i6, i4 - i6);
        return t;
    }

    public static <T extends Appendable> T toHexStringPadded(T t, byte[] bArr, int i2, int i3) throws Throwable {
        int i4 = i3 + i2;
        while (i2 < i4) {
            byteToHexStringPadded(t, bArr[i2]);
            i2++;
        }
        return t;
    }

    public static String[] split(String str, char c2, int i2) {
        int length = str.length();
        ArrayList arrayList = InternalThreadLocalMap.get().arrayList();
        int i3 = 0;
        int i4 = 1;
        for (int i5 = 0; i5 < length && i4 < i2; i5++) {
            if (str.charAt(i5) == c2) {
                if (i3 == i5) {
                    arrayList.add("");
                } else {
                    arrayList.add(str.substring(i3, i5));
                }
                i3 = i5 + 1;
                i4++;
            }
        }
        if (i3 == 0) {
            arrayList.add(str);
        } else if (i3 != length) {
            arrayList.add(str.substring(i3, length));
        } else {
            for (int size = arrayList.size() - 1; size >= 0 && ((String) arrayList.get(size)).isEmpty(); size--) {
                arrayList.remove(size);
            }
        }
        return (String[]) arrayList.toArray(new String[arrayList.size()]);
    }
}
