package com.l7tech.gateway.common.custom;

import com.l7tech.policy.assertion.MessageTargetable;
import com.l7tech.policy.assertion.TargetMessageType;
import com.l7tech.policy.assertion.ext.targetable.CustomMessageTargetable;
import com.l7tech.policy.assertion.ext.targetable.CustomMessageTargetableSupport;
import com.l7tech.policy.variable.VariableMetadata;
import org.jetbrains.annotations.NotNull;

public final class CustomToMessageTargetableAdaptor implements MessageTargetable {
   private final CustomMessageTargetable a;
   private static final String[] b;

   public final CustomMessageTargetable getCustomMessageTargetable() {
      return this.a;
   }

   public CustomToMessageTargetableAdaptor(@NotNull CustomMessageTargetable var1) {
      if (var1 == null) {
         a(0);
      }

      super();
      this.a = var1;
   }

   private static TargetMessageType a(String var0) {
      try {
         if (var0 == null) {
            return TargetMessageType.OTHER;
         }
      } catch (IllegalArgumentException var3) {
         throw a(var3);
      }

      try {
         if (var0.compareToIgnoreCase(CustomMessageTargetableSupport.TARGET_REQUEST) == 0) {
            return TargetMessageType.REQUEST;
         }
      } catch (IllegalArgumentException var1) {
         throw a(var1);
      }

      try {
         if (var0.compareToIgnoreCase(CustomMessageTargetableSupport.TARGET_RESPONSE) == 0) {
            return TargetMessageType.RESPONSE;
         }
      } catch (IllegalArgumentException var2) {
         throw a(var2);
      }

      return TargetMessageType.OTHER;
   }

   private static String a(TargetMessageType var0) {
      try {
         if (var0 == TargetMessageType.REQUEST) {
            return CustomMessageTargetableSupport.TARGET_REQUEST;
         }
      } catch (IllegalArgumentException var2) {
         throw a(var2);
      }

      try {
         return var0 == TargetMessageType.RESPONSE ? CustomMessageTargetableSupport.TARGET_RESPONSE : "";
      } catch (IllegalArgumentException var1) {
         throw a(var1);
      }
   }

   public TargetMessageType getTarget() {
      return a(this.getCustomMessageTargetable().getTargetMessageVariable());
   }

   public void setTarget(TargetMessageType var1) {
      this.getCustomMessageTargetable().setTargetMessageVariable(a(var1));
   }

   public String getOtherTargetMessageVariable() {
      // $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 0
      // 01: invokevirtual com/l7tech/gateway/common/custom/CustomToMessageTargetableAdaptor.getCustomMessageTargetable ()Lcom/l7tech/policy/assertion/ext/targetable/CustomMessageTargetable;
      // 04: invokeinterface com/l7tech/policy/assertion/ext/targetable/CustomMessageTargetable.getTargetMessageVariable ()Ljava/lang/String; 1
      // 09: astore 1
      // 0a: aload 1
      // 0b: ifnull 30
      // 0e: aload 1
      // 0f: getstatic com/l7tech/policy/assertion/ext/targetable/CustomMessageTargetableSupport.TARGET_REQUEST Ljava/lang/String;
      // 12: invokevirtual java/lang/String.compareToIgnoreCase (Ljava/lang/String;)I
      // 15: ifeq 30
      // 18: goto 1f
      // 1b: invokestatic com/l7tech/gateway/common/custom/CustomToMessageTargetableAdaptor.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 1e: athrow
      // 1f: aload 1
      // 20: getstatic com/l7tech/policy/assertion/ext/targetable/CustomMessageTargetableSupport.TARGET_RESPONSE Ljava/lang/String;
      // 23: invokevirtual java/lang/String.compareToIgnoreCase (Ljava/lang/String;)I
      // 26: ifne 36
      // 29: goto 30
      // 2c: invokestatic com/l7tech/gateway/common/custom/CustomToMessageTargetableAdaptor.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 2f: athrow
      // 30: aconst_null
      // 31: areturn
      // 32: invokestatic com/l7tech/gateway/common/custom/CustomToMessageTargetableAdaptor.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 35: athrow
      // 36: aload 1
      // 37: areturn
      // try (4 -> 10): 11 java/lang/IllegalArgumentException
      // try (6 -> 17): 18 java/lang/IllegalArgumentException
      // try (13 -> 22): 22 java/lang/IllegalArgumentException
   }

   public void setOtherTargetMessageVariable(String var1) {
      this.getCustomMessageTargetable().setTargetMessageVariable(var1);
   }

   public String getTargetName() {
      return this.getCustomMessageTargetable().getTargetName();
   }

   public boolean isTargetModifiedByGateway() {
      return this.getCustomMessageTargetable().isTargetModifiedByGateway();
   }

   public VariableMetadata[] getVariablesSet() {
      return this.getCustomMessageTargetable().getVariablesSet();
   }

   public String[] getVariablesUsed() {
      return this.getCustomMessageTargetable().getVariablesUsed();
   }

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

   static {
      String[] var5 = new String[4];
      int var3 = 0;
      String var2 = "j\u0017PnY*~_EQtFoPe\nCUA#|\u000b\u0015ViU\"u_\u0000E;\u0013jc\fEX}\u0014jc\u0005@D;Y:c_EYt@orNEYnX#\u0006\u0017\fYr@q";
      int var4 = "j\u0017PnY*~_EQtFoPe\nCUA#|\u000b\u0015ViU\"u_\u0000E;\u0013jc\fEX}\u0014jc\u0005@D;Y:c_EYt@orNEYnX#\u0006\u0017\fYr@q".length();
      char var1 = '>';
      int var7 = -1;

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

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

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

                  var2 = "@\u0002R<PplF\u000eW<[&lF\u001a^j\u0013$wN\u0000P}\u0013$mP\u0019P~\u0013\u0004mP\u0019P~h(UF\u001eLr[\"LB\u001fXvH&zO\b~w]7lL\u001f\u0017@\u0018LgS*UF\u001eLr[\"LB\u001fXvH&zO\b";
                  var4 = "@\u0002R<PplF\u000eW<[&lF\u001a^j\u0013$wN\u0000P}\u0013$mP\u0019P~\u0013\u0004mP\u0019P~h(UF\u001eLr[\"LB\u001fXvH&zO\b~w]7lL\u001f\u0017@\u0018LgS*UF\u001eLr[\"LB\u001fXvH&zO\b"
                     .length();
                  var1 = 'A';
                  var7 = -1;
            }

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

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

      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 -> 14;
            case 1 -> 64;
            case 2 -> 18;
            case 3 -> 62;
            case 4 -> 17;
            case 5 -> 106;
            default -> 53;
         });
      }

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