/*
 * Decompiled with CFR 0.152.
 * 
 * Could not load the following classes:
 *  com.l7tech.gateway.common.Component
 *  com.l7tech.gateway.common.admin.UDDIRegistryAdmin$EndpointScheme
 *  com.l7tech.gateway.common.audit.Audit
 *  com.l7tech.gateway.common.audit.AuditDetailMessage
 *  com.l7tech.gateway.common.audit.SystemMessages
 *  com.l7tech.gateway.common.cluster.ClusterProperty
 *  com.l7tech.gateway.common.service.PublishedService
 *  com.l7tech.gateway.common.uddi.UDDIProxiedServiceInfo
 *  com.l7tech.gateway.common.uddi.UDDIPublishStatus
 *  com.l7tech.gateway.common.uddi.UDDIPublishStatus$PublishStatus
 *  com.l7tech.gateway.common.uddi.UDDIRegistry
 *  com.l7tech.gateway.common.uddi.UDDIServiceControl
 *  com.l7tech.objectmodel.FindException
 *  com.l7tech.objectmodel.Goid
 *  com.l7tech.objectmodel.ObjectModelException
 *  com.l7tech.objectmodel.PersistentEntity
 *  com.l7tech.objectmodel.SaveException
 *  com.l7tech.objectmodel.UpdateException
 *  com.l7tech.uddi.EndpointPair
 *  com.l7tech.uddi.UDDIBusinessService
 *  com.l7tech.uddi.UDDIClient
 *  com.l7tech.uddi.UDDIException
 *  com.l7tech.util.Config
 *  com.l7tech.util.ConfigFactory
 *  com.l7tech.util.ExceptionUtils
 *  com.l7tech.util.ResourceUtils
 *  com.l7tech.util.TimeUnit
 *  com.l7tech.util.Triple
 *  org.hibernate.SessionFactory
 *  org.springframework.beans.BeansException
 *  org.springframework.beans.factory.InitializingBean
 *  org.springframework.context.ApplicationContext
 *  org.springframework.context.ApplicationContextAware
 *  org.springframework.context.ApplicationEvent
 *  org.springframework.context.ApplicationEventPublisher
 *  org.springframework.context.ApplicationListener
 *  org.springframework.context.event.ApplicationEventMulticaster
 *  org.springframework.core.Ordered
 *  org.springframework.transaction.PlatformTransactionManager
 */
package com.l7tech.server.uddi;

import com.l7tech.gateway.common.Component;
import com.l7tech.gateway.common.admin.UDDIRegistryAdmin;
import com.l7tech.gateway.common.audit.Audit;
import com.l7tech.gateway.common.audit.AuditDetailMessage;
import com.l7tech.gateway.common.audit.SystemMessages;
import com.l7tech.gateway.common.cluster.ClusterProperty;
import com.l7tech.gateway.common.service.PublishedService;
import com.l7tech.gateway.common.uddi.UDDIProxiedServiceInfo;
import com.l7tech.gateway.common.uddi.UDDIPublishStatus;
import com.l7tech.gateway.common.uddi.UDDIRegistry;
import com.l7tech.gateway.common.uddi.UDDIServiceControl;
import com.l7tech.objectmodel.FindException;
import com.l7tech.objectmodel.Goid;
import com.l7tech.objectmodel.ObjectModelException;
import com.l7tech.objectmodel.PersistentEntity;
import com.l7tech.objectmodel.SaveException;
import com.l7tech.objectmodel.UpdateException;
import com.l7tech.server.audit.Auditor;
import com.l7tech.server.cluster.ClusterMaster;
import com.l7tech.server.event.EntityInvalidationEvent;
import com.l7tech.server.event.system.ReadyForMessages;
import com.l7tech.server.event.system.UDDISystemEvent;
import com.l7tech.server.service.ServiceCache;
import com.l7tech.server.uddi.SubscribeUDDIEvent;
import com.l7tech.server.uddi.UDDIBusinessServiceStatus;
import com.l7tech.server.uddi.UDDIBusinessServiceStatusManager;
import com.l7tech.server.uddi.UDDIHelper;
import com.l7tech.server.uddi.UDDIProxiedServiceInfoManager;
import com.l7tech.server.uddi.UDDIPublishStatusManager;
import com.l7tech.server.uddi.UDDIRegistryManager;
import com.l7tech.server.uddi.UDDIServiceControlManager;
import com.l7tech.server.uddi.UDDITaskFactory;
import com.l7tech.server.uddi.al;
import com.l7tech.server.uddi.am;
import com.l7tech.server.uddi.an;
import com.l7tech.server.uddi.ao;
import com.l7tech.server.uddi.ap;
import com.l7tech.server.uddi.f;
import com.l7tech.server.uddi.k;
import com.l7tech.server.uddi.n;
import com.l7tech.server.uddi.o;
import com.l7tech.server.uddi.q;
import com.l7tech.server.uddi.r;
import com.l7tech.uddi.EndpointPair;
import com.l7tech.uddi.UDDIBusinessService;
import com.l7tech.uddi.UDDIClient;
import com.l7tech.uddi.UDDIException;
import com.l7tech.util.Config;
import com.l7tech.util.ConfigFactory;
import com.l7tech.util.ExceptionUtils;
import com.l7tech.util.ResourceUtils;
import com.l7tech.util.TimeUnit;
import com.l7tech.util.Triple;
import java.io.Closeable;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.Timer;
import java.util.TimerTask;
import java.util.concurrent.atomic.AtomicReference;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.hibernate.SessionFactory;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.context.ApplicationEvent;
import org.springframework.context.ApplicationEventPublisher;
import org.springframework.context.ApplicationListener;
import org.springframework.context.event.ApplicationEventMulticaster;
import org.springframework.core.Ordered;
import org.springframework.transaction.PlatformTransactionManager;

public class UDDICoordinator
implements ApplicationContextAware,
InitializingBean,
Ordered {
    private static final Logger a;
    private static final String b;
    private static final long c;
    private static final String d;
    private final PlatformTransactionManager e;
    private final UDDIHelper f;
    private final UDDIRegistryManager g;
    private final UDDIProxiedServiceInfoManager h;
    private final UDDIPublishStatusManager i;
    private final UDDIServiceControlManager j;
    private final UDDIBusinessServiceStatusManager k;
    private final ServiceCache l;
    private final ClusterMaster m;
    private final Collection<UDDITaskFactory> n;
    private final Timer o;
    private final UDDITaskFactory.UDDITaskContext p;
    private final SessionFactory q;
    private final AtomicReference<Map<Goid, n>> r = new AtomicReference(Collections.emptyMap());
    private ApplicationEventPublisher s;
    private Audit t;
    private static final String[] u;

    public UDDICoordinator(PlatformTransactionManager platformTransactionManager, UDDIHelper uDDIHelper, UDDIRegistryManager uDDIRegistryManager, UDDIProxiedServiceInfoManager uDDIProxiedServiceInfoManager, UDDIPublishStatusManager uDDIPublishStatusManager, UDDIServiceControlManager uDDIServiceControlManager, UDDIBusinessServiceStatusManager uDDIBusinessServiceStatusManager, ServiceCache serviceCache, ClusterMaster clusterMaster, Timer timer, Collection<UDDITaskFactory> collection, Config config, SessionFactory sessionFactory) {
        this.e = platformTransactionManager;
        this.f = uDDIHelper;
        this.g = uDDIRegistryManager;
        this.l = serviceCache;
        this.m = clusterMaster;
        this.o = timer;
        this.n = collection;
        this.h = uDDIProxiedServiceInfoManager;
        this.j = uDDIServiceControlManager;
        this.k = uDDIBusinessServiceStatusManager;
        this.i = uDDIPublishStatusManager;
        this.q = sessionFactory;
        this.p = new k(this, config);
    }

    public boolean isNotificationServiceAvailable(Goid goid) {
        boolean bl2;
        try {
            bl2 = this.a(goid) != null;
        }
        catch (BeansException beansException) {
            throw UDDICoordinator.a((Exception)((Object)beansException));
        }
        return bl2;
    }

    public void notifyEvent(o o2) {
        this.o.schedule((TimerTask)new ap(this, o2), 0L);
    }

    public void handleEvent(o o2) throws UDDITaskFactory.UDDITaskException {
        for (UDDITaskFactory uDDITaskFactory : this.n) {
            UDDITaskFactory.UDDITask uDDITask = uDDITaskFactory.buildUDDITask(o2);
            try {
                if (uDDITask == null) continue;
                uDDITask.apply(this.p);
            }
            catch (UDDITaskFactory.UDDITaskException uDDITaskException) {
                throw UDDICoordinator.a(uDDITaskException);
            }
        }
    }

    public void afterPropertiesSet() throws Exception {
        this.a(false);
    }

    /*
     * Enabled force condition propagation
     * Lifted jumps to return sites
     */
    public void onApplicationEvent(ApplicationEvent applicationEvent) {
        block48: {
            if (applicationEvent instanceof EntityInvalidationEvent) {
                Object object;
                EntityInvalidationEvent entityInvalidationEvent;
                block45: {
                    block44: {
                        block42: {
                            entityInvalidationEvent = (EntityInvalidationEvent)applicationEvent;
                            try {
                                if (!UDDIRegistry.class.equals(entityInvalidationEvent.getEntityClass())) break block42;
                                this.a(true);
                                return;
                            }
                            catch (FindException findException) {
                                throw UDDICoordinator.a((Exception)((Object)findException));
                            }
                        }
                        if (UDDIPublishStatus.class.equals(entityInvalidationEvent.getEntityClass())) {
                            Goid[] goidArray = entityInvalidationEvent.getEntityIds();
                            char[] cArray = entityInvalidationEvent.getEntityOperations();
                            for (int i2 = 0; i2 < goidArray.length; ++i2) {
                                Goid goid = goidArray[i2];
                                char c10 = cArray[i2];
                                try {
                                    if ('C' != c10 && 'U' != c10) continue;
                                }
                                catch (FindException findException) {
                                    throw UDDICoordinator.a((Exception)((Object)findException));
                                }
                                try {
                                    UDDIProxiedServiceInfo uDDIProxiedServiceInfo;
                                    UDDIPublishStatus uDDIPublishStatus;
                                    block43: {
                                        uDDIPublishStatus = (UDDIPublishStatus)this.i.findByPrimaryKey(goid);
                                        if (uDDIPublishStatus == null) {
                                            return;
                                        }
                                        uDDIProxiedServiceInfo = (UDDIProxiedServiceInfo)this.h.findByPrimaryKey(uDDIPublishStatus.getUddiProxiedServiceInfoGoid());
                                        UDDIPublishStatus.PublishStatus publishStatus = uDDIPublishStatus.getPublishStatus();
                                        try {
                                            if (publishStatus == UDDIPublishStatus.PublishStatus.PUBLISH || publishStatus == UDDIPublishStatus.PublishStatus.DELETE) break block43;
                                            return;
                                        }
                                        catch (FindException findException) {
                                            throw UDDICoordinator.a((Exception)((Object)findException));
                                        }
                                    }
                                    UDDIServiceControl uDDIServiceControl = this.j.findByPublishedServiceGoid(uDDIProxiedServiceInfo.getPublishedServiceGoid());
                                    this.a(uDDIProxiedServiceInfo, uDDIPublishStatus, uDDIServiceControl);
                                    continue;
                                }
                                catch (FindException findException) {
                                    String[] stringArray = u;
                                    a.log(Level.WARNING, stringArray[26] + String.valueOf(goid) + ")");
                                    return;
                                }
                            }
                            return;
                        }
                        try {
                            if (!UDDIProxiedServiceInfo.class.equals(entityInvalidationEvent.getEntityClass())) break block44;
                            this.o.schedule((TimerTask)new al(this), 0L);
                            return;
                        }
                        catch (FindException findException) {
                            throw UDDICoordinator.a((Exception)((Object)findException));
                        }
                    }
                    try {
                        if (!UDDIServiceControl.class.equals(entityInvalidationEvent.getEntityClass())) break block45;
                        this.o.schedule((TimerTask)new al(this), 0L);
                        return;
                    }
                    catch (FindException findException) {
                        throw UDDICoordinator.a((Exception)((Object)findException));
                    }
                }
                if (PublishedService.class.equals(entityInvalidationEvent.getEntityClass())) {
                    boolean bl2 = PublishedService.class.equals(entityInvalidationEvent.getEntityClass());
                    Goid[] goidArray = entityInvalidationEvent.getEntityIds();
                    char[] cArray = entityInvalidationEvent.getEntityOperations();
                    for (int i3 = 0; i3 < goidArray.length; ++i3) {
                        PublishedService publishedService;
                        block46: {
                            UDDIPublishStatus uDDIPublishStatus;
                            UDDIProxiedServiceInfo uDDIProxiedServiceInfo;
                            Goid goid = goidArray[i3];
                            char c11 = cArray[i3];
                            if ('U' != c11) continue;
                            publishedService = this.l.getCachedService(goid);
                            try {
                                if (publishedService == null) {
                                    return;
                                }
                            }
                            catch (FindException findException) {
                                throw UDDICoordinator.a((Exception)((Object)findException));
                            }
                            try {
                                uDDIProxiedServiceInfo = this.h.findByPublishedServiceGoid(publishedService.getGoid());
                                if (uDDIProxiedServiceInfo == null) {
                                    return;
                                }
                                uDDIPublishStatus = this.i.findByProxiedSerivceInfoGoid(uDDIProxiedServiceInfo.getGoid());
                                if (uDDIPublishStatus == null) {
                                    return;
                                }
                            }
                            catch (FindException findException) {
                                String[] stringArray = u;
                                a.log(Level.WARNING, stringArray[13] + String.valueOf(publishedService.getGoid()) + stringArray[2]);
                                return;
                            }
                            try {
                                if (!uDDIProxiedServiceInfo.isUpdateProxyOnLocalChange()) {
                                    return;
                                }
                            }
                            catch (FindException findException) {
                                throw UDDICoordinator.a((Exception)((Object)findException));
                            }
                            try {
                                try {
                                    if (uDDIPublishStatus.getPublishStatus() != UDDIPublishStatus.PublishStatus.PUBLISH && uDDIPublishStatus.getPublishStatus() != UDDIPublishStatus.PublishStatus.PUBLISH_FAILED) break block46;
                                    return;
                                }
                                catch (FindException findException) {
                                    throw UDDICoordinator.a((Exception)((Object)findException));
                                }
                            }
                            catch (FindException findException) {
                                throw UDDICoordinator.a((Exception)((Object)findException));
                            }
                        }
                        this.o.schedule((TimerTask)new ao(this, publishedService.getGoid()), 0L);
                        return;
                    }
                    return;
                }
                if (!ClusterProperty.class.equals(entityInvalidationEvent.getEntityClass()) || !((object = entityInvalidationEvent.getSource()) instanceof ClusterProperty)) return;
                ClusterProperty clusterProperty = (ClusterProperty)object;
                try {
                    block47: {
                        try {
                            try {
                                if (clusterProperty.getName().equals(u[10]) || clusterProperty.getName().equals(u[16])) break block47;
                            }
                            catch (FindException findException) {
                                throw UDDICoordinator.a((Exception)((Object)findException));
                            }
                            if (!clusterProperty.getName().equals(u[17])) return;
                        }
                        catch (FindException findException) {
                            throw UDDICoordinator.a((Exception)((Object)findException));
                        }
                    }
                    this.o.schedule((TimerTask)new am(this), 0L);
                    return;
                }
                catch (FindException findException) {
                    throw UDDICoordinator.a((Exception)((Object)findException));
                }
            }
            try {
                try {
                    if (!(applicationEvent instanceof ReadyForMessages)) return;
                    if (!this.m.isMaster()) break block48;
                }
                catch (FindException findException) {
                    throw UDDICoordinator.a((Exception)((Object)findException));
                }
                this.a(Collections.emptyMap(), this.r.get(), true);
            }
            catch (FindException findException) {
                throw UDDICoordinator.a((Exception)((Object)findException));
            }
        }
        long l2 = ConfigFactory.getLongProperty((String)d, (long)900000L);
        this.o.schedule((TimerTask)new an(this), l2, l2);
        this.o.schedule((TimerTask)new am(this), l2, l2);
    }

    public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
        this.s = applicationContext;
        this.t = new Auditor(this, applicationContext, a);
        ApplicationEventMulticaster applicationEventMulticaster = (ApplicationEventMulticaster)applicationContext.getBean(u[28], ApplicationEventMulticaster.class);
        applicationEventMulticaster.addApplicationListener((ApplicationListener)new f(this));
    }

    public int getOrder() {
        return 0;
    }

    private PublishedService a(Goid goid) {
        PublishedService publishedService = null;
        Iterator<PublishedService> iterator = this.l.getInternalServices().iterator();
        while (iterator.hasNext()) {
            PublishedService publishedService2;
            block13: {
                boolean bl2;
                block12: {
                    block11: {
                        String[] stringArray = u;
                        publishedService2 = iterator.next();
                        if (!stringArray[21].equals(publishedService2.getWsdlUrl())) continue;
                        UDDIProxiedServiceInfo uDDIProxiedServiceInfo = null;
                        try {
                            uDDIProxiedServiceInfo = this.h.findByPublishedServiceGoid(publishedService2.getGoid());
                        }
                        catch (FindException findException) {
                            stringArray = u;
                            a.log(Level.WARNING, stringArray[7], findException);
                        }
                        try {
                            try {
                                if (uDDIProxiedServiceInfo == null || !Goid.equals((Goid)uDDIProxiedServiceInfo.getUddiRegistryGoid(), (Goid)goid)) break block11;
                            }
                            catch (FindException findException) {
                                throw UDDICoordinator.a((Exception)((Object)findException));
                            }
                            bl2 = true;
                            break block12;
                        }
                        catch (FindException findException) {
                            throw UDDICoordinator.a((Exception)((Object)findException));
                        }
                    }
                    bl2 = false;
                }
                boolean bl3 = bl2;
                try {
                    try {
                        if (!bl3) continue;
                        if (publishedService == null) break block13;
                    }
                    catch (FindException findException) {
                        throw UDDICoordinator.a((Exception)((Object)findException));
                    }
                    a.log(Level.WARNING, u[22] + String.valueOf(goid));
                }
                catch (FindException findException) {
                    throw UDDICoordinator.a((Exception)((Object)findException));
                }
            }
            publishedService = publishedService2;
        }
        return publishedService;
    }

    private String b(Goid goid) {
        String string = null;
        PublishedService publishedService = this.a(goid);
        if (publishedService != null) {
            string = this.f.getExternalUrlForService(publishedService.getGoid());
        }
        return string;
    }

    /*
     * WARNING - Removed try catching itself - possible behaviour change.
     */
    private String c(Goid goid) {
        String string;
        block13: {
            string = null;
            n n2 = this.r.get().get(goid);
            try {
                if (n2 == null || !n2.b.isEnabled()) break block13;
            }
            catch (UDDIException uDDIException) {
                throw UDDICoordinator.a((Exception)((Object)uDDIException));
            }
            PublishedService publishedService = this.a(goid);
            if (publishedService != null) {
                UDDIClient uDDIClient = null;
                try {
                    uDDIClient = n2.a();
                    UDDIProxiedServiceInfo uDDIProxiedServiceInfo = this.h.findByPublishedServiceGoid(publishedService.getGoid());
                    Set set = uDDIProxiedServiceInfo.getProxiedServices();
                    HashSet<String> hashSet = new HashSet<String>();
                    for (Object object : set) {
                        hashSet.add(object.getUddiServiceKey());
                    }
                    List list = uDDIClient.getUDDIBusinessServices(hashSet, false);
                    if (list.size() == 1) {
                        Object object;
                        object = ((UDDIBusinessService)list.get(0)).getServiceKey();
                        String[] stringArray = new String[2];
                        String[] stringArray2 = u;
                        stringArray[0] = stringArray2[25];
                        stringArray[1] = stringArray2[6];
                        string = uDDIClient.getBindingKeyForService((String)object, Arrays.asList(stringArray));
                    } else {
                        String[] stringArray = u;
                        a.warning(stringArray[9]);
                    }
                }
                catch (UDDIException uDDIException) {
                    String[] stringArray = u;
                    a.log(Level.WARNING, stringArray[23] + n2.d() + stringArray[30] + ExceptionUtils.getMessage((Throwable)uDDIException), ExceptionUtils.getDebugException((Throwable)uDDIException));
                }
                catch (FindException findException) {
                    String[] stringArray = u;
                    a.log(Level.WARNING, stringArray[15] + n2.d() + stringArray[32] + ExceptionUtils.getMessage((Throwable)findException), ExceptionUtils.getDebugException((Throwable)findException));
                }
                finally {
                    ResourceUtils.closeQuietly((Closeable)uDDIClient);
                }
            }
        }
        return string;
    }

    private synchronized void a(boolean bl2) {
        HashMap<Goid, n> hashMap;
        block9: {
            Object object2;
            hashMap = new HashMap<Goid, n>();
            try {
                for (Object object2 : this.g.findAll()) {
                    hashMap.put(object2.getGoid(), new n(this, this.f, (UDDIRegistry)object2, this.o));
                }
            }
            catch (FindException findException) {
                a.log(Level.WARNING, u[4], findException);
            }
            Map<Goid, n> map = this.r.get();
            for (Object object3 : map.values()) {
                ((n)object3).c();
            }
            try {
                if (!bl2 || !this.m.isMaster()) break block9;
            }
            catch (FindException findException) {
                throw UDDICoordinator.a((Exception)((Object)findException));
            }
            this.a(map, hashMap, false);
            object2 = this.a(map, hashMap);
            if (!object2.isEmpty()) {
                Object object3;
                this.o.schedule((TimerTask)new an(this), 0L);
                object3 = object2.iterator();
                while (object3.hasNext()) {
                    Goid goid = (Goid)object3.next();
                    this.notifyEvent(new r(goid));
                }
            }
        }
        this.r.set(Collections.unmodifiableMap(hashMap));
        for (Object object3 : hashMap.values()) {
            ((n)object3).b();
        }
    }

    private void a(Map<Goid, n> map, Map<Goid, n> map2, boolean bl2) {
        for (Goid goid : map2.keySet()) {
            n n2;
            n n3;
            block17: {
                n3 = map.get(goid);
                n2 = map2.get(goid);
                try {
                    block18: {
                        try {
                            try {
                                try {
                                    try {
                                        if (!n2.b.isMonitoringEnabled()) break block17;
                                        if (n3 == null) break block18;
                                    }
                                    catch (BeansException beansException) {
                                        throw UDDICoordinator.a((Exception)((Object)beansException));
                                    }
                                    if (!n3.b.isMonitoringEnabled()) break block18;
                                }
                                catch (BeansException beansException) {
                                    throw UDDICoordinator.a((Exception)((Object)beansException));
                                }
                                if (n2.b.getMonitoringFrequency() != n3.b.getMonitoringFrequency()) break block18;
                            }
                            catch (BeansException beansException) {
                                throw UDDICoordinator.a((Exception)((Object)beansException));
                            }
                            if (n2.b.isSubscribeForNotifications() == n3.b.isSubscribeForNotifications()) break block17;
                        }
                        catch (BeansException beansException) {
                            throw UDDICoordinator.a((Exception)((Object)beansException));
                        }
                    }
                    this.notifyEvent(new SubscribeUDDIEvent(goid, SubscribeUDDIEvent.Type.SUBSCRIBE, bl2));
                    continue;
                }
                catch (BeansException beansException) {
                    throw UDDICoordinator.a((Exception)((Object)beansException));
                }
            }
            try {
                try {
                    try {
                        if (n2.b.isMonitoringEnabled() || n3 == null) continue;
                    }
                    catch (BeansException beansException) {
                        throw UDDICoordinator.a((Exception)((Object)beansException));
                    }
                    if (!n3.b.isMonitoringEnabled()) continue;
                }
                catch (BeansException beansException) {
                    throw UDDICoordinator.a((Exception)((Object)beansException));
                }
                this.notifyEvent(new SubscribeUDDIEvent(goid, SubscribeUDDIEvent.Type.UNSUBSCRIBE));
            }
            catch (BeansException beansException) {
                throw UDDICoordinator.a((Exception)((Object)beansException));
            }
        }
    }

    private Collection<Goid> a(Map<Goid, n> map, Map<Goid, n> map2) {
        ArrayList<Goid> arrayList = new ArrayList<Goid>();
        if (!map.isEmpty()) {
            for (Map.Entry<Goid, n> entry : map2.entrySet()) {
                n n2 = map.get(entry.getKey());
                try {
                    try {
                        try {
                            if (n2 == null || n2.b.getVersion() == entry.getValue().b.getVersion()) continue;
                        }
                        catch (BeansException beansException) {
                            throw UDDICoordinator.a((Exception)((Object)beansException));
                        }
                        if (!entry.getValue().b.isEnabled()) continue;
                    }
                    catch (BeansException beansException) {
                        throw UDDICoordinator.a((Exception)((Object)beansException));
                    }
                    arrayList.add(entry.getValue().b.getGoid());
                }
                catch (BeansException beansException) {
                    throw UDDICoordinator.a((Exception)((Object)beansException));
                }
            }
        }
        return arrayList;
    }

    /*
     * Exception decompiling
     */
    private void d(Goid var1_1) throws ObjectModelException {
        /*
         * This method has failed to decompile.  When submitting a bug report, please provide this stack trace, and (if you hold appropriate legal rights) the relevant class file.
         * 
         * org.benf.cfr.reader.util.ConfusedCFRException: Back jump on a try block [egrp 6[TRYBLOCK] [5, 4, 7 : 172->185)] java.lang.Exception
         *     at org.benf.cfr.reader.bytecode.analysis.opgraph.Op02WithProcessedDataAndRefs.insertExceptionBlocks(Op02WithProcessedDataAndRefs.java:2283)
         *     at org.benf.cfr.reader.bytecode.CodeAnalyser.getAnalysisInner(CodeAnalyser.java:415)
         *     at org.benf.cfr.reader.bytecode.CodeAnalyser.getAnalysisOrWrapFail(CodeAnalyser.java:278)
         *     at org.benf.cfr.reader.bytecode.CodeAnalyser.getAnalysis(CodeAnalyser.java:201)
         *     at org.benf.cfr.reader.entities.attributes.AttributeCode.analyse(AttributeCode.java:94)
         *     at org.benf.cfr.reader.entities.Method.analyse(Method.java:531)
         *     at org.benf.cfr.reader.entities.ClassFile.analyseMid(ClassFile.java:1055)
         *     at org.benf.cfr.reader.entities.ClassFile.analyseTop(ClassFile.java:942)
         *     at org.benf.cfr.reader.Driver.doJarVersionTypes(Driver.java:257)
         *     at org.benf.cfr.reader.Driver.doJar(Driver.java:139)
         *     at org.benf.cfr.reader.CfrDriverImpl.analyse(CfrDriverImpl.java:76)
         *     at org.benf.cfr.reader.Main.main(Main.java:54)
         */
        throw new IllegalStateException("Decompilation failed");
    }

    private void a() throws ObjectModelException {
        Object object2;
        Collection collection = this.h.findAll();
        HashMap<Goid, Object> hashMap = new HashMap<Goid, Object>();
        for (Object object2 : collection) {
            hashMap.put(object2.getGoid(), object2);
        }
        Collection collection2 = this.i.findAll();
        object2 = collection2.iterator();
        while (object2.hasNext()) {
            UDDIPublishStatus uDDIPublishStatus = (UDDIPublishStatus)object2.next();
            UDDIPublishStatus.PublishStatus publishStatus = uDDIPublishStatus.getPublishStatus();
            try {
                try {
                    if (publishStatus == UDDIPublishStatus.PublishStatus.CANNOT_PUBLISH || publishStatus == UDDIPublishStatus.PublishStatus.CANNOT_DELETE) continue;
                }
                catch (ObjectModelException objectModelException) {
                    throw UDDICoordinator.a((Exception)((Object)objectModelException));
                }
                if (publishStatus == UDDIPublishStatus.PublishStatus.PUBLISHED) continue;
            }
            catch (ObjectModelException objectModelException) {
                throw UDDICoordinator.a((Exception)((Object)objectModelException));
            }
            UDDIProxiedServiceInfo uDDIProxiedServiceInfo = (UDDIProxiedServiceInfo)hashMap.get(uDDIPublishStatus.getUddiProxiedServiceInfoGoid());
            String[] stringArray = u;
            a.log(Level.FINE, stringArray[14] + String.valueOf(uDDIProxiedServiceInfo.getPublishedServiceGoid()) + stringArray[24] + publishStatus.toString());
            UDDIServiceControl uDDIServiceControl = this.j.findByPublishedServiceGoid(uDDIProxiedServiceInfo.getPublishedServiceGoid());
            this.a(uDDIProxiedServiceInfo, uDDIPublishStatus, uDDIServiceControl);
        }
    }

    private void b() throws ObjectModelException {
        String[] stringArray = u;
        boolean bl2 = ConfigFactory.getBooleanProperty((String)stringArray[11], (boolean)true);
        try {
            if (!bl2) {
                return;
            }
        }
        catch (UDDIHelper.EndpointNotDefinedException endpointNotDefinedException) {
            throw UDDICoordinator.a(endpointNotDefinedException);
        }
        Collection collection = this.h.findAll();
        for (UDDIProxiedServiceInfo uDDIProxiedServiceInfo : collection) {
            Set<EndpointPair> set;
            Object object;
            UDDIPublishStatus uDDIPublishStatus;
            block17: {
                block16: {
                    EndpointPair endpointPair;
                    uDDIPublishStatus = this.i.findByProxiedSerivceInfoGoid(uDDIProxiedServiceInfo.getGoid());
                    if (uDDIPublishStatus.getPublishStatus() != UDDIPublishStatus.PublishStatus.PUBLISHED) continue;
                    Boolean bl3 = (Boolean)uDDIProxiedServiceInfo.getProperty(UDDIProxiedServiceInfo.IS_GIF);
                    try {
                        if (bl3 == null || !bl3.booleanValue()) break block16;
                    }
                    catch (UDDIHelper.EndpointNotDefinedException endpointNotDefinedException) {
                        throw UDDICoordinator.a(endpointNotDefinedException);
                    }
                    object = (UDDIRegistryAdmin.EndpointScheme)uDDIProxiedServiceInfo.getProperty(UDDIProxiedServiceInfo.GIF_SCHEME);
                    try {
                        if (object == null) {
                            a.log(Level.WARNING, u[1] + String.valueOf(uDDIProxiedServiceInfo.getPublishedServiceGoid()) + u[19]);
                            continue;
                        }
                    }
                    catch (UDDIHelper.EndpointNotDefinedException endpointNotDefinedException) {
                        throw UDDICoordinator.a(endpointNotDefinedException);
                    }
                    try {
                        endpointPair = this.f.getEndpointForScheme((UDDIRegistryAdmin.EndpointScheme)object, uDDIProxiedServiceInfo.getPublishedServiceGoid());
                    }
                    catch (UDDIHelper.EndpointNotDefinedException endpointNotDefinedException) {
                        this.t.logAndAudit((AuditDetailMessage)SystemMessages.UDDI_GIF_SCHEME_NOT_AVAILABLE, new String[]{object.toString(), ExceptionUtils.getMessage((Throwable)endpointNotDefinedException)});
                        continue;
                    }
                    set = new HashSet<EndpointPair>(Arrays.asList(endpointPair));
                    break block17;
                }
                set = this.f.getAllExternalEndpointAndWsdlUrls(uDDIProxiedServiceInfo.getPublishedServiceGoid());
            }
            object = (Set)uDDIProxiedServiceInfo.getProperty(UDDIProxiedServiceInfo.ALL_ENDPOINT_PAIRS_KEY);
            try {
                if (set.equals(object)) continue;
                a.log(Level.INFO, u[29] + String.valueOf(uDDIProxiedServiceInfo.getPublishedServiceGoid()) + u[27]);
                uDDIPublishStatus.setPublishStatus(UDDIPublishStatus.PublishStatus.PUBLISH);
                this.i.update((PersistentEntity)uDDIPublishStatus);
            }
            catch (UDDIHelper.EndpointNotDefinedException endpointNotDefinedException) {
                throw UDDICoordinator.a(endpointNotDefinedException);
            }
        }
        ApplicationEventPublisher applicationEventPublisher = this.s;
        try {
            if (applicationEventPublisher != null) {
                applicationEventPublisher.publishEvent((ApplicationEvent)new UDDISystemEvent(this, Component.GW_UDDI_SERVICE, UDDISystemEvent.Action.CHECKING_ENDPOINTS));
            }
        }
        catch (UDDIHelper.EndpointNotDefinedException endpointNotDefinedException) {
            throw UDDICoordinator.a(endpointNotDefinedException);
        }
    }

    private void c() throws ObjectModelException {
        Goid goid;
        Goid goid2;
        Object object2;
        Collection collection = this.h.findAll();
        Collection collection2 = this.j.findAll();
        Collection collection3 = this.k.findAll();
        HashMap<Triple<Goid, Goid, String>, UDDIBusinessServiceStatus> hashMap = new HashMap<Triple<Goid, Goid, String>, UDDIBusinessServiceStatus>();
        for (Object object2 : collection) {
            if (object2.getProxiedServices() == null) continue;
            for (Object object3 : object2.getProxiedServices()) {
                try {
                    if (object3.getUddiServiceKey() == null) continue;
                    hashMap.put(new Triple((Object)object2.getUddiRegistryGoid(), (Object)object2.getPublishedServiceGoid(), (Object)object3.getUddiServiceKey()), null);
                }
                catch (ObjectModelException objectModelException) {
                    throw UDDICoordinator.a((Exception)((Object)objectModelException));
                }
            }
        }
        for (Object object2 : collection2) {
            hashMap.put(new Triple((Object)object2.getUddiRegistryGoid(), (Object)object2.getPublishedServiceGoid(), (Object)object2.getUddiServiceKey()), null);
        }
        HashMap hashMap2 = new HashMap();
        object2 = hashMap.keySet();
        for (Object object3 : collection3) {
            Object object4;
            block24: {
                block25: {
                    object4 = new Triple((Object)((UDDIBusinessServiceStatus)((Object)object3)).getUddiRegistryGoid(), (Object)((UDDIBusinessServiceStatus)((Object)object3)).getPublishedServiceGoid(), (Object)((UDDIBusinessServiceStatus)((Object)object3)).getUddiServiceKey());
                    try {
                        try {
                            try {
                                if (object2.contains(object4)) break block24;
                                if (((UDDIBusinessServiceStatus)((Object)object3)).getUddiMetricsReferenceStatus() != UDDIBusinessServiceStatus.Status.NONE) break block25;
                            }
                            catch (ObjectModelException objectModelException) {
                                throw UDDICoordinator.a((Exception)((Object)objectModelException));
                            }
                            if (((UDDIBusinessServiceStatus)((Object)object3)).getUddiPolicyStatus() != UDDIBusinessServiceStatus.Status.NONE) break block25;
                        }
                        catch (ObjectModelException objectModelException) {
                            throw UDDICoordinator.a((Exception)((Object)objectModelException));
                        }
                        a.info(u[20] + String.valueOf(object4) + ".");
                        this.k.delete((PersistentEntity)object3);
                        continue;
                    }
                    catch (ObjectModelException objectModelException) {
                        throw UDDICoordinator.a((Exception)((Object)objectModelException));
                    }
                }
                hashMap.put((Triple<Goid, Goid, String>)object4, (UDDIBusinessServiceStatus)((Object)object3));
                this.a(hashMap, hashMap2, ((UDDIBusinessServiceStatus)((Object)object3)).getPublishedServiceGoid(), ((UDDIBusinessServiceStatus)((Object)object3)).getUddiRegistryGoid(), ((UDDIBusinessServiceStatus)((Object)object3)).getUddiServiceKey(), ((UDDIBusinessServiceStatus)((Object)object3)).getUddiServiceName(), false, false, null);
                continue;
            }
            hashMap.put((Triple<Goid, Goid, String>)object4, (UDDIBusinessServiceStatus)((Object)object3));
        }
        boolean bl2 = ConfigFactory.getBooleanProperty((String)u[3], (boolean)true);
        for (Object object4 : collection) {
            boolean bl3;
            boolean bl4;
            block27: {
                block26: {
                    if (object4.getProxiedServices() == null) continue;
                    goid2 = object4.getPublishedServiceGoid();
                    goid = object4.getUddiRegistryGoid();
                    bl4 = object4.isMetricsEnabled();
                    try {
                        try {
                            if (!object4.isPublishWsPolicyEnabled() || !bl2) break block26;
                        }
                        catch (ObjectModelException objectModelException) {
                            throw UDDICoordinator.a((Exception)((Object)objectModelException));
                        }
                        bl3 = true;
                        break block27;
                    }
                    catch (ObjectModelException objectModelException) {
                        throw UDDICoordinator.a((Exception)((Object)objectModelException));
                    }
                }
                bl3 = false;
            }
            boolean bl5 = bl3;
            String string = this.f.getExternalPolicyUrlForService(object4.getPublishedServiceGoid(), object4.isPublishWsPolicyFull(), object4.isPublishWsPolicyInlined());
            for (String string2 : object4.getProxiedServices()) {
                if (string2.getUddiServiceKey() == null) continue;
                String string3 = string2.getUddiServiceKey();
                String string4 = string2.getUddiServiceName();
                this.a(hashMap, hashMap2, goid2, goid, string3, string4, bl4, bl5, string);
            }
        }
        for (Object object4 : collection2) {
            boolean bl6;
            boolean bl7;
            String string;
            String string5;
            String string2;
            block29: {
                block28: {
                    goid2 = object4.getPublishedServiceGoid();
                    goid = object4.getUddiRegistryGoid();
                    string5 = object4.getUddiServiceKey();
                    string = object4.getUddiServiceName();
                    bl7 = object4.isMetricsEnabled();
                    try {
                        try {
                            if (!object4.isPublishWsPolicyEnabled() || !bl2) break block28;
                        }
                        catch (ObjectModelException objectModelException) {
                            throw UDDICoordinator.a((Exception)((Object)objectModelException));
                        }
                        bl6 = true;
                        break block29;
                    }
                    catch (ObjectModelException objectModelException) {
                        throw UDDICoordinator.a((Exception)((Object)objectModelException));
                    }
                }
                bl6 = false;
            }
            boolean bl8 = bl6;
            string2 = this.f.getExternalPolicyUrlForService(object4.getPublishedServiceGoid(), object4.isPublishWsPolicyFull(), object4.isPublishWsPolicyInlined());
            this.a(hashMap, hashMap2, goid2, goid, string5, string, bl7, bl8, string2);
        }
        for (Object object4 : hashMap2.values()) {
            this.notifyEvent((o)object4);
        }
    }

    private void a(Map<Triple<Goid, Goid, String>, UDDIBusinessServiceStatus> map, Map<Goid, r> map2, Goid goid, Goid goid2, String string, String string2, boolean bl2, boolean bl3, String string3) throws SaveException, UpdateException {
        block7: {
            UDDIBusinessServiceStatus uDDIBusinessServiceStatus;
            Triple triple;
            block8: {
                triple = new Triple((Object)goid2, (Object)goid, (Object)string);
                boolean bl4 = false;
                uDDIBusinessServiceStatus = map.get(triple);
                if (uDDIBusinessServiceStatus == null) {
                    bl4 = true;
                    uDDIBusinessServiceStatus = this.a(goid, goid2, string, string2);
                }
                if (this.a(uDDIBusinessServiceStatus, bl2)) {
                    bl4 = true;
                }
                if (this.a(uDDIBusinessServiceStatus, bl3, string3)) {
                    bl4 = true;
                    map2.put(goid2, new r(goid2));
                }
                try {
                    try {
                        if (!bl4) break block7;
                        if (!Goid.isDefault((Goid)uDDIBusinessServiceStatus.getGoid())) break block8;
                    }
                    catch (SaveException saveException) {
                        throw UDDICoordinator.a((Exception)((Object)saveException));
                    }
                    a.info(u[0] + String.valueOf(triple) + ".");
                    this.k.save((PersistentEntity)uDDIBusinessServiceStatus);
                    break block7;
                }
                catch (SaveException saveException) {
                    throw UDDICoordinator.a((Exception)((Object)saveException));
                }
            }
            a.info(u[31] + String.valueOf(triple) + ".");
            this.k.update((PersistentEntity)uDDIBusinessServiceStatus);
        }
    }

    private boolean a(UDDIBusinessServiceStatus uDDIBusinessServiceStatus, boolean bl2) {
        boolean bl3;
        block8: {
            block7: {
                bl3 = false;
                try {
                    try {
                        if (!bl2) break block7;
                        if (uDDIBusinessServiceStatus.getUddiMetricsReferenceStatus() == UDDIBusinessServiceStatus.Status.PUBLISHED) break block8;
                    }
                    catch (BeansException beansException) {
                        throw UDDICoordinator.a((Exception)((Object)beansException));
                    }
                    if (uDDIBusinessServiceStatus.getUddiMetricsReferenceStatus() == UDDIBusinessServiceStatus.Status.PUBLISH) break block8;
                }
                catch (BeansException beansException) {
                    throw UDDICoordinator.a((Exception)((Object)beansException));
                }
                bl3 = true;
                uDDIBusinessServiceStatus.setUddiMetricsReferenceStatus(UDDIBusinessServiceStatus.Status.PUBLISH);
                break block8;
            }
            if (uDDIBusinessServiceStatus.getUddiMetricsReferenceStatus() == UDDIBusinessServiceStatus.Status.PUBLISHED) {
                bl3 = true;
                uDDIBusinessServiceStatus.setUddiMetricsReferenceStatus(UDDIBusinessServiceStatus.Status.DELETE);
            } else if (uDDIBusinessServiceStatus.getUddiMetricsReferenceStatus() == UDDIBusinessServiceStatus.Status.PUBLISH) {
                bl3 = true;
                uDDIBusinessServiceStatus.setUddiMetricsReferenceStatus(UDDIBusinessServiceStatus.Status.NONE);
            }
        }
        return bl3;
    }

    private boolean a(UDDIBusinessServiceStatus uDDIBusinessServiceStatus, boolean bl2, String string) {
        boolean bl3;
        block17: {
            block15: {
                block18: {
                    bl3 = false;
                    try {
                        try {
                            block16: {
                                try {
                                    try {
                                        try {
                                            try {
                                                if (!bl2 || string == null) break block15;
                                            }
                                            catch (BeansException beansException) {
                                                throw UDDICoordinator.a((Exception)((Object)beansException));
                                            }
                                            if (string.isEmpty()) break block15;
                                        }
                                        catch (BeansException beansException) {
                                            throw UDDICoordinator.a((Exception)((Object)beansException));
                                        }
                                        if (uDDIBusinessServiceStatus.getUddiPolicyStatus() != UDDIBusinessServiceStatus.Status.PUBLISHED) break block16;
                                    }
                                    catch (BeansException beansException) {
                                        throw UDDICoordinator.a((Exception)((Object)beansException));
                                    }
                                    if (string.equals(uDDIBusinessServiceStatus.getUddiPolicyUrl())) break block17;
                                }
                                catch (BeansException beansException) {
                                    throw UDDICoordinator.a((Exception)((Object)beansException));
                                }
                            }
                            if (uDDIBusinessServiceStatus.getUddiPolicyStatus() == UDDIBusinessServiceStatus.Status.PUBLISH) break block18;
                        }
                        catch (BeansException beansException) {
                            throw UDDICoordinator.a((Exception)((Object)beansException));
                        }
                        if (string.equals(uDDIBusinessServiceStatus.getUddiPolicyPublishUrl())) break block17;
                    }
                    catch (BeansException beansException) {
                        throw UDDICoordinator.a((Exception)((Object)beansException));
                    }
                }
                bl3 = true;
                uDDIBusinessServiceStatus.setUddiPolicyStatus(UDDIBusinessServiceStatus.Status.PUBLISH);
                uDDIBusinessServiceStatus.setUddiPolicyPublishUrl(string);
                break block17;
            }
            if (uDDIBusinessServiceStatus.getUddiPolicyStatus() == UDDIBusinessServiceStatus.Status.PUBLISHED) {
                bl3 = true;
                uDDIBusinessServiceStatus.setUddiPolicyStatus(UDDIBusinessServiceStatus.Status.DELETE);
            } else if (uDDIBusinessServiceStatus.getUddiPolicyStatus() == UDDIBusinessServiceStatus.Status.PUBLISH) {
                bl3 = true;
                uDDIBusinessServiceStatus.setUddiPolicyStatus(UDDIBusinessServiceStatus.Status.NONE);
                uDDIBusinessServiceStatus.setUddiPolicyPublishUrl(null);
            }
        }
        return bl3;
    }

    private UDDIBusinessServiceStatus a(Goid goid, Goid goid2, String string, String string2) {
        UDDIBusinessServiceStatus uDDIBusinessServiceStatus = new UDDIBusinessServiceStatus();
        uDDIBusinessServiceStatus.setPublishedServiceGoid(goid);
        uDDIBusinessServiceStatus.setUddiRegistryGoid(goid2);
        uDDIBusinessServiceStatus.setUddiServiceKey(string);
        uDDIBusinessServiceStatus.setUddiServiceName(string2);
        uDDIBusinessServiceStatus.setUddiMetricsReferenceStatus(UDDIBusinessServiceStatus.Status.NONE);
        uDDIBusinessServiceStatus.setUddiPolicyStatus(UDDIBusinessServiceStatus.Status.NONE);
        return uDDIBusinessServiceStatus;
    }

    private void a(UDDIProxiedServiceInfo uDDIProxiedServiceInfo, UDDIPublishStatus uDDIPublishStatus, UDDIServiceControl uDDIServiceControl) {
        q q2 = new q(uDDIProxiedServiceInfo, uDDIPublishStatus, uDDIServiceControl);
        this.notifyEvent(q2);
    }

    /*
     * Unable to fully structure code
     */
    static {
        block10: {
            block9: {
                var5 = new String[34];
                var3_1 = 0;
                var2_2 = "e\u000bBwr1\u0002AYEcu1\u0002C\nT6u=\u001eP\u0010Ds&+\u0018G\rRe&>\u0003TYPe\u0016Rzbx\u0002I\r\u0007po6\b\u0006\u001cIrv7\u0005H\r\u0007b\u007f(\t\u0006\u001fHd&\u001f%`YWcd4\u0005U\u0011Br&=\u0002B\tH\u007fh,L@\u0016U6v-\u000eJ\u0010T~c<LU\u001cU`o;\t\u0006Z\u000f\u0002\u000fY\u0012S\u001dC\u007f(9\u0019R\u0016Usv-\u000eJ\u0010T~\u001ec\u000bUytx\u0000I\u0018C\u007fh?Ls=c_&*\tA\u0010Tbt1\tUWQe\u0016Rzbx\u0002I\r\u0007cv<\rR\u001c\u0007CB\u001c%v\u000bHno=\bu\u001cU`o;\to\u0017Ay(x/G\u0017Iyrx\u0018T\u0010@qc*Ls=c_&*\tW\fNdc<Lq*cZ&-\u001cB\u0018Ss\u0005N\rSfu\"c\u000bUytx\nO\u0017C\u007fh?LS\u001dC\u007f&(\u001eI\u0001Nsbx\u001fC\u000bQ\u007fe=.@\u0010Ks<wCy&Tea1\u0002R\u001cUxg4CS\u001dC\u007fY+\u0019D\u000bx`5\u0007\u001fC\u000bQ\u007fe=BQ\nCzIe\u0016Rzbx\u0002I\r\u0007po6\b\u0006\fI\u007fw-\t\u0006\u001bReo6\tU\n\u0007ec*\u001aO\u001aB6`7\u001e\u0006\u0017Hbo>\u0005E\u0018S\u007fi6LJ\u0010Tbc6\tTYTst.\u0005E\u001c\t\u0010E\u0015Rer=\u001e\b\u0011Her6\rK\u001c\u0012S\u001dC\u007f(9\u0019R\u0016Usv-\u000eJ\u0010T~#\b\tRtj1\u001fN\u001cCFt7\u0014_4F\u007fh,\tH\u0018Iuc\u001e\u001eC\bRsh;\u0015<v\u000bHtj=\u0001\u0006\u0015Hym1\u0002AYRf&\r(b0wdi \u0005C\u001dtst.\u0005E\u001cnx`7LQ\u0010S~&+\tT\u000fNucx\u0005BY\u0004>Ie\u000bBwr1\u0002AYB`c6\u0018\u0006\rH6s(\bG\rB6v-\u000eJ\u0010T~c<LV\u000bHn\u007fx\u001fC\u000bQ\u007fe=LO\u0017Ay&1\u0002\u0006,cROvLu\u001cU`o;\t\u0006Z\u000f5e\u0016Rzbx\u0002I\r\u0007qc,LD\u0010Iro6\u000b\u0006\u0012Bo&>\u0003TYTst.\u0005E\u001c\u0007pt7\u0001\u0006\u000bBqo+\u0018T\u0000\u00071\u0010E\u0015Rer=\u001e\b\u0011Sbv\b\u0003T\r\u0011E\u0015Rer=\u001e\b\u0011Sbv+<I\u000bS8e\u0016Rzbx\u0002I\r\u0007fg*\u001fCYS~cx;u=k6`7\u001e\u0006\tRtj1\u001fN\u001cC6u=\u001eP\u0010Ds&/\u0005R\u0011\u0007\u007fb{D\u0003\u000fW\u0007%b\u001cKsr1\u0002AYEcu1\u0002C\nT6u=\u001eP\u0010Ds&+\u0018G\rRe&>\u0003TY.@\u0010Ks<wCy&Tea1\u0002R\u001cUxg4CS\u001dC\u007fY+\u0019D\u000bx`5\u0007\u001fC\u000bQ\u007fe=BQ\nCz4`\u0016Rxbx\u0001S\u0015S\u007fv4\t\u0006\nBdp1\u000fC\n\u0007pi*LR\u0011B6u9\u0001CYrRB\u0011LT\u001c@\u007fu,\u001e_C\u00075e\u0016Rzbx\u0002I\r\u0007qc,LD\u0010Iro6\u000b\u0006\u0012Bo&>\u0003TYTst.\u0005E\u001c\u0007pt7\u0001\u0006\u000bBqo+\u0018T\u0000\u00071\f\u000fYNx&+\u0018G\rRe&\u0004N\rSf3e\u0016Rzbx\u0002I\r\u0007po6\b\u0006\u001aUsg,\tBYrRB\u0011<S\u001bK\u007fu0?R\u0018Scux\u001bO\rO6o<L\u0005Q=\u000fYSy&*\tV\fEzo+\u0004\u0006\rH6S\u001c(oYAyj4\u0003Q\u0010Iq&;\u0004G\u0017@s&,\u0003\u0006\u001c_bc*\u0002G\u0015\u0007sh<\u001cI\u0010Ibu\u001bG\tWzo;\rR\u0010HxC.\tH\rjcj,\u0005E\u0018Tbc*\u0012u\u001cSbo6\u000b\u0006\nBdp1\u000fCY\u0004>\u0003\u0001C\u0007%s\tCwr1\u0002AYEcu1\u0002C\nT6u=\u001eP\u0010Ds&+\u0018G\rRe&>\u0003TY";
                var4_3 = "e\u000bBwr1\u0002AYEcu1\u0002C\nT6u=\u001eP\u0010Ds&+\u0018G\rRe&>\u0003TYPe\u0016Rzbx\u0002I\r\u0007po6\b\u0006\u001cIrv7\u0005H\r\u0007b\u007f(\t\u0006\u001fHd&\u001f%`YWcd4\u0005U\u0011Br&=\u0002B\tH\u007fh,L@\u0016U6v-\u000eJ\u0010T~c<LU\u001cU`o;\t\u0006Z\u000f\u0002\u000fY\u0012S\u001dC\u007f(9\u0019R\u0016Usv-\u000eJ\u0010T~\u001ec\u000bUytx\u0000I\u0018C\u007fh?Ls=c_&*\tA\u0010Tbt1\tUWQe\u0016Rzbx\u0002I\r\u0007cv<\rR\u001c\u0007CB\u001c%v\u000bHno=\bu\u001cU`o;\to\u0017Ay(x/G\u0017Iyrx\u0018T\u0010@qc*Ls=c_&*\tW\fNdc<Lq*cZ&-\u001cB\u0018Ss\u0005N\rSfu\"c\u000bUytx\nO\u0017C\u007fh?LS\u001dC\u007f&(\u001eI\u0001Nsbx\u001fC\u000bQ\u007fe=.@\u0010Ks<wCy&Tea1\u0002R\u001cUxg4CS\u001dC\u007fY+\u0019D\u000bx`5\u0007\u001fC\u000bQ\u007fe=BQ\nCzIe\u0016Rzbx\u0002I\r\u0007po6\b\u0006\fI\u007fw-\t\u0006\u001bReo6\tU\n\u0007ec*\u001aO\u001aB6`7\u001e\u0006\u0017Hbo>\u0005E\u0018S\u007fi6LJ\u0010Tbc6\tTYTst.\u0005E\u001c\t\u0010E\u0015Rer=\u001e\b\u0011Her6\rK\u001c\u0012S\u001dC\u007f(9\u0019R\u0016Usv-\u000eJ\u0010T~#\b\tRtj1\u001fN\u001cCFt7\u0014_4F\u007fh,\tH\u0018Iuc\u001e\u001eC\bRsh;\u0015<v\u000bHtj=\u0001\u0006\u0015Hym1\u0002AYRf&\r(b0wdi \u0005C\u001dtst.\u0005E\u001cnx`7LQ\u0010S~&+\tT\u000fNucx\u0005BY\u0004>Ie\u000bBwr1\u0002AYB`c6\u0018\u0006\rH6s(\bG\rB6v-\u000eJ\u0010T~c<LV\u000bHn\u007fx\u001fC\u000bQ\u007fe=LO\u0017Ay&1\u0002\u0006,cROvLu\u001cU`o;\t\u0006Z\u000f5e\u0016Rzbx\u0002I\r\u0007qc,LD\u0010Iro6\u000b\u0006\u0012Bo&>\u0003TYTst.\u0005E\u001c\u0007pt7\u0001\u0006\u000bBqo+\u0018T\u0000\u00071\u0010E\u0015Rer=\u001e\b\u0011Sbv\b\u0003T\r\u0011E\u0015Rer=\u001e\b\u0011Sbv+<I\u000bS8e\u0016Rzbx\u0002I\r\u0007fg*\u001fCYS~cx;u=k6`7\u001e\u0006\tRtj1\u001fN\u001cC6u=\u001eP\u0010Ds&/\u0005R\u0011\u0007\u007fb{D\u0003\u000fW\u0007%b\u001cKsr1\u0002AYEcu1\u0002C\nT6u=\u001eP\u0010Ds&+\u0018G\rRe&>\u0003TY.@\u0010Ks<wCy&Tea1\u0002R\u001cUxg4CS\u001dC\u007fY+\u0019D\u000bx`5\u0007\u001fC\u000bQ\u007fe=BQ\nCz4`\u0016Rxbx\u0001S\u0015S\u007fv4\t\u0006\nBdp1\u000fC\n\u0007pi*LR\u0011B6u9\u0001CYrRB\u0011LT\u001c@\u007fu,\u001e_C\u00075e\u0016Rzbx\u0002I\r\u0007qc,LD\u0010Iro6\u000b\u0006\u0012Bo&>\u0003TYTst.\u0005E\u001c\u0007pt7\u0001\u0006\u000bBqo+\u0018T\u0000\u00071\f\u000fYNx&+\u0018G\rRe&\u0004N\rSf3e\u0016Rzbx\u0002I\r\u0007po6\b\u0006\u001aUsg,\tBYrRB\u0011<S\u001bK\u007fu0?R\u0018Scux\u001bO\rO6o<L\u0005Q=\u000fYSy&*\tV\fEzo+\u0004\u0006\rH6S\u001c(oYAyj4\u0003Q\u0010Iq&;\u0004G\u0017@s&,\u0003\u0006\u001c_bc*\u0002G\u0015\u0007sh<\u001cI\u0010Ibu\u001bG\tWzo;\rR\u0010HxC.\tH\rjcj,\u0005E\u0018Tbc*\u0012u\u001cSbo6\u000b\u0006\nBdp1\u000fCY\u0004>\u0003\u0001C\u0007%s\tCwr1\u0002AYEcu1\u0002C\nT6u=\u001eP\u0010Ds&+\u0018G\rRe&>\u0003TY".length();
                var1_4 = 37;
                var0_5 = -1;
lbl7:
                // 2 sources

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

                while (true) {
                    var5[var3_1++] = UDDICoordinator.a(v0, UDDICoordinator.a(v2));
                    if ((var0_5 += var1_4) < var4_3) {
                        var1_4 = var2_2.charAt(var0_5);
                        ** continue;
                    }
                    var2_2 = "E\u0007C-\u0001R\u000e|.+\\\u0007^\u000b|1yZ\u0014X\u0011|7xL\u000b\u0013\u000e76nA\u0001N >'}F\u0017M*<6yZ\u0014\\\u000f";
                    var4_3 = "E\u0007C-\u0001R\u000e|.+\\\u0007^\u000b|1yZ\u0014X\u0011|7xL\u000b\u0013\u000e76nA\u0001N >'}F\u0017M*<6yZ\u0014\\\u000f".length();
                    var1_4 = 3;
                    var0_5 = -1;
lbl22:
                    // 2 sources

                    while (true) {
                        v0 = 90;
                        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++] = UDDICoordinator.a(v0, UDDICoordinator.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;
            }
        }
        UDDICoordinator.u = var5;
        UDDICoordinator.b = UDDICoordinator.u[8];
        UDDICoordinator.a = Logger.getLogger(UDDICoordinator.class.getName());
        var0_6 = UDDICoordinator.u;
        UDDICoordinator.c = ConfigFactory.getLongProperty((String)var0_6[33], (long)TimeUnit.MINUTES.toMillis(1L));
        UDDICoordinator.d = UDDICoordinator.class.getName() + var0_6[12];
    }

    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] ^ 0x72);
        }
        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 -> 56;
                    case 1 -> 103;
                    case 2 -> 57;
                    case 3 -> 8;
                    case 4 -> 24;
                    case 5 -> 70;
                    default -> 114;
                })));
                ++n3;
                n4 = n4;
            } while (n4 > n3);
        }
        return new String(cArray2).intern();
    }
}

