package com.l7tech.server.transport.http.websocket;

import com.l7tech.server.ServerConfig;
import com.l7tech.util.ConfigFactory;
import jakarta.inject.Singleton;
import java.util.HashSet;
import java.util.Set;

@Singleton
class SsgWebSocketGlobalSettings {
   private static final String a;
   private static final int b = 20000;
   private static final String c;
   private static final int d = 60000;
   private static final String e;
   private static final int f = 8192;
   private static final String g;
   private static final int h = 8192;
   private static final String i;
   private static final int j = 10;
   private static final String k;
   private static final int l = 5000;
   private static final String m;
   private static final int n = 0;
   private final ServerConfig o;
   private final Set<String> p = new HashSet<>();
   private int q;
   private int r;
   private int s;
   private int t;
   private int u;
   private int v;
   private int w;
   private SsgWebSocketGlobalSettings.SettingsListener x;
   private static final String[] y;

   SsgWebSocketGlobalSettings(ServerConfig var1) {
      this.o = var1;
      String[] var2 = y;
      this.p.add(var2[6]);
      this.p.add(var2[4]);
      this.p.add(var2[10]);
      this.p.add(var2[5]);
      this.p.add(var2[12]);
      this.p.add(var2[7]);
      this.p.add(var2[3]);
      this.p.forEach(this::a);
      ConfigFactory.addListener(new f(this), new String[0]);
   }

   private void a(String var1) {
      String[] var4;
      switch (var1) {
         case var4[0]:
            this.q = this.o.getIntProperty(var1, 20000);
            break;
         case var4[8]:
            this.r = this.o.getIntProperty(var1, 60000);
            break;
         case var4[11]:
            this.s = this.o.getIntProperty(var1, 8192);
            break;
         case var4[1]:
            this.t = this.o.getIntProperty(var1, 8192);
            break;
         case var4[2]:
            this.u = this.o.getIntProperty(var1, 10);
            break;
         case var4[13]:
            this.v = this.o.getIntProperty(var1, 5000);
            break;
         case y[9]:
            this.w = this.o.getIntProperty(var1, 0);
      }
   }

   int a() {
      return this.q;
   }

   int b() {
      return this.r;
   }

   int c() {
      return this.s;
   }

   int d() {
      return this.t;
   }

   int e() {
      return this.u;
   }

   int f() {
      return this.v;
   }

   int g() {
      return this.w;
   }

   void a(SsgWebSocketGlobalSettings.SettingsListener var1) {
      this.x = var1;
   }

   static {
      String[] var5 = new String[14];
      int var3 = 0;
      String var2 = "uaz8)zvvku('m3dz9:;w6b]r5,Z1lkx.<$uaz8)zvvku('m3dz96)v\u001ah`v)1L-ghr)\u001bg\"d6uaz8)zvvku('m3dz94=z:n{y?fm7o`r8<g7o[g<:o<dMx5+{*sky81)uaz8)zvvku('m3dz94=z:n{y?fc9y\\r?!|=bz~4&}\u001fuaz8)zvvku('m3dz96)v\u0011ebr\u000f!c=n{c$uaz8)zvvku('m3dz96)v\u001ah`v)1L-ghr)\u001bg\"d!uaz8)zvvku('m3dz9:;w6b]r5,Z1lkx.<#uaz8)zvvku('m3dz94=z:n{y?fg7Ugz>'{,\u001fuaz8)zvvku('m3dz96)v\u0011ebr\u000f!c=n{c)uaz8)zvvku('m3dz94=z:n{y?fc9y\\r?!|=bz~4&}\"uaz8)zvvku('m3dz96)v\fdvc\u0019=h>d|D22k\"uaz8)zvvku('m3dz96)v\fdvc\u0019=h>d|D22k";
      int var4 = "uaz8)zvvku('m3dz9:;w6b]r5,Z1lkx.<$uaz8)zvvku('m3dz96)v\u001ah`v)1L-ghr)\u001bg\"d6uaz8)zvvku('m3dz94=z:n{y?fm7o`r8<g7o[g<:o<dMx5+{*sky81)uaz8)zvvku('m3dz94=z:n{y?fc9y\\r?!|=bz~4&}\u001fuaz8)zvvku('m3dz96)v\u0011ebr\u000f!c=n{c$uaz8)zvvku('m3dz96)v\u001ah`v)1L-ghr)\u001bg\"d!uaz8)zvvku('m3dz9:;w6b]r5,Z1lkx.<#uaz8)zvvku('m3dz94=z:n{y?fg7Ugz>'{,\u001fuaz8)zvvku('m3dz96)v\u0011ebr\u000f!c=n{c)uaz8)zvvku('m3dz94=z:n{y?fc9y\\r?!|=bz~4&}\"uaz8)zvvku('m3dz96)v\fdvc\u0019=h>d|D22k\"uaz8)zvvku('m3dz96)v\fdvc\u0019=h>d|D22k"
         .length();
      char var1 = '!';
      int var7 = -1;

      label24:
      while (true) {
         byte var10000 = 12;
         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) {
                     y = var5;
                     String[] var9 = y;
                     k = y[7];
                     a = var9[6];
                     m = var9[3];
                     c = var9[4];
                     g = var9[5];
                     i = var9[12];
                     e = var9[10];
                     return;
                  }

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

                  var2 = "\u001d\t\u0012PA\u0012\u001e\u001e\u0003\u001d@O\u0005[\f\u0012Q\\U\u0012R\u0006\u0013\u0011W\u000e\u0005_\u0007\b\u001aPT\u000f_\u00073\u000fTR\u0007T\f%\u0010]C\u0013B\u001b\u0003\u0011PY#\u001d\t\u0012PA\u0012\u001e\u001e\u0003\u001d@O\u0005[\f\u0012Q\\U\u0012R\u0006\u0013\u0011W\u000e\u000f_=\u000f\u0012VO\u0013D";
                  var4 = "\u001d\t\u0012PA\u0012\u001e\u001e\u0003\u001d@O\u0005[\f\u0012Q\\U\u0012R\u0006\u0013\u0011W\u000e\u0005_\u0007\b\u001aPT\u000f_\u00073\u000fTR\u0007T\f%\u0010]C\u0013B\u001b\u0003\u0011PY#\u001d\t\u0012PA\u0012\u001e\u001e\u0003\u001d@O\u0005[\f\u0012Q\\U\u0012R\u0006\u0013\u0011W\u000e\u000f_=\u000f\u0012VO\u0013D"
                     .length();
                  var1 = '6';
                  var7 = -1;
            }

            var10000 = 100;
            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] ^ 84);
      }

      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 -> 2;
            case 2 -> 27;
            case 3 -> 87;
            case 4 -> 68;
            case 5 -> 2;
            default -> 84;
         });
      }

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

   public interface SettingsListener {
      void notifySettingChanged();
   }
}
