/*
 * Decompiled with CFR 0.152.
 * 
 * Could not load the following classes:
 *  com.l7tech.common.io.NonCloseableOutputStream
 *  com.l7tech.gateway.common.resources.HttpProxyConfiguration
 *  com.l7tech.objectmodel.FindException
 *  com.l7tech.objectmodel.Goid
 *  com.l7tech.objectmodel.SaveException
 *  com.l7tech.objectmodel.UpdateException
 *  com.l7tech.util.Charsets
 *  com.l7tech.util.PoolByteArrayOutputStream
 *  com.l7tech.util.ResourceUtils
 *  com.l7tech.util.SafeXMLDecoder
 *  com.l7tech.util.SafeXMLDecoderBuilder
 */
package com.l7tech.server.globalresources;

import com.l7tech.common.io.NonCloseableOutputStream;
import com.l7tech.gateway.common.resources.HttpProxyConfiguration;
import com.l7tech.objectmodel.FindException;
import com.l7tech.objectmodel.Goid;
import com.l7tech.objectmodel.SaveException;
import com.l7tech.objectmodel.UpdateException;
import com.l7tech.server.cluster.ClusterPropertyManager;
import com.l7tech.server.globalresources.d;
import com.l7tech.server.globalresources.e;
import com.l7tech.util.Charsets;
import com.l7tech.util.PoolByteArrayOutputStream;
import com.l7tech.util.ResourceUtils;
import com.l7tech.util.SafeXMLDecoder;
import com.l7tech.util.SafeXMLDecoderBuilder;
import java.beans.ExceptionListener;
import java.beans.XMLEncoder;
import java.io.ByteArrayInputStream;
import java.io.Closeable;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.logging.Logger;

public class DefaultHttpProxyManager {
    private static final Logger a;
    private static final String b;
    private final ClusterPropertyManager c;
    private static final String[] d;

    public DefaultHttpProxyManager(ClusterPropertyManager clusterPropertyManager) {
        this.c = clusterPropertyManager;
    }

    public HttpProxyConfiguration getDefaultHttpProxyConfiguration() throws FindException {
        HttpProxyConfiguration httpProxyConfiguration;
        block8: {
            String[] stringArray = d;
            String string = this.c.getProperty(stringArray[2]);
            httpProxyConfiguration = new HttpProxyConfiguration();
            try {
                if (string == null || string.isEmpty()) break block8;
            }
            catch (ArrayIndexOutOfBoundsException arrayIndexOutOfBoundsException) {
                throw DefaultHttpProxyManager.a(arrayIndexOutOfBoundsException);
            }
            ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(string.getBytes(Charsets.UTF8));
            SafeXMLDecoder safeXMLDecoder = new SafeXMLDecoderBuilder((InputStream)byteArrayInputStream).setExceptionListener((ExceptionListener)new d(this)).build();
            try {
                Object object = safeXMLDecoder.readObject();
                if (object instanceof HttpProxyConfiguration) {
                    httpProxyConfiguration = (HttpProxyConfiguration)object;
                } else {
                    String string2;
                    Logger logger;
                    try {
                        logger = a;
                        string2 = object == null ? d[4] : object.getClass().getName();
                    }
                    catch (ArrayIndexOutOfBoundsException arrayIndexOutOfBoundsException) {
                        throw DefaultHttpProxyManager.a(arrayIndexOutOfBoundsException);
                    }
                    stringArray = d;
                    logger.warning(stringArray[5] + string2);
                }
            }
            catch (ArrayIndexOutOfBoundsException arrayIndexOutOfBoundsException) {
                a.warning(d[1]);
            }
        }
        return httpProxyConfiguration;
    }

    /*
     * WARNING - Removed try catching itself - possible behaviour change.
     */
    public void setDefaultHttpProxyConfiguration(HttpProxyConfiguration httpProxyConfiguration) throws SaveException, UpdateException {
        String string;
        block11: {
            block10: {
                if (httpProxyConfiguration == null) break block10;
                PoolByteArrayOutputStream poolByteArrayOutputStream = null;
                XMLEncoder xMLEncoder = null;
                try {
                    poolByteArrayOutputStream = new PoolByteArrayOutputStream();
                    xMLEncoder = new XMLEncoder((OutputStream)new NonCloseableOutputStream((OutputStream)poolByteArrayOutputStream));
                    xMLEncoder.setPersistenceDelegate(Goid.class, Goid.getPersistenceDelegate());
                    xMLEncoder.setExceptionListener(new e(this));
                    xMLEncoder.writeObject(httpProxyConfiguration);
                    xMLEncoder.close();
                    xMLEncoder = null;
                    string = poolByteArrayOutputStream.toString(Charsets.UTF8);
                }
                catch (Throwable throwable) {
                    try {
                        if (xMLEncoder != null) {
                            xMLEncoder.close();
                        }
                    }
                    catch (FindException findException) {
                        throw DefaultHttpProxyManager.a((Exception)((Object)findException));
                    }
                    ResourceUtils.closeQuietly((Closeable)poolByteArrayOutputStream);
                    throw throwable;
                }
                try {
                    if (xMLEncoder != null) {
                        xMLEncoder.close();
                    }
                }
                catch (FindException findException) {
                    throw DefaultHttpProxyManager.a((Exception)((Object)findException));
                }
                ResourceUtils.closeQuietly((Closeable)poolByteArrayOutputStream);
                break block11;
            }
            string = "";
        }
        try {
            String[] stringArray = d;
            this.c.putProperty(stringArray[3], string);
        }
        catch (FindException findException) {
            throw new UpdateException(d[0], (Throwable)findException);
        }
    }

    /*
     * Unable to fully structure code
     */
    static {
        block10: {
            block9: {
                var5 = new String[6];
                var3_1 = 0;
                var2_2 = "PjHaH4oqk\tpE'*%L}Wtq?wkQz\u00042 kb@dQ#.qmFm\n%@v[lVq#jeMjJ6ofkGeM6:we]jK?c%jF#@0;d*\u000blkawP!\u001fwkQz\u000blkawP!\u001fwkQz";
                var4_3 = "PjHaH4oqk\tpE'*%L}Wtq?wkQz\u00042 kb@dQ#.qmFm\n%@v[lVq#jeMjJ6ofkGeM6:we]jK?c%jF#@0;d*\u000blkawP!\u001fwkQz\u000blkawP!\u001fwkQz".length();
                var1_4 = 40;
                var0_5 = -1;
lbl7:
                // 2 sources

                while (true) {
                    v0 = 53;
                    v1 = ++var0_5;
                    v2 = var2_2.substring(v1, v1 + var1_4);
                    v3 = -1;
                    break block9;
                    break;
                }
lbl13:
                // 1 sources

                while (true) {
                    var5[var3_1++] = DefaultHttpProxyManager.a(v0, DefaultHttpProxyManager.a(v2));
                    if ((var0_5 += var1_4) < var4_3) {
                        var1_4 = var2_2.charAt(var0_5);
                        ** continue;
                    }
                    var2_2 = "9J|Oho/@v[lVq#jeMjJ6ofkGeM6:we]jK?c%qGf\\!*fpLg\u00045.qe\t9\u0004";
                    var4_3 = "9J|Oho/@v[lVq#jeMjJ6ofkGeM6:we]jK?c%qGf\\!*fpLg\u00045.qe\t9\u0004".length();
                    var1_4 = 6;
                    var0_5 = -1;
lbl22:
                    // 2 sources

                    while (true) {
                        v0 = 53;
                        v4 = ++var0_5;
                        v2 = var2_2.substring(v4, v4 + var1_4);
                        v3 = 0;
                        break block9;
                        break;
                    }
                    break;
                }
lbl28:
                // 1 sources

                while (true) {
                    var5[var3_1++] = DefaultHttpProxyManager.a(v0, DefaultHttpProxyManager.a(v2));
                    if ((var0_5 += var1_4) < var4_3) {
                        var1_4 = var2_2.charAt(var0_5);
                        ** continue;
                    }
                    break block10;
                    break;
                }
            }
            switch (v3) {
                default: {
                    ** continue;
                }
                ** case 0:
lbl39:
                // 1 sources

                ** continue;
            }
        }
        DefaultHttpProxyManager.d = var5;
        DefaultHttpProxyManager.b = DefaultHttpProxyManager.d[3];
        DefaultHttpProxyManager.a = Logger.getLogger(DefaultHttpProxyManager.class.getName());
    }

    private static Exception a(Exception exception) {
        return exception;
    }

    private static char[] a(String string) {
        char[] cArray = string.toCharArray();
        if (cArray.length < 2) {
            cArray = cArray;
            cArray[0] = (char)(cArray[0] ^ 0x7A);
        }
        return cArray;
    }

    /*
     * Handled impossible loop by duplicating code
     * Enabled aggressive block sorting
     */
    private static String a(int n2, char[] cArray) {
        char[] cArray2;
        block11: {
            int n3;
            int n4;
            int n5;
            block10: {
                n5 = n2;
                cArray2 = cArray;
                n4 = cArray.length;
                n3 = 0;
                if (!true) break block10;
                n4 = n4;
                if (n4 <= n3) break block11;
            }
            do {
                n5 = n5;
                cArray2 = cArray2;
                int n6 = n3;
                cArray2[n6] = (char)(cArray2[n6] ^ (n5 ^ (switch (n3 % 7) {
                    case 0 -> 48;
                    case 1 -> 49;
                    case 2 -> 28;
                    case 3 -> 54;
                    case 4 -> 17;
                    case 5 -> 100;
                    default -> 122;
                })));
                ++n3;
                n4 = n4;
            } while (n4 > n3);
        }
        return new String(cArray2).intern();
    }
}

