package com.l7tech.policy.assertion;

import com.l7tech.util.SoapConstants;
import java.util.HashMap;
import java.util.Map;
import java.util.logging.Level;

public class AssertionStatus {
   static final int a = 400;
   static final int b = 500;
   static final int c = 600;
   static final int d = 1000;
   private static final Map e;
   public static final AssertionStatus UNDEFINED;
   public static final AssertionStatus NONE;
   public static final AssertionStatus BAD_REQUEST;
   public static final AssertionStatus AUTH_REQUIRED;
   public static final AssertionStatus AUTH_FAILED;
   public static final AssertionStatus UNAUTHORIZED;
   public static final AssertionStatus SERVICE_DISABLED;
   public static final AssertionStatus SERVICE_NOT_FOUND;
   public static final AssertionStatus TOO_MANY_REQUESTS;
   @Deprecated
   public static final AssertionStatus __NOT_YET_IMPLEMENTED;
   public static final AssertionStatus NOT_APPLICABLE;
   public static final AssertionStatus INVALID_XPATH;
   public static final AssertionStatus UNRESOLVABLE_NAMESPACE_PREFIX;
   public static final AssertionStatus SERVER_ERROR;
   public static final AssertionStatus SERVER_AUTH_FAILED;
   public static final AssertionStatus BAD_RESPONSE;
   public static final AssertionStatus SERVICE_UNAVAILABLE;
   public static final AssertionStatus INSUFFICIENT_STORAGE;
   public static final AssertionStatus FALSIFIED;
   public static final AssertionStatus FAILED;
   protected final int _numeric;
   protected final Level _level;
   protected final String _message;
   protected final boolean _authProblem;
   private static final String[] f;

   public int getNumeric() {
      return this._numeric;
   }

   public Level getLevel() {
      return this._level;
   }

   public String getMessage() {
      return this._message;
   }

   public boolean isAuthProblem() {
      return this._authProblem;
   }

   public String getSoapFaultCode() {
      return this._numeric >= 400 && this._numeric < 500 ? SoapConstants.FC_CLIENT : SoapConstants.FC_SERVER;
   }

   private static AssertionStatus a(Map var0, int var1, Level var2, String var3, boolean var4) {
      return new AssertionStatus(var0, var1, var2, var3, var4);
   }

   private static AssertionStatus a(Map var0, int var1, Level var2, String var3) {
      return a(var0, var1, var2, var3, false);
   }

   private AssertionStatus(Map var1, int var2, Level var3, String var4, boolean var5) {
      this._numeric = var2;
      this._level = var3;
      this._message = var4;
      this._authProblem = var5;
      var1.put(var2, this);
   }

   public static AssertionStatus fromInt(int var0) {
      return (AssertionStatus)e.get(var0);
   }

   @Override
   public String toString() {
      String var10000 = String.valueOf(this.getClass());
      int var10001 = this.getNumeric();
      String var10002 = this.getLevel().getName();
      String var1 = this.getMessage();
      String var2 = var10002;
      int var3 = var10001;
      String var4 = var10000;
      return "<" + var4 + f[20] + var3 + "=" + var2 + ":" + var1 + ">";
   }

   static {
      String[] var5 = new String[21];
      int var3 = 0;
      String var2 = "$\u0003\u0002\u000e-. \u000e\u0004\u0014\u0015?h\u001a\u0019\u0002\u0003\u001a,-\u0015$\u0003\u0005\u001e9&(\u0001M\"\u001e9>,\u001fM4\t9';\u000b/\f\u0015[\u0019-8\u0018\b\u0002\u000f\",\u000e\u0012\u001e8;i)\b\u001f\u0012.,i\u000f\u0014Q+9'=\b\u000e\u0005\u001e/h\u001a\b\u001f\u0007\u0012(-\u0017,\u0018\u0005\u0013.&=\u0004\u000e\u0010\u000f\"''M?\u0014\n>!;\b\t\u001d(\u001f\u0003\u00149h \u0003M0\b8-;\u0019\u0004\u001e\u0015k\u0018;\u0002\u000e\u0014\b8!'\n\u0013,\u001e\u0002\u001e9< \u0002\u0003Q=*$:\u0004\u000b\u0018\u001e/\u001d8\u0003\u0003\u001e8'%\u001b\f\u0013\u0017.h\u0007\f\u0000\u0014\b;)*\bM!\t.. \u0015\u0010>\b\u0003\r\"+,M)\u0018\b**%\b\t\u001e#\u0002\u0005[*89\u0001\u0004\u0012\u001a)$,M\u0004\u001f[?  \u001eM\u0012\u0014%<,\u0015\u0019\b#\u0002Q>9:&\u001f\t8\u0003\u0015\u001e-!'\b\t\u0015,\u0018\u0005\u0013.&=\u0004\u000e\u0010\u000f\"''M+\u0010\u0012'--\u00119\u0002\u001e[\u0006)'\u0014M#\u001e:=,\u001e\u0019\u0002\u0014#\u0002\u0005[2-=M\u0004\u001c\u000b'-$\b\u0003\u0005\u001e/i\u0015$\u0003\u0007\u001a'!-M5!\u001a? i=\f\u0005\u000f.:'#/\f\u0015[\u0019-:\u001d\u0002\u001f\b.h/\u001f\u0002\u001c[\u001b:&\u0019\b\u0012\u000f.,i>\b\u0003\r\"+,o>\b\u0003\r\"+,M#\u001e\u000fk\u000e&\u0018\u0003\u0015Ukh\u001d\u0005\bQ\t.9<\b\u001e\u0005[&)0M\u0005\u0010\r.h+\b\b\u001f[8-'\u0019M\u0005\u0014k)'M\u0004\u001f\r*$ \tM$)\u0007di\u0002\u001fQ\u0012%<,\u0003\t\u0014\u001fk.&\u001fM\u0010\u0015k='\u001e\u0018\u0001\u000b$:=\b\tQ\u0014;-;\f\u0019\u0018\u0014%f\f8\u0003\u0010\u000e? &\u001f\u0004\u000b\u001e/";
      int var4 = "$\u0003\u0002\u000e-. \u000e\u0004\u0014\u0015?h\u001a\u0019\u0002\u0003\u001a,-\u0015$\u0003\u0005\u001e9&(\u0001M\"\u001e9>,\u001fM4\t9';\u000b/\f\u0015[\u0019-8\u0018\b\u0002\u000f\",\u000e\u0012\u001e8;i)\b\u001f\u0012.,i\u000f\u0014Q+9'=\b\u000e\u0005\u001e/h\u001a\b\u001f\u0007\u0012(-\u0017,\u0018\u0005\u0013.&=\u0004\u000e\u0010\u000f\"''M?\u0014\n>!;\b\t\u001d(\u001f\u0003\u00149h \u0003M0\b8-;\u0019\u0004\u001e\u0015k\u0018;\u0002\u000e\u0014\b8!'\n\u0013,\u001e\u0002\u001e9< \u0002\u0003Q=*$:\u0004\u000b\u0018\u001e/\u001d8\u0003\u0003\u001e8'%\u001b\f\u0013\u0017.h\u0007\f\u0000\u0014\b;)*\bM!\t.. \u0015\u0010>\b\u0003\r\"+,M)\u0018\b**%\b\t\u001e#\u0002\u0005[*89\u0001\u0004\u0012\u001a)$,M\u0004\u001f[?  \u001eM\u0012\u0014%<,\u0015\u0019\b#\u0002Q>9:&\u001f\t8\u0003\u0015\u001e-!'\b\t\u0015,\u0018\u0005\u0013.&=\u0004\u000e\u0010\u000f\"''M+\u0010\u0012'--\u00119\u0002\u001e[\u0006)'\u0014M#\u001e:=,\u001e\u0019\u0002\u0014#\u0002\u0005[2-=M\u0004\u001c\u000b'-$\b\u0003\u0005\u001e/i\u0015$\u0003\u0007\u001a'!-M5!\u001a? i=\f\u0005\u000f.:'#/\f\u0015[\u0019-:\u001d\u0002\u001f\b.h/\u001f\u0002\u001c[\u001b:&\u0019\b\u0012\u000f.,i>\b\u0003\r\"+,o>\b\u0003\r\"+,M#\u001e\u000fk\u000e&\u0018\u0003\u0015Ukh\u001d\u0005\bQ\t.9<\b\u001e\u0005[&)0M\u0005\u0010\r.h+\b\b\u001f[8-'\u0019M\u0005\u0014k)'M\u0004\u001f\r*$ \tM$)\u0007di\u0002\u001fQ\u0012%<,\u0003\t\u0014\u001fk.&\u001fM\u0010\u0015k='\u001e\u0018\u0001\u000b$:=\b\tQ\u0014;-;\f\u0019\u0018\u0014%f\f8\u0003\u0010\u000e? &\u001f\u0004\u000b\u001e/"
         .length();
      char var1 = 20;
      int var7 = -1;

      label24:
      while (true) {
         byte var10000 = 96;
         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) {
                     f = var5;
                     e = new HashMap();
                     String[] var8 = f;
                     UNDEFINED = a(e, -1, Level.INFO, var8[11]);
                     NONE = a(e, 0, Level.FINE, var8[10]);
                     BAD_REQUEST = a(e, 400, Level.INFO, var8[2]);
                     AUTH_REQUIRED = a(e, 401, Level.INFO, var8[4], true);
                     AUTH_FAILED = a(e, 402, Level.WARNING, var8[12], true);
                     UNAUTHORIZED = a(e, 402, Level.INFO, var8[18], true);
                     SERVICE_DISABLED = a(e, 403, Level.INFO, var8[8]);
                     SERVICE_NOT_FOUND = a(e, 404, Level.INFO, var8[17]);
                     TOO_MANY_REQUESTS = a(e, 429, Level.INFO, var8[13]);
                     __NOT_YET_IMPLEMENTED = a(e, 1000, Level.INFO, var8[14]);
                     NOT_APPLICABLE = a(e, 1001, Level.INFO, var8[9]);
                     INVALID_XPATH = a(e, 1002, Level.INFO, var8[15]);
                     UNRESOLVABLE_NAMESPACE_PREFIX = a(e, 1003, Level.INFO, var8[7]);
                     SERVER_ERROR = a(e, 500, Level.INFO, var8[1]);
                     SERVER_AUTH_FAILED = a(e, 501, Level.INFO, var8[3]);
                     BAD_RESPONSE = a(e, 502, Level.INFO, var8[16]);
                     SERVICE_UNAVAILABLE = a(e, 503, Level.INFO, var8[19]);
                     INSUFFICIENT_STORAGE = a(e, 507, Level.WARNING, var8[0]);
                     FALSIFIED = a(e, 600, Level.INFO, var8[6]);
                     FAILED = a(e, 601, Level.INFO, var8[5]);
                     return;
                  }

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

                  var2 = "6\u0000\u000b\u0005*#$E1\u001c\u001e3/3\u0004\u0017\u0010\u001f:`\u0014\u000b\u0004\u000f\u0012*, \u0007\t\u001c\u0002_E";
                  var4 = "6\u0000\u000b\u0005*#$E1\u001c\u001e3/3\u0004\u0017\u0010\u001f:`\u0014\u000b\u0004\u000f\u0012*, \u0007\t\u001c\u0002_E".length();
                  var1 = 31;
                  var7 = -1;
            }

            var10000 = 104;
            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] ^ 41);
      }

      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 -> 13;
            case 1 -> 13;
            case 2 -> 17;
            case 3 -> 27;
            case 4 -> 43;
            case 5 -> 40;
            default -> 41;
         });
      }

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