package com.l7tech.server.policy.bundle;

import com.l7tech.policy.bundle.BundleInfo;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.w3c.dom.Document;

public interface BundleResolver {
   String FILE_EXTENSION_XML = ".xml";

   @NotNull
   List<BundleInfo> getResultList();

   @Nullable
   Document getBundleItem(@NotNull String var1, @NotNull String var2, @NotNull BundleResolver.BundleItem var3, boolean var4) throws BundleResolver.UnknownBundleException, BundleResolver.BundleResolverException, BundleResolver.InvalidBundleException;

   Document getBundleItem(@NotNull String var1, @NotNull BundleResolver.BundleItem var2, boolean var3) throws BundleResolver.UnknownBundleException, BundleResolver.BundleResolverException, BundleResolver.InvalidBundleException;

   enum BundleItem {
      ASSERTION,
      CERTIFICATE,
      ENCAPSULATED_ASSERTION,
      FOLDER,
      MIGRATION_BUNDLE,
      POLICY,
      SERVICE;

      private String fileName;
      private String version;
      private static final String[] a;

      BundleItem(String var3) {
         this.fileName = var3;
      }

      public String getFileName() {
         if (StringUtils.isEmpty(this.version)) {
            String[] var1 = a;
            return this.fileName + var1[10];
         } else {
            return this.fileName + this.version + a[4];
         }
      }

      public void setVersion(String var1) {
         this.version = var1;
      }

      // $VF: Failed to inline enum fields
      // Please report this to the Vineflower issue tracker, at https://github.com/Vineflower/vineflower/issues with a copy of the class file (if you have the rights to distribute it!)
      static {
         String[] var5 = new String[16];
         int var3 = 0;
         String var2 = "M\u0018\u000f\b}{\u000fF\u001e\u0004\u001ey}id\u0019!\u0019vmln\tJ\u0004\u0010\tj}id\u0019\u0006[\u0018\u000f\u0005{p\u0004%\u000f\u000e\u0000\u0016N9 -HZUG67)\\VAX$&>L@OE\u0006[8/%[P\u000bH218QOIH67)\u0007X21:QJE\tJ$0)J]ID9\u0004%\u000f\u000e\u0000\u0006M8/(][\u0010F>$>Y]ID9<.MGDG2\u0015N\u0019\u0000\rhzug\u0016\u0017\t|Hsx\u0012\u0011\u0018qfn";
         int var4 = "M\u0018\u000f\b}{\u000fF\u001e\u0004\u001ey}id\u0019!\u0019vmln\tJ\u0004\u0010\tj}id\u0019\u0006[\u0018\u000f\u0005{p\u0004%\u000f\u000e\u0000\u0016N9 -HZUG67)\\VAX$&>L@OE\u0006[8/%[P\u000bH218QOIH67)\u0007X21:QJE\tJ$0)J]ID9\u0004%\u000f\u000e\u0000\u0006M8/(][\u0010F>$>Y]ID9<.MGDG2\u0015N\u0019\u0000\rhzug\u0016\u0017\t|Hsx\u0012\u0011\u0018qfn"
            .length();
         char var1 = 6;
         int var7 = -1;

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

            while (true) {
               String var9 = a(var10000, a(var10001));
               switch (var10002) {
                  case 0:
                     var5[var3++] = var9;
                     if ((var7 += var1) >= var4) {
                        a = var5;
                        String[] var8 = a;
                        ASSERTION = new BundleResolver.BundleItem(var8[2]);
                        CERTIFICATE = new BundleResolver.BundleItem(var8[14]);
                        ENCAPSULATED_ASSERTION = new BundleResolver.BundleItem(var8[13]);
                        FOLDER = new BundleResolver.BundleItem(var8[0]);
                        MIGRATION_BUNDLE = new BundleResolver.BundleItem(var8[1]);
                        POLICY = new BundleResolver.BundleItem(var8[3]);
                        SERVICE = new BundleResolver.BundleItem(var8[15]);
                        return;
                     }

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

                     var2 = "(rah\u001b\u001b\u0013?efo\u0006\u0018\u001e\u001fa`~\u0007/efm\u0006\u001d\u0012";
                     var4 = "(rah\u001b\u001b\u0013?efo\u0006\u0018\u001e\u001fa`~\u0007/efm\u0006\u001d\u0012".length();
                     var1 = 18;
                     var7 = -1;
               }

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

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

         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 -> 53;
               case 1 -> 73;
               case 2 -> 93;
               case 3 -> 82;
               case 4 -> 38;
               case 5 -> 55;
               default -> 62;
            });
         }

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

   class BundleResolverException extends Exception {
      static final long serialVersionUID = -2116602258259191788L;

      public BundleResolverException(String var1) {
         super(var1);
      }

      public BundleResolverException(Throwable var1) {
         super(var1);
      }
   }

   class InvalidBundleException extends Exception {
      static final long serialVersionUID = 5818759216757183343L;

      public InvalidBundleException(String var1) {
         super(var1);
      }

      public InvalidBundleException(Throwable var1) {
         super(var1);
      }

      public InvalidBundleException(String var1, Throwable var2) {
         super(var1, var2);
      }
   }

   class UnknownBundleException extends Exception {
      static final long serialVersionUID = 5940947991901225352L;

      public UnknownBundleException(String var1) {
         super(var1);
      }
   }

   class UnknownBundleItemException extends BundleResolver.UnknownBundleException {
      static final long serialVersionUID = 5559948403621251978L;

      public UnknownBundleItemException(String var1) {
         super(var1);
      }
   }
}
