/*
 * Decompiled with CFR 0.152.
 * 
 * Could not load the following classes:
 *  com.l7tech.gateway.common.admin.UDDIRegistryAdmin$EndpointScheme
 *  com.l7tech.gateway.common.audit.AuditDetailMessage
 *  com.l7tech.gateway.common.audit.SystemMessages
 *  com.l7tech.gateway.common.uddi.UDDIProxiedServiceInfo
 *  com.l7tech.gateway.common.uddi.UDDIProxiedServiceInfo$PublishType
 *  com.l7tech.gateway.common.uddi.UDDIPublishStatus$PublishStatus
 *  com.l7tech.gateway.common.uddi.UDDIRegistry
 *  com.l7tech.objectmodel.Goid
 *  com.l7tech.objectmodel.ObjectModelException
 *  com.l7tech.objectmodel.PersistentEntity
 *  com.l7tech.uddi.BusinessServicePublisher
 *  com.l7tech.uddi.EndpointPair
 *  com.l7tech.uddi.UDDIException
 *  com.l7tech.util.ConfigFactory
 *  com.l7tech.util.ExceptionUtils
 *  com.l7tech.util.ResourceUtils
 *  javax.wsdl.WSDLException
 */
package com.l7tech.server.uddi;

import com.l7tech.gateway.common.admin.UDDIRegistryAdmin;
import com.l7tech.gateway.common.audit.AuditDetailMessage;
import com.l7tech.gateway.common.audit.SystemMessages;
import com.l7tech.gateway.common.uddi.UDDIProxiedServiceInfo;
import com.l7tech.gateway.common.uddi.UDDIPublishStatus;
import com.l7tech.gateway.common.uddi.UDDIRegistry;
import com.l7tech.objectmodel.Goid;
import com.l7tech.objectmodel.ObjectModelException;
import com.l7tech.objectmodel.PersistentEntity;
import com.l7tech.server.uddi.PublishingUDDITaskFactory;
import com.l7tech.server.uddi.UDDIHelper;
import com.l7tech.server.uddi.UDDITaskFactory;
import com.l7tech.server.uddi.ab;
import com.l7tech.uddi.BusinessServicePublisher;
import com.l7tech.uddi.EndpointPair;
import com.l7tech.uddi.UDDIException;
import com.l7tech.util.ConfigFactory;
import com.l7tech.util.ExceptionUtils;
import com.l7tech.util.ResourceUtils;
import java.io.Closeable;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.wsdl.WSDLException;

final class ac
extends UDDITaskFactory.UDDITask {
    private static final Logger a;
    private final PublishingUDDITaskFactory b;
    private final Goid c;
    private static final String[] d;

    private ac(PublishingUDDITaskFactory publishingUDDITaskFactory, Goid goid) {
        this.b = publishingUDDITaskFactory;
        this.c = goid;
    }

    /*
     * WARNING - Removed try catching itself - possible behaviour change.
     * Unable to fully structure code
     */
    @Override
    public void apply(UDDITaskFactory.UDDITaskContext var1_1) throws UDDITaskFactory.UDDITaskException {
        block56: {
            var2_2 = null;
            try {
                block57: {
                    block61: {
                        block55: {
                            block54: {
                                block53: {
                                    var3_3 = (UDDIProxiedServiceInfo)this.b.b.findByPrimaryKey(this.c);
                                    if (var3_3 == null) {
                                        return;
                                    }
                                    var2_2 = this.b.c.findByProxiedSerivceInfoGoid(var3_3.getGoid());
                                    if (var2_2 == null) {
                                        return;
                                    }
                                    try {
                                        if (var2_2.getPublishStatus() == UDDIPublishStatus.PublishStatus.PUBLISH || var2_2.getPublishStatus() == UDDIPublishStatus.PublishStatus.PUBLISH_FAILED) break block53;
                                    }
                                    catch (WSDLException v0) {
                                        throw ac.a(v0);
                                    }
                                    var22_6 = ac.d;
                                    ac.a.log(Level.FINER, var22_6[3]);
                                    return;
                                }
                                try {
                                    if (var3_3.getPublishType() != UDDIProxiedServiceInfo.PublishType.ENDPOINT) {
                                        throw new IllegalStateException(ac.d[2]);
                                    }
                                }
                                catch (WSDLException v1) {
                                    throw ac.a(v1);
                                }
                                var4_9 = (UDDIRegistry)this.b.a.findByPrimaryKey(var3_3.getUddiRegistryGoid());
                                try {
                                    if (var4_9 == null) {
                                        throw new IllegalStateException(ac.d[12] + String.valueOf(var3_3.getUddiRegistryGoid()) + ac.d[16]);
                                    }
                                }
                                catch (WSDLException v2) {
                                    throw ac.a(v2);
                                }
                                if (!var4_9.isEnabled()) {
                                    var22_7 = ac.d;
                                    ac.a.log(Level.WARNING, var22_7[13] + String.valueOf(var3_3.getUddiRegistryGoid()) + var22_7[14]);
                                    return;
                                }
                                var5_10 = this.b.d.getCachedService(var3_3.getPublishedServiceGoid());
                                var6_11 = this.b.f.findByPublishedServiceGoid(var3_3.getPublishedServiceGoid());
                                try {
                                    if (var6_11 == null) {
                                        throw new IllegalStateException(ac.d[11] + String.valueOf(var3_3.getPublishedServiceGoid()) + ")");
                                    }
                                }
                                catch (WSDLException v3) {
                                    throw ac.a(v3);
                                }
                                try {
                                    if (var6_11.isUnderUddiControl()) {
                                        throw new IllegalStateException(ac.d[7]);
                                    }
                                }
                                catch (WSDLException v4) {
                                    throw ac.a(v4);
                                }
                                var22_8 = ac.d;
                                ac.a.log(Level.INFO, var22_8[10] + String.valueOf(var5_10.getGoid()) + var22_8[4] + String.valueOf(var4_9.getGoid()) + ")");
                                try {
                                    var7_12 = var5_10.parsedWsdl();
                                }
                                catch (WSDLException var8_13) {
                                    var22_8 = ac.d;
                                    ac.a.log(Level.WARNING, var22_8[6] + var5_10.getName() + var22_8[17] + String.valueOf(var5_10.getGoid()) + var22_8[1], ExceptionUtils.getDebugException((Throwable)var8_13));
                                    var2_2.setPublishStatus(UDDIPublishStatus.PublishStatus.DELETE);
                                    this.b.c.update((PersistentEntity)var2_2);
                                    return;
                                }
                                var8_14 = (UDDIRegistryAdmin.EndpointScheme)var3_3.getProperty(UDDIProxiedServiceInfo.GIF_SCHEME);
                                try {
                                    if (var8_14 == null) {
                                        throw new IllegalStateException(ac.d[18] + UDDIProxiedServiceInfo.GIF_SCHEME + ac.d[9] + var3_3.getId() + ")");
                                    }
                                }
                                catch (WSDLException v5) {
                                    throw ac.a(v5);
                                }
                                try {
                                    var9_15 = this.b.e.getEndpointForScheme(var8_14, var5_10.getGoid());
                                }
                                catch (UDDIHelper.EndpointNotDefinedException var10_16) {
                                    PublishingUDDITaskFactory.a(var2_2.getGoid(), var1_1, this.b.c);
                                    var1_1.logAndAudit((AuditDetailMessage)SystemMessages.UDDI_PUBLISH_ENDPOINT_FAILED, ExceptionUtils.getDebugException((Throwable)var10_16), new String[]{ExceptionUtils.getMessage((Throwable)var10_16)});
                                    return;
                                }
                                var10_17 = (Set)var3_3.getProperty(UDDIProxiedServiceInfo.ALL_ENDPOINT_PAIRS_KEY);
                                if (var10_17 == null) break block54;
                                try {
                                    block58: {
                                        if (var10_17.size() == 1) break block54;
                                        break block58;
                                        catch (WSDLException v6) {
                                            throw ac.a(v6);
                                        }
                                    }
                                    throw new IllegalStateException(ac.d[15]);
                                }
                                catch (WSDLException v7) {
                                    throw ac.a(v7);
                                }
                            }
                            var11_18 = (Set)var3_3.getProperty(UDDIProxiedServiceInfo.ALL_BINDING_TEMPLATE_KEYS);
                            if (var11_18 == null) break block55;
                            try {
                                block59: {
                                    if (var11_18.size() == 1) break block55;
                                    break block59;
                                    catch (WSDLException v8) {
                                        throw ac.a(v8);
                                    }
                                }
                                throw new IllegalStateException(ac.d[0]);
                            }
                            catch (WSDLException v9) {
                                throw ac.a(v9);
                            }
                        }
                        try {
                            v10 = var11_18 != null ? (String)var11_18.iterator().next() : null;
                        }
                        catch (WSDLException v11) {
                            throw ac.a(v11);
                        }
                        var12_19 = v10;
                        var13_20 = (String)var3_3.getProperty(UDDIProxiedServiceInfo.FUNCTIONAL_ENDPOINT_KEY);
                        var16_21 = null;
                        var17_22 = (Set)var3_3.getProperty(UDDIProxiedServiceInfo.KEYED_REFERENCES_CONFIG);
                        try {
                            var16_21 = new BusinessServicePublisher(var7_12, var5_10.getGoid().toHexString(), this.b.e.newUDDIClientConfig(var4_9));
                            var22_8 = ac.d;
                            var18_23 = ConfigFactory.getProperty((String)var22_8[8], null);
                            var19_25 = (Set)var3_3.getProperty(UDDIProxiedServiceInfo.KEYED_REFERENCES_RUNTIME);
                            var20_26 = var16_21.publishBindingTemplateGif(var6_11.getUddiServiceKey(), var6_11.getWsdlPortName(), var6_11.getWsdlPortBinding(), var6_11.getWsdlPortBindingNamespace(), var9_15, var12_19, var13_20, var18_23, var17_22, var19_25);
                            var15_27 = (String)var20_26.left;
                            var14_28 = (String)var20_26.right;
                        }
                        catch (UDDIException var18_24) {
                            try {
                                PublishingUDDITaskFactory.a(var2_2.getGoid(), var1_1, this.b.c);
                                var1_1.logAndAudit((AuditDetailMessage)SystemMessages.UDDI_PUBLISH_ENDPOINT_FAILED, var18_24, new String[]{ExceptionUtils.getMessage((Throwable)var18_24)});
                            }
                            catch (Throwable var21_29) {
                                ResourceUtils.closeQuietly(var16_21);
                                throw var21_29;
                            }
                            ResourceUtils.closeQuietly((Closeable)var16_21);
                            return;
                        }
                        ResourceUtils.closeQuietly((Closeable)var16_21);
                        var2_2.setPublishStatus(UDDIPublishStatus.PublishStatus.PUBLISHED);
                        this.b.c.update((PersistentEntity)var2_2);
                        var3_3 = (UDDIProxiedServiceInfo)this.b.b.findByPrimaryKey(this.c);
                        if (var3_3 == null) break block56;
                        var3_3.setProperty(UDDIProxiedServiceInfo.ALL_ENDPOINT_PAIRS_KEY, new HashSet<EndpointPair>(Arrays.asList(new EndpointPair[]{var9_15})));
                        if (var11_18 == null) ** GOTO lbl148
                        break block61;
                        catch (WSDLException v12) {
                            throw ac.a(v12);
                        }
                    }
                    try {
                        block62: {
                            if (((String)var11_18.iterator().next()).equals(var15_27)) break block57;
                            break block62;
                            catch (WSDLException v13) {
                                throw ac.a(v13);
                            }
                        }
                        var3_3.setProperty(UDDIProxiedServiceInfo.ALL_BINDING_TEMPLATE_KEYS, new HashSet<String>(Arrays.asList(new String[]{var15_27})));
                    }
                    catch (WSDLException v14) {
                        throw ac.a(v14);
                    }
                }
                try {
                    if (var13_20 == null) {
                        var3_3.setProperty(UDDIProxiedServiceInfo.FUNCTIONAL_ENDPOINT_KEY, (Object)var14_28);
                    }
                }
                catch (WSDLException v15) {
                    throw ac.a(v15);
                }
                var3_3.setProperty(UDDIProxiedServiceInfo.KEYED_REFERENCES_RUNTIME, (Object)var17_22);
                this.b.b.update((PersistentEntity)var3_3);
            }
            catch (ObjectModelException var3_4) {
                var1_1.logAndAudit((AuditDetailMessage)SystemMessages.UDDI_PUBLISH_ENDPOINT_FAILED, var3_4, new String[]{ac.d[5]});
                throw new UDDITaskFactory.UDDITaskException(ExceptionUtils.getMessage((Throwable)var3_4), var3_4);
            }
            catch (RuntimeException var3_5) {
                try {
                    var1_1.logAndAudit((AuditDetailMessage)SystemMessages.UDDI_PUBLISH_UNEXPECTED_ERROR, var3_5, new String[]{ExceptionUtils.getMessage((Throwable)var3_5)});
                    if (var2_2 != null) {
                        PublishingUDDITaskFactory.a(var1_1, var3_5, var2_2.getGoid(), this.b, true);
                    }
                }
                catch (WSDLException v16) {
                    throw ac.a(v16);
                }
            }
        }
    }

    /*
     * Unable to fully structure code
     */
    static {
        block10: {
            block9: {
                var5 = new String[19];
                var3_1 = 0;
                var2_2 = "O0l>\u0006\b\u001d`t[\u0018)F\f.cC\u00185D\u001c.\u007fE\u001b9\b\u0010ofNW!\b\u000bg~L\u001b%\b\u001ag~O\u001e.O,k}[\u001b!\\\u001d.{N\u000e@'>\u000b6.QX~bN\u0001)G\r}|RW0]\u001abyX\u001f%LXg~M\u00182E\u0019zyD\u0019`_\u0011b|\u000b\u0015%\b\u001ck|N\u0003%\b\u001e|\u007fFW\u0015l<GB[To>\u0010Z\u0017vyN\u0013\u0013M\nxyH\u0012\tF\u001ea0B\u0004`\\\u0010k0\\\u0005/F\u001f.dR\u0007%\u0006XCeX\u0003`J\u001d.\u007fMW4Q\bk0n9\u0004x7G^\u007fA[To>\u0010Z\u0017vyN\u0013\u0013M\nxyH\u0012\tF\u001ea0B\u0004`F\u0017z0B\u0019`\\\u0010k0[\u0002\"D\u0011}x\u000b\u00044I\fk>\u000b9/\\\u0010g~LW4GXj\u007f\u0018'0_\u0018`}<JY\u000b\u0005%O\u0011}dY\u000e`A\u001c.3\u0003.Jq_\u0016\"I\u000bk0N\u00052G\n.gC\u0012.\b\b{rG\u001e3@\u0011`w\u000b\u00072G\u0000w0N\u0019$X\u0017g~_Y![~J\u0015,MXz\u007f\u000b\u0007!Z\u000bk0|$\u0004dXh\u007fYW3M\nxyH\u0012`?MqE\u0019/\\X~eI\u001b)[\u0010.Wb1`M\u0016j`D\u001e.\\XyxN\u0019`[\u001d|fB\u0014%\b\u0011}0^\u0019$M\n.Eo3\t\b\u001ba~_\u0005/DV#{tO\u001en[\u0001}dB\u0019%\\ViyMY-I\u0016owN\u001a%F\f cR\u00044M\u0015()0E\u00184\b\u001eaeE\u0013`A\u0016.Eo3\tx\nahB\u0012${\u001d|fB\u0014%a\u0016h\u007f\u000bTh0^eI\u001b)[\u0010g~LW%F\u001c~\u007fB\u00194\b\u001e|\u007fFW\u0010]\u001abyX\u001f%LX]uY\u0001)K\u001d.yOWc\u0000;@\u007f\u000b\"\u0004l1]uY\u0001)K\u001dM\u007fE\u00032G\u0014.vD\u0002.LXh\u007fYW\u0010]\u001abyX\u001f%L+kb]\u001e#MXyy_\u001f`A\u001c.3\u0003\u0010[To>`z\u001diyX\u00032QX-8$MqE\u0019/\\X{`O\u00164MX[To>n\b-JTbW\u0012M\u001fgc_\u00059\b[&\r'0B\u0004`L\u0011}qI\u001b%L6O0l>\u0006\b\u001d`t[\u0018)F\f.cC\u00185D\u001c.\u007fE\u001b9\b\u0010ofNW!\b\u000bg~L\u001b%\b\u001d`t[\u0018)F\f.`J\u001e2\f'0E\u00184\b\u001eaeE\u0013n";
                var4_3 = "O0l>\u0006\b\u001d`t[\u0018)F\f.cC\u00185D\u001c.\u007fE\u001b9\b\u0010ofNW!\b\u000bg~L\u001b%\b\u001ag~O\u001e.O,k}[\u001b!\\\u001d.{N\u000e@'>\u000b6.QX~bN\u0001)G\r}|RW0]\u001abyX\u001f%LXg~M\u00182E\u0019zyD\u0019`_\u0011b|\u000b\u0015%\b\u001ck|N\u0003%\b\u001e|\u007fFW\u0015l<GB[To>\u0010Z\u0017vyN\u0013\u0013M\nxyH\u0012\tF\u001ea0B\u0004`\\\u0010k0\\\u0005/F\u001f.dR\u0007%\u0006XCeX\u0003`J\u001d.\u007fMW4Q\bk0n9\u0004x7G^\u007fA[To>\u0010Z\u0017vyN\u0013\u0013M\nxyH\u0012\tF\u001ea0B\u0004`F\u0017z0B\u0019`\\\u0010k0[\u0002\"D\u0011}x\u000b\u00044I\fk>\u000b9/\\\u0010g~LW4GXj\u007f\u0018'0_\u0018`}<JY\u000b\u0005%O\u0011}dY\u000e`A\u001c.3\u0003.Jq_\u0016\"I\u000bk0N\u00052G\n.gC\u0012.\b\b{rG\u001e3@\u0011`w\u000b\u00072G\u0000w0N\u0019$X\u0017g~_Y![~J\u0015,MXz\u007f\u000b\u0007!Z\u000bk0|$\u0004dXh\u007fYW3M\nxyH\u0012`?MqE\u0019/\\X~eI\u001b)[\u0010.Wb1`M\u0016j`D\u001e.\\XyxN\u0019`[\u001d|fB\u0014%\b\u0011}0^\u0019$M\n.Eo3\t\b\u001ba~_\u0005/DV#{tO\u001en[\u0001}dB\u0019%\\ViyMY-I\u0016owN\u001a%F\f cR\u00044M\u0015()0E\u00184\b\u001eaeE\u0013`A\u0016.Eo3\tx\nahB\u0012${\u001d|fB\u0014%a\u0016h\u007f\u000bTh0^eI\u001b)[\u0010g~LW%F\u001c~\u007fB\u00194\b\u001e|\u007fFW\u0010]\u001abyX\u001f%LX]uY\u0001)K\u001d.yOWc\u0000;@\u007f\u000b\"\u0004l1]uY\u0001)K\u001dM\u007fE\u00032G\u0014.vD\u0002.LXh\u007fYW\u0010]\u001abyX\u001f%L+kb]\u001e#MXyy_\u001f`A\u001c.3\u0003\u0010[To>`z\u001diyX\u00032QX-8$MqE\u0019/\\X{`O\u00164MX[To>n\b-JTbW\u0012M\u001fgc_\u00059\b[&\r'0B\u0004`L\u0011}qI\u001b%L6O0l>\u0006\b\u001d`t[\u0018)F\f.cC\u00185D\u001c.\u007fE\u001b9\b\u0010ofNW!\b\u000bg~L\u001b%\b\u001d`t[\u0018)F\f.`J\u001e2\f'0E\u00184\b\u001eaeE\u0013n".length();
                var1_4 = 60;
                var0_5 = -1;
lbl7:
                // 2 sources

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

                while (true) {
                    var5[var3_1++] = ac.a(v0, ac.a(v2));
                    if ((var0_5 += var1_4) < var4_3) {
                        var1_4 = var2_2.charAt(var0_5);
                        ** continue;
                    }
                    var2_2 = "pe\n\b4\u0012Qs\fZ!fZ";
                    var4_3 = "pe\n\b4\u0012Qs\fZ!fZ".length();
                    var1_4 = 2;
                    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++] = ac.a(v0, ac.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;
            }
        }
        ac.d = var5;
        ac.a = Logger.getLogger(ab.class.getName());
    }

    private static WSDLException a(WSDLException wSDLException) {
        return wSDLException;
    }

    private static char[] a(String string) {
        char[] cArray = string.toCharArray();
        if (cArray.length < 2) {
            cArray = cArray;
            cArray[0] = (char)(cArray[0] ^ 0x1B);
        }
        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 -> 109;
                    case 1 -> 115;
                    case 2 -> 72;
                    case 3 -> 20;
                    case 4 -> 35;
                    case 5 -> 75;
                    default -> 27;
                })));
                ++n3;
                n4 = n4;
            } while (n4 > n3);
        }
        return new String(cArray2).intern();
    }
}

