package i;

import d.AbstractC0421a;
import d.C0424d;
import d.C0425e;
import d.C0427g;
import d.InterfaceC0437j;
import g.C0474a;
import g.InterfaceC0476c;
import java.io.File;
import java.io.StringWriter;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
import java.net.Inet4Address;
import java.net.Inet6Address;
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URL;
import java.net.UnknownHostException;
import java.nio.charset.Charset;
import java.text.SimpleDateFormat;
import java.util.Currency;
import java.util.Iterator;
import java.util.Locale;
import java.util.Map;
import java.util.TimeZone;
import java.util.UUID;
import java.util.regex.Pattern;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import l.AbstractC0613e;
import org.w3c.dom.Node;

/* JADX INFO: loaded from: classes.dex */
public class Q implements U, h.t {

    /* JADX INFO: renamed from: c, reason: collision with root package name */
    private static Method f4264c;

    /* JADX INFO: renamed from: b, reason: collision with root package name */
    public static final Q f4263b = new Q();

    /* JADX INFO: renamed from: d, reason: collision with root package name */
    private static boolean f4265d = false;

    /* JADX INFO: renamed from: a, reason: collision with root package name */
    private static boolean f4262a = "true".equals(AbstractC0613e.g("fastjson.deserializer.fileRelativePathSupport"));

    private static String e(Node node) {
        try {
            Transformer transformerNewTransformer = TransformerFactory.newInstance().newTransformer();
            DOMSource dOMSource = new DOMSource(node);
            StringWriter stringWriter = new StringWriter();
            transformerNewTransformer.transform(dOMSource, new StreamResult(stringWriter));
            return stringWriter.toString();
        } catch (TransformerException e2) {
            throw new C0424d("xml node to string error", e2);
        }
    }

    @Override // i.U
    public void a(C0516I c0516i, Object obj, Object obj2, Type type, int i2) {
        String strE;
        e0 e0Var = c0516i.f4223k;
        if (obj == null) {
            e0Var.K();
            return;
        }
        Class<?> cls = obj.getClass();
        if (cls == SimpleDateFormat.class) {
            strE = ((SimpleDateFormat) obj).toPattern();
            if (e0Var.j(f0.WriteClassName) && obj.getClass() != type) {
                e0Var.write(123);
                e0Var.s(AbstractC0421a.f3675r);
                c0516i.w(obj.getClass().getName());
                e0Var.z(',', "val", strE);
                e0Var.write(125);
                return;
            }
        } else if (cls == Class.class) {
            strE = ((Class) obj).getName();
        } else {
            if (cls == InetSocketAddress.class) {
                InetSocketAddress inetSocketAddress = (InetSocketAddress) obj;
                InetAddress address = inetSocketAddress.getAddress();
                e0Var.write(123);
                if (address != null) {
                    e0Var.s("address");
                    c0516i.v(address);
                    e0Var.write(44);
                }
                e0Var.s("port");
                e0Var.G(inetSocketAddress.getPort());
                e0Var.write(125);
                return;
            }
            if (obj instanceof File) {
                strE = ((File) obj).getPath();
            } else if (obj instanceof InetAddress) {
                strE = ((InetAddress) obj).getHostAddress();
            } else if (obj instanceof TimeZone) {
                strE = ((TimeZone) obj).getID();
            } else if (obj instanceof Currency) {
                strE = ((Currency) obj).getCurrencyCode();
            } else {
                if (obj instanceof InterfaceC0437j) {
                    ((InterfaceC0437j) obj).a(e0Var);
                    return;
                }
                if (obj instanceof Iterator) {
                    f(c0516i, e0Var, (Iterator) obj);
                    return;
                }
                if (obj instanceof Iterable) {
                    f(c0516i, e0Var, ((Iterable) obj).iterator());
                    return;
                }
                if (obj instanceof Map.Entry) {
                    Map.Entry entry = (Map.Entry) obj;
                    Object key = entry.getKey();
                    Object value = entry.getValue();
                    if (key instanceof String) {
                        String str = (String) key;
                        if (value instanceof String) {
                            e0Var.C('{', str, (String) value);
                        } else {
                            e0Var.write(123);
                            e0Var.s(str);
                            c0516i.v(value);
                        }
                    } else {
                        e0Var.write(123);
                        c0516i.v(key);
                        e0Var.write(58);
                        c0516i.v(value);
                    }
                    e0Var.write(125);
                    return;
                }
                if (obj.getClass().getName().equals("net.sf.json.JSONNull")) {
                    e0Var.K();
                    return;
                } else {
                    if (!(obj instanceof Node)) {
                        throw new C0424d("not support class : " + cls);
                    }
                    strE = e((Node) obj);
                }
            }
        }
        e0Var.O(strE);
    }

    @Override // h.t
    public Object b(C0474a c0474a, Type type, Object obj) {
        Object objA;
        String str;
        InterfaceC0476c interfaceC0476c = c0474a.f3944H;
        int i2 = 0;
        InetAddress inetAddress = null;
        if (type != InetSocketAddress.class) {
            if (c0474a.f3949Z == 2) {
                c0474a.f3949Z = 0;
                c0474a.a(16);
                if (interfaceC0476c.F() != 4) {
                    throw new C0424d("syntax error");
                }
                if (!"val".equals(interfaceC0476c.A())) {
                    throw new C0424d("syntax error");
                }
                interfaceC0476c.i();
                c0474a.a(17);
                objA = c0474a.A();
                c0474a.a(13);
            } else {
                objA = c0474a.A();
            }
            if (objA == null) {
                str = null;
            } else {
                if (!(objA instanceof String)) {
                    if (!(objA instanceof C0425e)) {
                        throw new C0424d("expect string");
                    }
                    C0425e c0425e = (C0425e) objA;
                    if (type == Currency.class) {
                        String strS = c0425e.s("currency");
                        if (strS != null) {
                            return Currency.getInstance(strS);
                        }
                        String strS2 = c0425e.s("currencyCode");
                        if (strS2 != null) {
                            return Currency.getInstance(strS2);
                        }
                    }
                    return type == Map.Entry.class ? c0425e.entrySet().iterator().next() : c0425e.q(type);
                }
                str = (String) objA;
            }
            if (str == null || str.length() == 0) {
                return null;
            }
            if (type == UUID.class) {
                return UUID.fromString(str);
            }
            if (type == URI.class) {
                return URI.create(str);
            }
            if (type == URL.class) {
                try {
                    return new URL(str);
                } catch (MalformedURLException e2) {
                    throw new C0424d("create url error", e2);
                }
            }
            if (type == Pattern.class) {
                return Pattern.compile(str);
            }
            if (type == Locale.class) {
                return l.l.M0(str);
            }
            if (type == SimpleDateFormat.class) {
                SimpleDateFormat simpleDateFormat = new SimpleDateFormat(str, interfaceC0476c.X());
                simpleDateFormat.setTimeZone(interfaceC0476c.getTimeZone());
                return simpleDateFormat;
            }
            if (type == InetAddress.class || type == Inet4Address.class || type == Inet6Address.class) {
                try {
                    return InetAddress.getByName(str);
                } catch (UnknownHostException e3) {
                    throw new C0424d("deserialize inet adress error", e3);
                }
            }
            if (type == File.class) {
                if (str.indexOf("..") < 0 || f4262a) {
                    return new File(str);
                }
                throw new C0424d("file relative path not support.");
            }
            if (type == TimeZone.class) {
                return TimeZone.getTimeZone(str);
            }
            if (type instanceof ParameterizedType) {
                type = ((ParameterizedType) type).getRawType();
            }
            if (type == Class.class) {
                return l.l.B0(str, c0474a.i().l(), false);
            }
            if (type == Charset.class) {
                return Charset.forName(str);
            }
            if (type == Currency.class) {
                return Currency.getInstance(str);
            }
            if (type == C0427g.class) {
                return new C0427g(str);
            }
            if (!(type instanceof Class)) {
                throw new C0424d("MiscCodec not support " + type.toString());
            }
            String name = ((Class) type).getName();
            if (name.equals("java.nio.file.Path")) {
                try {
                    if (f4264c == null && !f4265d) {
                        f4264c = l.l.z0("java.nio.file.Paths").getMethod("get", String.class, String[].class);
                    }
                    Method method = f4264c;
                    if (method != null) {
                        return method.invoke(null, str, new String[0]);
                    }
                    throw new C0424d("Path deserialize erorr");
                } catch (IllegalAccessException e4) {
                    throw new C0424d("Path deserialize erorr", e4);
                } catch (NoSuchMethodException unused) {
                    f4265d = true;
                } catch (InvocationTargetException e5) {
                    throw new C0424d("Path deserialize erorr", e5);
                }
            }
            throw new C0424d("MiscCodec not support " + name);
        }
        if (interfaceC0476c.F() == 8) {
            interfaceC0476c.i();
            return null;
        }
        c0474a.a(12);
        while (true) {
            String strA = interfaceC0476c.A();
            interfaceC0476c.s(17);
            if (strA.equals("address")) {
                c0474a.a(17);
                inetAddress = (InetAddress) c0474a.N(InetAddress.class);
            } else if (strA.equals("port")) {
                c0474a.a(17);
                if (interfaceC0476c.F() != 2) {
                    throw new C0424d("port is not int");
                }
                int iN = interfaceC0476c.n();
                interfaceC0476c.i();
                i2 = iN;
            } else {
                c0474a.a(17);
                c0474a.A();
            }
            if (interfaceC0476c.F() != 16) {
                c0474a.a(13);
                return new InetSocketAddress(inetAddress, i2);
            }
            interfaceC0476c.i();
        }
    }

    @Override // h.t
    public int d() {
        return 4;
    }

    protected void f(C0516I c0516i, e0 e0Var, Iterator it) {
        e0Var.write(91);
        int i2 = 0;
        while (it.hasNext()) {
            if (i2 != 0) {
                e0Var.write(44);
            }
            c0516i.v(it.next());
            i2++;
        }
        e0Var.write(93);
    }
}
