/*
 * Decompiled with CFR 0.152.
 * 
 * Could not load the following classes:
 *  com.l7tech.common.io.XmlUtil
 *  com.l7tech.message.Message
 *  com.l7tech.objectmodel.Goid
 *  com.l7tech.util.InvalidDocumentFormatException
 */
package com.l7tech.server.wsdm.method;

import com.l7tech.common.io.XmlUtil;
import com.l7tech.message.Message;
import com.l7tech.objectmodel.Goid;
import com.l7tech.server.wsdm.faults.GenericNotificationExceptionFault;
import com.l7tech.server.wsdm.faults.ResourceUnknownFault;
import com.l7tech.server.wsdm.method.ESMMethod;
import com.l7tech.util.InvalidDocumentFormatException;
import java.io.IOException;
import java.net.MalformedURLException;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;

public class Unsubscribe
extends ESMMethod {
    private String g;
    private static final String[] h;

    private Unsubscribe(String string, Element element, Document document, Message message, Goid goid) throws GenericNotificationExceptionFault, MalformedURLException {
        super(document, message, goid);
        String[] stringArray = h;
        NodeList nodeList = element.getElementsByTagNameNS("*", stringArray[2]);
        int n2 = 0;
        while (true) {
            block13: {
                try {
                    if (n2 >= nodeList.getLength()) break;
                    if (!(nodeList.item(n2) instanceof Element)) break block13;
                }
                catch (GenericNotificationExceptionFault genericNotificationExceptionFault) {
                    throw Unsubscribe.b(genericNotificationExceptionFault);
                }
                Element element2 = (Element)nodeList.item(n2);
                String string2 = XmlUtil.getTextValue((Element)element2);
                try {
                    try {
                        if (string2 == null || string2.length() <= 0) break block13;
                    }
                    catch (GenericNotificationExceptionFault genericNotificationExceptionFault) {
                        throw Unsubscribe.b(genericNotificationExceptionFault);
                    }
                    this.g = string2;
                    break;
                }
                catch (GenericNotificationExceptionFault genericNotificationExceptionFault) {
                    throw Unsubscribe.b(genericNotificationExceptionFault);
                }
            }
            ++n2;
        }
        try {
            if (this.g == null) {
                this.g = string;
            }
        }
        catch (GenericNotificationExceptionFault genericNotificationExceptionFault) {
            throw Unsubscribe.b(genericNotificationExceptionFault);
        }
        try {
            if (this.g == null) {
                throw new ResourceUnknownFault(h[4]);
            }
        }
        catch (GenericNotificationExceptionFault genericNotificationExceptionFault) {
            throw Unsubscribe.b(genericNotificationExceptionFault);
        }
    }

    public static Unsubscribe resolve(Message message, Goid goid) throws GenericNotificationExceptionFault, SAXException, IOException {
        block4: {
            Document document = message.getXmlKnob().getDocumentReadOnly();
            try {
                Element element = Unsubscribe.a(document);
                try {
                    if (element == null || !Unsubscribe.a(element, h[3])) break block4;
                }
                catch (InvalidDocumentFormatException invalidDocumentFormatException) {
                    throw Unsubscribe.b((Exception)((Object)invalidDocumentFormatException));
                }
                return new Unsubscribe(Unsubscribe.b(document), element, document, message, goid);
            }
            catch (InvalidDocumentFormatException invalidDocumentFormatException) {
                throw new GenericNotificationExceptionFault(h[6]);
            }
        }
        return null;
    }

    public String getSubscriptionIdValue() {
        return this.g;
    }

    public String respond(String string) {
        String string2 = this.g;
        String string3 = string;
        String string4 = this.getMessageId();
        String[] stringArray = h;
        return stringArray[1] + string4 + stringArray[0] + string3 + stringArray[5] + string2 + stringArray[7];
    }

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

    /*
     * Unable to fully structure code
     */
    static {
        block10: {
            block9: {
                var5 = new String[8];
                var3_1 = 0;
                var2_2 = "s\u0019\u001cy4$A\u000eJ]cF}\u0002\u0018MY*@wPs\u0019\u001ce;k\u0001\u0018I\u0006\u0011qy\n\u001cK\u0002S48R\nV]).Z\u0001\u001d@\u0002S48NY\u0005K*zlT,WO,vk\r\u000bP^<F}\u001d\tVR*q8\u0016\u0014UR*.o\u001d\u0017M\u0001{|l\u001a\t\u0003\u0013vpw\r\n\u0017S8gq\u001dTVL<z6\u0001\u000b^\u0013.gvA\u001b\u0014\u000e{*\u0012NY\u0019\u001cy4$\u0019\nWHcGm\f\nZN0dl\u0007\u0016Wn<r}\u001c\u001cW_<*\u0012NY\u0019\u001cy48NENO8.]\u0000\u001dIS0zl<\u001c_Y+qv\r\u001c\u00076y48NY\u0019\u001cy48R\u000eJ]cU|\n\u000b\\O**\u0012NY\u0019\u001cy48NY\u0019\u001cy\u0117EJS8d\"+\u0017OY5{h\u000bYAQ5zkT\nV])):\u0006\rMLc;7\u001d\u001aQY4uk@\u0001TP*{y\u001eWVN>;k\u0001\u0018I\u0013<zn\u000b\u0015VL<;:N\u0001TP7g\"\u0019\nX\u0001{|l\u001a\t\u0003\u0013vco\u0019WN\u000fw{j\tV\u000b\fi!7^A\u0016]=pj\u000b\nJU7s:Ps\u0019\u001cegw\u000f\t\u0003t<u|\u000b\u000b\u00076y48NENO8.Y\r\rPS7*\u0012NY\u0019\u001cy4p\u001a\rI\u0006v;|\u0001\u001aJ\u00126uk\u0007\n\u0014S)qv@\u0016K[vck\u0000V[Kt&7=\f[O:fq\u001e\rPS7Yy\u0000\u0018^Y+;M\u0000\nL^*wj\u0007\u001b\\n<gh\u0001\u0017JYS48NY\u0005\u0013.gyT8ZH0{vPs\u0019\u001cy4$\u0019\nX\u0006\u000bqt\u000f\r\\O\r{&dY\u0019\u001cy48\u000e*L^*wj\u0007\tMU6zQ\n\u000b,WO,vk\r\u000bP^<\u001a7V\u001c\naz\u001d\u001aKU)`q\u0001\u0017pxydj\u0001\u000fPX<p\u00acs\u0019\u001cy48NY\u0019\u001cy(7\u0019\nX\u0006\u0018p|\u001c\u001cJOg\u001e8NY\u0019\u001cy48NY\u0005K*u\"<\u001c_Y+qv\r\u001ci]+uu\u000b\r\\N**\u0012NY\u0019\u001cy48NY\u0019\u001cy(tY\nL^cGm\f\nZN0dl\u0007\u0016Wu=4`\u0003\u0015WOcx/\u001d\f[\u0001{|l\u001a\t\u0003\u0013vco\u0019WU] qjY\r\\_1:{\u0001\u0014\u0016R*;o\u001d\u001dT\u0013*az\u001d\u001aKU)`q\u0001\u0017\u001b\u0002S48NY\u0019\u001cy48NY\u0019\u001cy";
                var4_3 = "s\u0019\u001cy4$A\u000eJ]cF}\u0002\u0018MY*@wPs\u0019\u001ce;k\u0001\u0018I\u0006\u0011qy\n\u001cK\u0002S48R\nV]).Z\u0001\u001d@\u0002S48NY\u0005K*zlT,WO,vk\r\u000bP^<F}\u001d\tVR*q8\u0016\u0014UR*.o\u001d\u0017M\u0001{|l\u001a\t\u0003\u0013vpw\r\n\u0017S8gq\u001dTVL<z6\u0001\u000b^\u0013.gvA\u001b\u0014\u000e{*\u0012NY\u0019\u001cy4$\u0019\nWHcGm\f\nZN0dl\u0007\u0016Wn<r}\u001c\u001cW_<*\u0012NY\u0019\u001cy48NENO8.]\u0000\u001dIS0zl<\u001c_Y+qv\r\u001c\u00076y48NY\u0019\u001cy48R\u000eJ]cU|\n\u000b\\O**\u0012NY\u0019\u001cy48NY\u0019\u001cy\u0117EJS8d\"+\u0017OY5{h\u000bYAQ5zkT\nV])):\u0006\rMLc;7\u001d\u001aQY4uk@\u0001TP*{y\u001eWVN>;k\u0001\u0018I\u0013<zn\u000b\u0015VL<;:N\u0001TP7g\"\u0019\nX\u0001{|l\u001a\t\u0003\u0013vco\u0019WN\u000fw{j\tV\u000b\fi!7^A\u0016]=pj\u000b\nJU7s:Ps\u0019\u001cegw\u000f\t\u0003t<u|\u000b\u000b\u00076y48NENO8.Y\r\rPS7*\u0012NY\u0019\u001cy4p\u001a\rI\u0006v;|\u0001\u001aJ\u00126uk\u0007\n\u0014S)qv@\u0016K[vck\u0000V[Kt&7=\f[O:fq\u001e\rPS7Yy\u0000\u0018^Y+;M\u0000\nL^*wj\u0007\u001b\\n<gh\u0001\u0017JYS48NY\u0005\u0013.gyT8ZH0{vPs\u0019\u001cy4$\u0019\nX\u0006\u000bqt\u000f\r\\O\r{&dY\u0019\u001cy48\u000e*L^*wj\u0007\tMU6zQ\n\u000b,WO,vk\r\u000bP^<\u001a7V\u001c\naz\u001d\u001aKU)`q\u0001\u0017pxydj\u0001\u000fPX<p\u00acs\u0019\u001cy48NY\u0019\u001cy(7\u0019\nX\u0006\u0018p|\u001c\u001cJOg\u001e8NY\u0019\u001cy48NY\u0005K*u\"<\u001c_Y+qv\r\u001ci]+uu\u000b\r\\N**\u0012NY\u0019\u001cy48NY\u0019\u001cy(tY\nL^cGm\f\nZN0dl\u0007\u0016Wu=4`\u0003\u0015WOcx/\u001d\f[\u0001{|l\u001a\t\u0003\u0013vco\u0019WU] qjY\r\\_1:{\u0001\u0014\u0016R*;o\u001d\u001dT\u0013*az\u001d\u001aKU)`q\u0001\u0017\u001b\u0002S48NY\u0019\u001cy48NY\u0019\u001cy".length();
                var1_4 = 235;
                var0_5 = -1;
lbl7:
                // 2 sources

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

                while (true) {
                    var5[var3_1++] = Unsubscribe.b(v0, Unsubscribe.b(v2));
                    if ((var0_5 += var1_4) < var4_3) {
                        var1_4 = var2_2.charAt(var0_5);
                        ** continue;
                    }
                    var2_2 = "v4>[\u0017\u0000\"r0$\u0015\u001a\u001bflu3]\u0011\u0018f\u00ce\u001fup\u0015XT\"5up\u0015XT>:9gF\r\u00168F 2F\u001b\u0006ke!9Z\u0016=f+_p\u0015XT\"5up\u0015XH-b&1\u000f*\u0011dp'5[\u001b\u0011Rt'1X\u001d\u0000gg&n?XT\"5up\u0015XH-b&1\u000f=\u001afe:9[\f&gs0\"P\u0016\u0017g+_p\u0015XT\"5i\u007fB\u000b\u001av/\u0006%W\u000b\u0017p|%$\\\u0017\u001aPp35G\u001d\u001aapkZ\u0015XT\")z'F\u0016\u00008@;#@\u001a\u0007ag<2P*\u0011qe:>F\u001dJ\b5ul\u001a\u000b\u001bceo\u0012Z\u001c\r<\u001fi\u007fF\u0017\u0015r/\u0010>C\u001d\u0018me0n";
                    var4_3 = "v4>[\u0017\u0000\"r0$\u0015\u001a\u001bflu3]\u0011\u0018f\u00ce\u001fup\u0015XT\"5up\u0015XT>:9gF\r\u00168F 2F\u001b\u0006ke!9Z\u0016=f+_p\u0015XT\"5up\u0015XH-b&1\u000f*\u0011dp'5[\u001b\u0011Rt'1X\u001d\u0000gg&n?XT\"5up\u0015XH-b&1\u000f=\u001afe:9[\f&gs0\"P\u0016\u0017g+_p\u0015XT\"5i\u007fB\u000b\u001av/\u0006%W\u000b\u0017p|%$\\\u0017\u001aPp35G\u001d\u001aapkZ\u0015XT\")z'F\u0016\u00008@;#@\u001a\u0007ag<2P*\u0011qe:>F\u001dJ\b5ul\u001a\u000b\u001bceo\u0012Z\u001c\r<\u001fi\u007fF\u0017\u0015r/\u0010>C\u001d\u0018me0n".length();
                    var1_4 = 21;
                    var0_5 = -1;
lbl22:
                    // 2 sources

                    while (true) {
                        v0 = 104;
                        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++] = Unsubscribe.b(v0, Unsubscribe.b(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;
            }
        }
        Unsubscribe.h = var5;
    }

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

    /*
     * Handled impossible loop by duplicating code
     * Enabled aggressive block sorting
     */
    private static String b(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 -> 125;
                    case 1 -> 61;
                    case 2 -> 56;
                    case 3 -> 93;
                    case 4 -> 16;
                    case 5 -> 28;
                    default -> 106;
                })));
                ++n3;
                n4 = n4;
            } while (n4 > n3);
        }
        return new String(cArray2).intern();
    }
}

