package com.l7tech.gateway.pm2.graphql.helper;

import com.l7tech.common.io.DocumentReferenceProcessor.ResourceResolver;
import com.l7tech.gateway.common.service.ServiceAdmin;
import com.l7tech.gateway.pm2.graphql.beans.entity.WsdlFileDTO;
import com.l7tech.util.ExceptionUtils;
import com.l7tech.wsdl.ResourceTrackingWSDLLocator;
import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.logging.Logger;
import org.xml.sax.EntityResolver;

public class GatewayResourceResolver implements ResourceResolver {
   private static final Logger a;
   private final String b;
   private final String c;
   private final EntityResolver d;
   private final Map<String, String> e;
   private final ServiceAdmin f;
   private static final String[] g;

   public GatewayResourceResolver(String var1, String var2, EntityResolver var3, List<WsdlFileDTO> var4, ServiceAdmin var5) {
      this.b = var1;
      this.c = var2;
      this.d = var3;
      this.f = var5;
      this.e = new HashMap<>();
      if (var4 != null) {
         for (WsdlFileDTO var7 : var4) {
            this.e.put(var7.getUri(), var7.getContent());
         }
      }
   }

   public String resolve(String param1) throws IOException {
      // $VF: Couldn't be decompiled
      // 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!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 000: getstatic com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.a Ljava/util/logging/Logger;
      // 003: getstatic java/util/logging/Level.INFO Ljava/util/logging/Level;
      // 006: aload 1
      // 007: getstatic com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.g [Ljava/lang/String;
      // 00a: astore 8
      // 00c: aload 8
      // 00e: bipush 11
      // 010: aaload
      // 011: swap
      // 012: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001" ]
      // 017: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;)V
      // 01a: aconst_null
      // 01b: astore 2
      // 01c: aload 0
      // 01d: getfield com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.b Ljava/lang/String;
      // 020: aload 1
      // 021: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 024: ifeq 037
      // 027: aload 0
      // 028: aload 0
      // 029: getfield com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.b Ljava/lang/String;
      // 02c: aload 0
      // 02d: getfield com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.c Ljava/lang/String;
      // 030: invokevirtual com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.a (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
      // 033: astore 2
      // 034: goto 13a
      // 037: aload 0
      // 038: getfield com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.e Ljava/util/Map;
      // 03b: invokeinterface java/util/Map.isEmpty ()Z 1
      // 040: ifne 08c
      // 043: aload 0
      // 044: aload 1
      // 045: invokevirtual com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.a (Ljava/lang/String;)Ljava/lang/String;
      // 048: astore 3
      // 049: aload 3
      // 04a: ifnull 089
      // 04d: aload 0
      // 04e: getfield com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.e Ljava/util/Map;
      // 051: aload 3
      // 052: invokeinterface java/util/Map.containsKey (Ljava/lang/Object;)Z 2
      // 057: ifeq 089
      // 05a: goto 05e
      // 05d: athrow
      // 05e: aload 0
      // 05f: getfield com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.e Ljava/util/Map;
      // 062: aload 3
      // 063: invokeinterface java/util/Map.get (Ljava/lang/Object;)Ljava/lang/Object; 2
      // 068: checkcast java/lang/String
      // 06b: astore 4
      // 06d: aload 4
      // 06f: ifnull 089
      // 072: aload 4
      // 074: invokevirtual java/lang/String.trim ()Ljava/lang/String;
      // 077: invokevirtual java/lang/String.isEmpty ()Z
      // 07a: ifne 089
      // 07d: goto 081
      // 080: athrow
      // 081: aload 0
      // 082: aload 1
      // 083: aload 4
      // 085: invokevirtual com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.a (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
      // 088: astore 2
      // 089: goto 13a
      // 08c: aload 1
      // 08d: getstatic com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.g [Ljava/lang/String;
      // 090: astore 8
      // 092: aload 8
      // 094: bipush 6
      // 096: aaload
      // 097: invokevirtual java/lang/String.startsWith (Ljava/lang/String;)Z
      // 09a: ifeq 100
      // 09d: aload 0
      // 09e: getfield com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.f Lcom/l7tech/gateway/common/service/ServiceAdmin;
      // 0a1: aload 1
      // 0a2: invokeinterface com/l7tech/gateway/common/service/ServiceAdmin.resolveWsdlTarget (Ljava/lang/String;)Ljava/lang/String; 2
      // 0a7: astore 3
      // 0a8: aload 3
      // 0a9: ifnull 0c1
      // 0ac: aload 3
      // 0ad: invokevirtual java/lang/String.trim ()Ljava/lang/String;
      // 0b0: invokevirtual java/lang/String.isEmpty ()Z
      // 0b3: ifne 0c1
      // 0b6: goto 0ba
      // 0b9: athrow
      // 0ba: aload 0
      // 0bb: aload 1
      // 0bc: aload 3
      // 0bd: invokevirtual com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.a (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
      // 0c0: astore 2
      // 0c1: goto 13a
      // 0c4: astore 3
      // 0c5: getstatic com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.a Ljava/util/logging/Logger;
      // 0c8: getstatic java/util/logging/Level.WARNING Ljava/util/logging/Level;
      // 0cb: aload 1
      // 0cc: getstatic com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.g [Ljava/lang/String;
      // 0cf: astore 8
      // 0d1: aload 8
      // 0d3: bipush 14
      // 0d5: aaload
      // 0d6: swap
      // 0d7: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001" ]
      // 0dc: aload 3
      // 0dd: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
      // 0e0: new java/io/IOException
      // 0e3: dup
      // 0e4: aload 1
      // 0e5: aload 3
      // 0e6: invokestatic com/l7tech/util/ExceptionUtils.getMessage (Ljava/lang/Throwable;)Ljava/lang/String;
      // 0e9: aload 8
      // 0eb: bipush 12
      // 0ed: aaload
      // 0ee: dup_x2
      // 0ef: pop
      // 0f0: aload 8
      // 0f2: bipush 8
      // 0f4: aaload
      // 0f5: swap
      // 0f6: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001\u0001\u0001" ]
      // 0fb: aload 3
      // 0fc: invokespecial java/io/IOException.<init> (Ljava/lang/String;Ljava/lang/Throwable;)V
      // 0ff: athrow
      // 100: aload 1
      // 101: getstatic com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.g [Ljava/lang/String;
      // 104: bipush 1
      // 105: aaload
      // 106: invokevirtual java/lang/String.startsWith (Ljava/lang/String;)Z
      // 109: ifeq 13a
      // 10c: aload 0
      // 10d: getfield com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.b Ljava/lang/String;
      // 110: getstatic com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.g [Ljava/lang/String;
      // 113: bipush 9
      // 115: aaload
      // 116: invokevirtual java/lang/String.startsWith (Ljava/lang/String;)Z
      // 119: ifeq 13a
      // 11c: goto 120
      // 11f: athrow
      // 120: getstatic com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.a Ljava/util/logging/Logger;
      // 123: getstatic java/util/logging/Level.WARNING Ljava/util/logging/Level;
      // 126: aload 1
      // 127: getstatic com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.g [Ljava/lang/String;
      // 12a: bipush 7
      // 12c: aaload
      // 12d: swap
      // 12e: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001" ]
      // 133: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;)V
      // 136: goto 13a
      // 139: athrow
      // 13a: aload 2
      // 13b: ifnonnull 1ad
      // 13e: aload 0
      // 13f: aload 1
      // 140: invokevirtual com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.a (Ljava/lang/String;)Ljava/lang/String;
      // 143: astore 3
      // 144: aload 0
      // 145: getfield com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.e Ljava/util/Map;
      // 148: invokeinterface java/util/Map.isEmpty ()Z 1
      // 14d: ifne 190
      // 150: aload 3
      // 151: ifnull 190
      // 154: goto 158
      // 157: athrow
      // 158: new java/io/FileNotFoundException
      // 15b: dup
      // 15c: aload 1
      // 15d: aload 3
      // 15e: aload 0
      // 15f: getfield com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.e Ljava/util/Map;
      // 162: invokeinterface java/util/Map.keySet ()Ljava/util/Set; 1
      // 167: invokestatic java/lang/String.valueOf (Ljava/lang/Object;)Ljava/lang/String;
      // 16a: astore 5
      // 16c: astore 6
      // 16e: astore 7
      // 170: getstatic com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.g [Ljava/lang/String;
      // 173: astore 8
      // 175: aload 8
      // 177: bipush 4
      // 178: aaload
      // 179: aload 7
      // 17b: aload 8
      // 17d: bipush 3
      // 17e: aaload
      // 17f: aload 6
      // 181: aload 8
      // 183: bipush 5
      // 184: aaload
      // 185: aload 5
      // 187: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001\u0001\u0001\u0001\u0001" ]
      // 18c: invokespecial java/io/FileNotFoundException.<init> (Ljava/lang/String;)V
      // 18f: athrow
      // 190: new java/io/FileNotFoundException
      // 193: dup
      // 194: aload 1
      // 195: getstatic com/l7tech/gateway/pm2/graphql/helper/GatewayResourceResolver.g [Ljava/lang/String;
      // 198: astore 8
      // 19a: aload 8
      // 19c: bipush 0
      // 19d: aaload
      // 19e: swap
      // 19f: aload 8
      // 1a1: bipush 13
      // 1a3: aaload
      // 1a4: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001\u0001" ]
      // 1a9: invokespecial java/io/FileNotFoundException.<init> (Ljava/lang/String;)V
      // 1ac: athrow
      // 1ad: aload 2
      // 1ae: areturn
      // try (76 -> 82): 83 java/io/IOException
      // try (49 -> 55): 56 java/io/IOException
      // try (34 -> 41): 42 java/io/IOException
      // try (71 -> 89): 90 java/io/IOException
      // try (121 -> 134): 135 java/io/IOException
      // try (127 -> 145): 146 java/io/IOException
      // try (153 -> 159): 160 java/io/IOException
   }

   private String a(String var1, String var2) throws IOException {
      try {
         return ResourceTrackingWSDLLocator.processResource(var1, var2, this.d, false, true);
      } catch (Exception var5) {
         String var10003 = ExceptionUtils.getMessage(var5);
         String[] var4 = g;
         throw new IOException(var4[2] + var1 + var4[10] + var10003, var5);
      }
   }

   private String a(String param1) {
      // $VF: Couldn't be decompiled
      // 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!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 00: aload 1
      // 01: ifnull 0f
      // 04: aload 1
      // 05: invokevirtual java/lang/String.isEmpty ()Z
      // 08: ifeq 12
      // 0b: goto 0f
      // 0e: athrow
      // 0f: aconst_null
      // 10: areturn
      // 11: athrow
      // 12: aload 1
      // 13: bipush 47
      // 15: invokevirtual java/lang/String.lastIndexOf (I)I
      // 18: istore 2
      // 19: iload 2
      // 1a: iflt 28
      // 1d: aload 1
      // 1e: iload 2
      // 1f: bipush 1
      // 20: iadd
      // 21: invokevirtual java/lang/String.substring (I)Ljava/lang/String;
      // 24: goto 29
      // 27: athrow
      // 28: aload 1
      // 29: astore 3
      // 2a: aload 3
      // 2b: invokevirtual java/lang/String.isEmpty ()Z
      // 2e: ifeq 34
      // 31: aconst_null
      // 32: areturn
      // 33: athrow
      // 34: aload 3
      // 35: getstatic java/nio/charset/StandardCharsets.UTF_8 Ljava/nio/charset/Charset;
      // 38: invokestatic java/net/URLDecoder.decode (Ljava/lang/String;Ljava/nio/charset/Charset;)Ljava/lang/String;
      // 3b: areturn
      // 3c: astore 4
      // 3e: aload 3
      // 3f: areturn
      // try (25 -> 30): 30 java/lang/IllegalArgumentException
      // try (14 -> 22): 22 java/lang/IllegalArgumentException
      // try (2 -> 9): 9 java/lang/IllegalArgumentException
      // try (0 -> 5): 6 java/lang/IllegalArgumentException
      // try (31 -> 34): 35 java/lang/IllegalArgumentException
   }

   static {
      String[] var5 = new String[15];
      int var3 = 0;
      String var2 = "G\u0007}5Sn\u0005P0\\\u0015t&FguA\u0015utCm A\u001e;t\u0002\u0004d<C\u001f#G\u0007}5Sn\u0005D4F\u0016d0\u0005v:\u000f\ns;Fg&\\Zs1Vm ]\u0019dt\u0002\r%{\u000f.i1\u0005d<C\u001f!s\u001fG\u0007}5Sn\u0005A4A\u0014n \u0005p0\\\u0015m\"@\"<B\nn&Q8u\b4%uX\u001brtKm!\u000f\u001cn!KfuF\u0014!!Un:N\u001ed0\u0005d<C\u001frz\u0005C#N\u0013m5Gn0\u000f\u001ch8@qo\u000f\u0004j![\n1d<C\u001f;{\n\"\u0000}6rtKm!\u000f\u001ct8I{u\\\u000fq$Jp!J\u001e!=K\"\u0005bH!\u0017Jl&@\u0016dn\u0005\u0002,u\u0004d<C\u001f\u0003%{\u000f!R'@\u0019d'Vk;HZh9Um'[Zg&JouC\u0015b5Qk:A@!&G\u0007}5Sn\u0005D4F\u0016d0\u0005v:\u000f\u001cd Fjux)E\u0018\u0005d'@\u0017!\u0001wNo\u000f";
      int var4 = "G\u0007}5Sn\u0005P0\\\u0015t&FguA\u0015utCm A\u001e;t\u0002\u0004d<C\u001f#G\u0007}5Sn\u0005D4F\u0016d0\u0005v:\u000f\ns;Fg&\\Zs1Vm ]\u0019dt\u0002\r%{\u000f.i1\u0005d<C\u001f!s\u001fG\u0007}5Sn\u0005A4A\u0014n \u0005p0\\\u0015m\"@\"<B\nn&Q8u\b4%uX\u001brtKm!\u000f\u001cn!KfuF\u0014!!Un:N\u001ed0\u0005d<C\u001frz\u0005C#N\u0013m5Gn0\u000f\u001ch8@qo\u000f\u0004j![\n1d<C\u001f;{\n\"\u0000}6rtKm!\u000f\u001ct8I{u\\\u000fq$Jp!J\u001e!=K\"\u0005bH!\u0017Jl&@\u0016dn\u0005\u0002,u\u0004d<C\u001f\u0003%{\u000f!R'@\u0019d'Vk;HZh9Um'[Zg&JouC\u0015b5Qk:A@!&G\u0007}5Sn\u0005D4F\u0016d0\u0005v:\u000f\u001cd Fjux)E\u0018\u0005d'@\u0017!\u0001wNo\u000f"
         .length();
      char var1 = 28;
      int var7 = -1;

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

         while (true) {
            String var12 = a(b(var10000));
            switch (var10001) {
               case 0:
                  var5[var3++] = var12;
                  if ((var7 += var1) >= var4) {
                     g = var5;
                     a = Logger.getLogger(GatewayResourceResolver.class.getName());
                     return;
                  }

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

                  var2 = "%{\u001aD4F\u0016d0\u0005v:\u000f\u001cd FjuI\bn9\u0005W\u0007c@!";
                  var4 = "%{\u001aD4F\u0016d0\u0005v:\u000f\u001cd FjuI\bn9\u0005W\u0007c@!".length();
                  var1 = 2;
                  var7 = -1;
            }

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

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

      return var10000;
   }

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

      for (int var1 = 0; var10000 > var1; var1++) {
         var10001[var1] = (char)(var10001[var1] ^ switch (var1 % 7) {
            case 0 -> 2;
            case 1 -> 85;
            case 2 -> 47;
            case 3 -> 122;
            case 4 -> 1;
            case 5 -> 84;
            default -> 37;
         });
      }

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