package com.l7tech.server.uddi;

import com.l7tech.gateway.common.audit.SystemMessages;
import com.l7tech.gateway.common.uddi.UDDIRegistry;
import com.l7tech.objectmodel.Goid;
import com.l7tech.objectmodel.ObjectModelException;
import com.l7tech.uddi.UDDIClient;
import com.l7tech.uddi.UDDIException;
import com.l7tech.util.ExceptionUtils;
import com.l7tech.util.ResourceUtils;
import java.util.logging.Level;
import java.util.logging.Logger;

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

   private ah(SubscriptionUDDITaskFactory var1, Goid var2) {
      this.b = var1;
      this.c = var2;
   }

   @Override
   public void apply(UDDITaskFactory.UDDITaskContext var1) {
      Logger var10000 = a;
      String var10001 = String.valueOf(this.c);
      String[] var7 = d;
      var10000.fine(var7[2] + var10001 + ".");

      try {
         UDDIRegistry var2 = (UDDIRegistry)this.b.c.findByPrimaryKey(this.c);

         label98: {
            try {
               if (var2 != null && var2.isEnabled()) {
                  break label98;
               }
            } catch (ObjectModelException var15) {
               throw a(var15);
            }

            try {
               if (var2 == null) {
                  a.log(Level.WARNING, d[5] + this.c + d[8]);
                  return;
               }
            } catch (ObjectModelException var14) {
               throw a(var14);
            }

            String var10002 = SubscriptionUDDITaskFactory.a(var2);
            var7 = d;
            throw new UDDIException(var7[1] + var10002 + var7[9]);
         }

         UDDIRegistrySubscription var3 = this.b.e.findByUDDIRegistryGoid(this.c);
         if (var3 != null) {
            String var4 = var3.getSubscriptionKey();
            if (var4 != null) {
               var10000 = a;
               String var27 = SubscriptionUDDITaskFactory.a(var2);
               var7 = d;
               var10000.info(var7[3] + var4 + var7[7] + var27 + ".");
               UDDIClient var5 = null;

               try {
                  var5 = this.b.d.newUDDIClient(var2);
                  var5.deleteSubscription(var4);
               } finally {
                  ResourceUtils.closeQuietly(var5);
               }
            } else {
               var10000 = a;
               Level var25 = Level.WARNING;
               String var28 = SubscriptionUDDITaskFactory.a(var2);
               var7 = d;
               var10000.log(var25, var7[11] + var28 + var7[4]);
            }

            this.b.e.delete(var3);
         } else {
            var10000 = a;
            Level var26 = Level.WARNING;
            String var29 = SubscriptionUDDITaskFactory.a(var2);
            var7 = d;
            var10000.log(var26, var7[0] + var29 + var7[10]);
         }
      } catch (ObjectModelException var16) {
         var1.logAndAudit(SystemMessages.UDDI_SUBSCRIPTION_UNSUBSCRIBE_FAILED, var16, d[6] + this.c + ".");
      } catch (UDDIException var17) {
         var1.logAndAudit(SystemMessages.UDDI_SUBSCRIPTION_UNSUBSCRIBE_FAILED, ExceptionUtils.getDebugException(var17), ExceptionUtils.getMessage(var17));
      }
   }

   static {
      String[] var5 = new String[12];
      int var3 = 0;
      String var2 = "uF\u001d\u0004\u001a.@PN\u001d\u000eU)\u0015TT\u0010\u0018\u001c*\u0014_H\u001dJ\u001c4\u0006YU\u001e\u000b\u00013\u000fX\u0007\u0015\u0005\u0007z\u0012S@\u001a\u0019\u0001(\u0019\u0016\u000ecc7#U(\u0005QN\u0000\u001e\u0007#@)fU\u001c\t\u0010)\u0013_I\u0014J\u00004\u0013CE\u0000\t\u00073\u0002S\u0007\u0015\u0005\u0007z5rc:J\u0007?\u0007_T\u0007\u0018\fz\u0017rB\u001f\u000f\u00013\u000eQ\u0007\u0000\u001f\u0017)\u0003DN\u0003\u001e\u001c5\u000e\u0016\u0000\u001f\u001a\u0007\u0006\u0004\u0006/\u0002ED\u0001\u0003\u0005.\tYIS\u0004\u001a.@FB\u0001\f\u001a(\rSC]\u000fcc7#'?\u0007_T\u0007\u0018\fzH\u00157rF\u0007\u000b\u0017;\u0013S\u0007\u0016\u0018\u00075\u0012\u0016P\u001b\u000f\u001bz\u0010YK\u001f\u0003\u001b=@ER\u0011\u0019\u0016(\tFS\u001a\u0005\u001bz\u0006YUS\u0018\u0010=\tES\u0001\u0013Uy\u0014\u0011\u0007\u0015\u0005\u0007z5rc:J\u0007?\u0007_T\u0007\u0018\fz\u001f\u001f\u0007\u001d\u0005\u0001z\u0006YR\u001d\u000eU<\u000fD\u0007\u0006\u0004\u0006/\u0002ED\u0001\u0003\u0005.\tYI]\r\u0016N\u0000J\u00113\u0013WE\u001f\u000f\u0011t";
      int var4 = "uF\u001d\u0004\u001a.@PN\u001d\u000eU)\u0015TT\u0010\u0018\u001c*\u0014_H\u001dJ\u001c4\u0006YU\u001e\u000b\u00013\u000fX\u0007\u0015\u0005\u0007z\u0012S@\u001a\u0019\u0001(\u0019\u0016\u000ecc7#U(\u0005QN\u0000\u001e\u0007#@)fU\u001c\t\u0010)\u0013_I\u0014J\u00004\u0013CE\u0000\t\u00073\u0002S\u0007\u0015\u0005\u0007z5rc:J\u0007?\u0007_T\u0007\u0018\fz\u0017rB\u001f\u000f\u00013\u000eQ\u0007\u0000\u001f\u0017)\u0003DN\u0003\u001e\u001c5\u000e\u0016\u0000\u001f\u001a\u0007\u0006\u0004\u0006/\u0002ED\u0001\u0003\u0005.\tYIS\u0004\u001a.@FB\u0001\f\u001a(\rSC]\u000fcc7#'?\u0007_T\u0007\u0018\fzH\u00157rF\u0007\u000b\u0017;\u0013S\u0007\u0016\u0018\u00075\u0012\u0016P\u001b\u000f\u001bz\u0010YK\u001f\u0003\u001b=@ER\u0011\u0019\u0016(\tFS\u001a\u0005\u001bz\u0006YUS\u0018\u0010=\tES\u0001\u0013Uy\u0014\u0011\u0007\u0015\u0005\u0007z5rc:J\u0007?\u0007_T\u0007\u0018\fz\u001f\u001f\u0007\u001d\u0005\u0001z\u0006YR\u001d\u000eU<\u000fD\u0007\u0006\u0004\u0006/\u0002ED\u0001\u0003\u0005.\tYI]\r\u0016N\u0000J\u00113\u0013WE\u001f\u000f\u0011t"
         .length();
      char var1 = '2';
      int var7 = -1;

      label24:
      while (true) {
         byte var10000 = 127;
         String var10001 = var2.substring(++var7, var7 + var1);
         byte var10002 = -1;

         while (true) {
            String var8 = a(var10000, a(var10001));
            switch (var10002) {
               case 0:
                  var5[var3++] = var8;
                  if ((var7 += var1) >= var4) {
                     d = var5;
                     a = Logger.getLogger(ah.class.getName());
                     return;
                  }

                  var1 = var2.charAt(var7);
                  break;
               default:
                  var5[var3++] = var8;
                  if ((var7 += var1) < var4) {
                     var1 = var2.charAt(var7);
                     continue label24;
                  }

                  var2 = "\u0007\u001a\u001b\u0019\u001b2\u001fXY\u001c\u001e\u00183\u0014DTN\u0019\u00073][_\u001c\u0011\u00075\u0010N^@&fS\u001d\u0004\u0001)\u001a\u000bI\u001b\u0015\u001b$\u000fBJ\u001a\u001e\u0007)]@_\u0017W\u000e(\u000f\u000bH\u000b\u0010\u00014\tYCN";
                  var4 = "\u0007\u001a\u001b\u0019\u001b2\u001fXY\u001c\u001e\u00183\u0014DTN\u0019\u00073][_\u001c\u0011\u00075\u0010N^@&fS\u001d\u0004\u0001)\u001a\u000bI\u001b\u0015\u001b$\u000fBJ\u001a\u001e\u0007)]@_\u0017W\u000e(\u000f\u000bH\u000b\u0010\u00014\tYCN"
                     .length();
                  var1 = 31;
                  var7 = -1;
            }

            var10000 = 98;
            var10001 = var2.substring(++var7, var7 + var1);
            var10002 = 0;
         }
      }
   }

   private static ObjectModelException a(ObjectModelException var0) {
      return var0;
   }

   private static char[] a(String var0) {
      char[] var10000 = var0.toCharArray();
      if (var10000.length < 2) {
         var10000[0] = (char)(var10000[0] ^ 31);
      }

      return var10000;
   }

   private static String a(int var0, char[] var1) {
      int var10003 = var1.length;
      int var10002 = var0;
      char[] var10001 = var1;
      int var10000 = var10003;

      for (int var2 = 0; var10000 > var2; var2++) {
         var10001[var2] = (char)(var10001[var2] ^ var10002 ^ switch (var2 % 7) {
            case 0 -> 73;
            case 1 -> 88;
            case 2 -> 12;
            case 3 -> 21;
            case 4 -> 10;
            case 5 -> 37;
            default -> 31;
         });
      }

      return new String(var10001).intern();
   }
}
