package com.l7tech.server.uddi;

import com.l7tech.common.http.SimpleHttpClient;
import com.l7tech.util.Pair;
import com.l7tech.util.ResourceUtils;
import com.l7tech.wsdl.WsdlEntityResolver;
import java.io.IOException;
import java.io.StringReader;
import java.net.MalformedURLException;
import java.net.PasswordAuthentication;
import java.net.URL;
import org.xml.sax.EntityResolver;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;

final class e implements EntityResolver {
   final WsdlEntityResolver a = new WsdlEntityResolver(true);
   final SimpleHttpClient b;
   final Pair<String, Integer> c;
   final PasswordAuthentication d;
   private static final String[] e;

   e(SimpleHttpClient var1, String var2) {
      this.b = var1;
      this.d = ResourceUtils.getPasswordAuthentication(var2);
      if (this.d != null) {
         this.c = this.b(var2);
      } else {
         this.c = null;
      }
   }

   @Override
   public InputSource resolveEntity(String var1, String var2) throws SAXException, IOException {
      InputSource var3 = this.a.resolveEntity(var1, var2);
      if (var3 == null) {
         String var4 = this.a(var2);
         var3 = new InputSource();
         var3.setPublicId(var1);
         var3.setSystemId(var2);
         var3.setCharacterStream(new StringReader(var4));
      }

      return var3;
   }

   public String addAuthentication(String var1) {
      String var2 = var1;
      if (this.c != null && this.c.equals(this.b(var1))) {
         var2 = ResourceUtils.addPasswordAuthentication(var2, this.d);
      }

      return var2;
   }

   private String a(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:
      // 00: aconst_null
      // 01: astore 2
      // 02: aload 1
      // 03: invokevirtual java/lang/String.toLowerCase ()Ljava/lang/String;
      // 06: getstatic com/l7tech/server/uddi/e.e [Ljava/lang/String;
      // 09: astore 8
      // 0b: aload 8
      // 0d: bipush 2
      // 0e: aaload
      // 0f: invokevirtual java/lang/String.startsWith (Ljava/lang/String;)Z
      // 12: istore 3
      // 13: aload 1
      // 14: invokevirtual java/lang/String.toLowerCase ()Ljava/lang/String;
      // 17: aload 8
      // 19: bipush 0
      // 1a: aaload
      // 1b: invokevirtual java/lang/String.startsWith (Ljava/lang/String;)Z
      // 1e: istore 4
      // 20: iload 3
      // 21: ifne 30
      // 24: iload 4
      // 26: ifeq c2
      // 29: goto 30
      // 2c: invokestatic com/l7tech/server/uddi/e.a (Ljava/io/IOException;)Ljava/io/IOException;
      // 2f: athrow
      // 30: new java/net/URL
      // 33: dup
      // 34: aload 1
      // 35: invokespecial java/net/URL.<init> (Ljava/lang/String;)V
      // 38: astore 5
      // 3a: new com/l7tech/common/http/GenericHttpRequestParams
      // 3d: dup
      // 3e: aload 5
      // 40: invokespecial com/l7tech/common/http/GenericHttpRequestParams.<init> (Ljava/net/URL;)V
      // 43: astore 6
      // 45: aload 0
      // 46: getfield com/l7tech/server/uddi/e.c Lcom/l7tech/util/Pair;
      // 49: ifnull 78
      // 4c: aload 0
      // 4d: getfield com/l7tech/server/uddi/e.c Lcom/l7tech/util/Pair;
      // 50: aload 0
      // 51: aload 1
      // 52: invokevirtual com/l7tech/server/uddi/e.b (Ljava/lang/String;)Lcom/l7tech/util/Pair;
      // 55: invokevirtual com/l7tech/util/Pair.equals (Ljava/lang/Object;)Z
      // 58: ifeq 78
      // 5b: goto 62
      // 5e: invokestatic com/l7tech/server/uddi/e.a (Ljava/io/IOException;)Ljava/io/IOException;
      // 61: athrow
      // 62: aload 6
      // 64: aload 0
      // 65: getfield com/l7tech/server/uddi/e.d Ljava/net/PasswordAuthentication;
      // 68: invokevirtual com/l7tech/common/http/GenericHttpRequestParams.setPasswordAuthentication (Ljava/net/PasswordAuthentication;)V
      // 6b: aload 6
      // 6d: bipush 1
      // 6e: invokevirtual com/l7tech/common/http/GenericHttpRequestParams.setPreemptiveAuthentication (Z)V
      // 71: goto 78
      // 74: invokestatic com/l7tech/server/uddi/e.a (Ljava/io/IOException;)Ljava/io/IOException;
      // 77: athrow
      // 78: aload 0
      // 79: getfield com/l7tech/server/uddi/e.b Lcom/l7tech/common/http/SimpleHttpClient;
      // 7c: aload 6
      // 7e: invokevirtual com/l7tech/common/http/SimpleHttpClient.get (Lcom/l7tech/common/http/GenericHttpRequestParams;)Lcom/l7tech/common/http/SimpleHttpClient$SimpleHttpResponse;
      // 81: astore 7
      // 83: aload 7
      // 85: invokeinterface com/l7tech/common/http/SimpleHttpClient$SimpleHttpResponse.getStatus ()I 1
      // 8a: sipush 200
      // 8d: if_icmpne 9b
      // 90: aload 7
      // 92: invokeinterface com/l7tech/common/http/SimpleHttpClient$SimpleHttpResponse.getString ()Ljava/lang/String; 1
      // 97: astore 2
      // 98: goto c2
      // 9b: new java/io/IOException
      // 9e: dup
      // 9f: aload 1
      // a0: aload 7
      // a2: invokeinterface com/l7tech/common/http/SimpleHttpClient$SimpleHttpResponse.getStatus ()I 1
      // a7: getstatic com/l7tech/server/uddi/e.e [Ljava/lang/String;
      // aa: astore 8
      // ac: aload 8
      // ae: bipush 1
      // af: aaload
      // b0: dup_x2
      // b1: pop
      // b2: aload 8
      // b4: bipush 4
      // b5: aaload
      // b6: swap
      // b7: ldc "."
      // b9: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/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" ]
      // be: invokespecial java/io/IOException.<init> (Ljava/lang/String;)V
      // c1: athrow
      // c2: aload 2
      // c3: ifnonnull e5
      // c6: new java/io/IOException
      // c9: dup
      // ca: aload 1
      // cb: getstatic com/l7tech/server/uddi/e.e [Ljava/lang/String;
      // ce: bipush 7
      // d0: aaload
      // d1: swap
      // d2: getstatic com/l7tech/server/uddi/e.e [Ljava/lang/String;
      // d5: bipush 6
      // d7: aaload
      // d8: 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" ]
      // dd: invokespecial java/io/IOException.<init> (Ljava/lang/String;)V
      // e0: athrow
      // e1: invokestatic com/l7tech/server/uddi/e.a (Ljava/io/IOException;)Ljava/io/IOException;
      // e4: athrow
      // e5: aload 2
      // e6: areturn
      // try (18 -> 22): 23 java/io/IOException
      // try (35 -> 45): 46 java/io/IOException
      // try (38 -> 55): 56 java/io/IOException
      // try (91 -> 106): 106 java/io/IOException
   }

   private Pair<String, Integer> b(String var1) {
      Pair var2 = null;

      try {
         URL var3 = new URL(var1);
         String var4 = var3.getHost();
         int var5 = var3.getPort();

         label39: {
            label38: {
               try {
                  if (var5 != -1) {
                     break label39;
                  }

                  if (var1.toLowerCase().startsWith(e[3])) {
                     break label38;
                  }
               } catch (MalformedURLException var7) {
                  throw a(var7);
               }

               if (var1.toLowerCase().startsWith(e[5])) {
                  var5 = 443;
               }
               break label39;
            }

            var5 = 80;
         }

         try {
            if (var4 == null || var5 <= -1) {
               return var2;
            }
         } catch (MalformedURLException var6) {
            throw a(var6);
         }

         var2 = new Pair(var4.toLowerCase(), var5);
      } catch (MalformedURLException var8) {
      }

      return var2;
   }

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

   static {
      String[] var5 = new String[8];
      int var3 = 0;
      String var2 = "Ymu;\bL\u001brvt'\u001fVq^m!*\u0018\u0015zBj!9\u001e\u0005pDkb.[Q\u0005Ymu;A\u0005Ymu;A\u000f\u00165!#\u000f\u0002o\u0011ju*\u000f\u0003l\u0011\u0006Ymu;\bL";
      int var4 = "Ymu;\bL\u001brvt'\u001fVq^m!*\u0018\u0015zBj!9\u001e\u0005pDkb.[Q\u0005Ymu;A\u0005Ymu;A\u000f\u00165!#\u000f\u0002o\u0011ju*\u000f\u0003l\u0011\u0006Ymu;\bL"
         .length();
      char var1 = 6;
      int var7 = -1;

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

         while (true) {
            String var8 = a(var10000, c(var10001));
            switch (var10002) {
               case 0:
                  var5[var3++] = var8;
                  if ((var7 += var1) >= var4) {
                     e = var5;
                     return;
                  }

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

                  var2 = "\u007f^\u001b\u001b\u001f\u001dNv?\u00187\u0004HCq|\u0013+\u0003HPwl\u0019-\u0002\u000bG28";
                  var4 = "\u007f^\u001b\u001b\u001f\u001dNv?\u00187\u0004HCq|\u0013+\u0003HPwl\u0019-\u0002\u000bG28".length();
                  var1 = 2;
                  var7 = -1;
            }

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

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

      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 -> 28;
            case 1 -> 52;
            case 2 -> 44;
            case 3 -> 102;
            case 4 -> 86;
            case 5 -> 91;
            default -> 50;
         });
      }

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