package com.l7tech.server.audit;

import com.l7tech.gateway.common.audit.Audit;
import com.l7tech.gateway.common.audit.AuditFactory;
import com.l7tech.gateway.common.audit.SystemMessages;
import com.l7tech.gateway.common.audit.Messages.M;
import com.l7tech.objectmodel.FindException;
import com.l7tech.server.MessageProcessor;
import com.l7tech.server.cluster.ClusterLock;
import com.l7tech.server.cluster.ClusterPropertyManager;
import com.l7tech.server.event.system.AuditArchiverEvent;
import com.l7tech.server.util.PostStartupApplicationListener;
import com.l7tech.util.Config;
import com.l7tech.util.ValidatedConfig;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.sql.SQLException;
import java.util.Timer;
import java.util.TimerTask;
import java.util.concurrent.locks.Lock;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.jetbrains.annotations.NotNull;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.context.ApplicationEvent;
import org.springframework.transaction.PlatformTransactionManager;

public class AuditArchiver implements ApplicationContextAware, PostStartupApplicationListener, PropertyChangeListener {
   private static final Logger a;
   private final ValidatedConfig b;
   private final Config c;
   private final ClusterPropertyManager d;
   private final PlatformTransactionManager e;
   private final AuditRecordManager f;
   private final Audit g;
   private final boolean h;
   private int i;
   private int j;
   private int k;
   private int l;
   private int m;
   private static final int n = 10000;
   public static final long MYSQL_STATS_UPDATE_SLEEP_WAIT = 15000L;
   private AuditArchiver.AuditManagementStrategy o;
   private Timer p;
   private Lock q;
   private ApplicationContext r;
   private long s;
   private long t;
   private TimerTask u;
   private ArchiveReceiver v;
   private static final String[] w;

   public AuditArchiver(
      @NotNull Config var1,
      @NotNull ClusterPropertyManager var2,
      @NotNull PlatformTransactionManager var3,
      @NotNull AuditRecordManager var4,
      @NotNull ArchiveReceiver var5,
      @NotNull AuditFactory var6,
      boolean var7
   ) throws FindException {
      if (var1 == null) {
         a(0);
      }

      if (var2 == null) {
         a(1);
      }

      if (var3 == null) {
         a(2);
      }

      if (var4 == null) {
         a(3);
      }

      if (var5 == null) {
         a(4);
      }

      if (var6 == null) {
         a(5);
      }

      super();
      this.o = AuditArchiver.AuditManagementStrategy.STOP;
      this.c = var1;
      this.d = var2;
      this.e = var3;
      this.f = var4;
      this.v = var5;
      this.g = var6.newInstance(this, a);
      this.h = var7;
      this.s = this.c.getLongProperty(w[51], 120L);
      this.q = this.a();
      this.p = new Timer(true);
      this.b = this.a(var1, a);
   }

   public boolean isEnabled() {
      return this.h;
   }

   private Lock a() {
      return new ClusterLock(this.d, this.e, w[3], this.s);
   }

   @Override
   public void onApplicationEvent(ApplicationEvent 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 0
      // 01: getfield com/l7tech/server/audit/AuditArchiver.h Z
      // 04: ifeq 2c
      // 07: aload 1
      // 08: instanceof org/springframework/context/event/ContextStartedEvent
      // 0b: ifeq 2c
      // 0e: goto 15
      // 11: invokestatic com/l7tech/server/audit/AuditArchiver.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 14: athrow
      // 15: aload 0
      // 16: invokevirtual com/l7tech/server/audit/AuditArchiver.c ()V
      // 19: getstatic com/l7tech/server/audit/AuditArchiver.a Ljava/util/logging/Logger;
      // 1c: getstatic com/l7tech/server/audit/AuditArchiver.w [Ljava/lang/String;
      // 1f: bipush 50
      // 21: aaload
      // 22: invokevirtual java/util/logging/Logger.info (Ljava/lang/String;)V
      // 25: goto 2c
      // 28: invokestatic com/l7tech/server/audit/AuditArchiver.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 2b: athrow
      // 2c: return
      // try (0 -> 6): 7 org/springframework/beans/BeansException
      // try (3 -> 16): 17 org/springframework/beans/BeansException
   }

   private void b() {
      try {
         if (this.p == null) {
            a.warning(w[27]);
            return;
         }
      } catch (BeansException var3) {
         throw a(var3);
      }

      try {
         if (this.u != null) {
            this.u.cancel();
         }
      } catch (BeansException var1) {
         throw a(var1);
      }

      try {
         if (this.t > 0L) {
            a.info(w[33] + this.t / 1000L + w[21]);
            this.u = new au(this);
            this.p.schedule(this.u, 0L, this.t);
            return;
         }
      } catch (BeansException var2) {
         throw a(var2);
      }

      a.info(w[0]);
   }

   private void c() {
      // $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/server/audit/AuditArchiver.a Ljava/util/logging/Logger;
      // 003: getstatic com/l7tech/server/audit/AuditArchiver.w [Ljava/lang/String;
      // 006: astore 5
      // 008: aload 5
      // 00a: bipush 18
      // 00c: aaload
      // 00d: invokevirtual java/util/logging/Logger.info (Ljava/lang/String;)V
      // 010: aload 0
      // 011: aload 0
      // 012: getfield com/l7tech/server/audit/AuditArchiver.b Lcom/l7tech/util/ValidatedConfig;
      // 015: aload 5
      // 017: bipush 48
      // 019: aaload
      // 01a: bipush 50
      // 01c: invokevirtual com/l7tech/util/ValidatedConfig.getIntProperty (Ljava/lang/String;I)I
      // 01f: putfield com/l7tech/server/audit/AuditArchiver.l I
      // 022: aload 0
      // 023: aload 0
      // 024: getfield com/l7tech/server/audit/AuditArchiver.b Lcom/l7tech/util/ValidatedConfig;
      // 027: aload 5
      // 029: bipush 38
      // 02b: aaload
      // 02c: bipush 90
      // 02e: invokevirtual com/l7tech/util/ValidatedConfig.getIntProperty (Ljava/lang/String;I)I
      // 031: putfield com/l7tech/server/audit/AuditArchiver.i I
      // 034: aload 0
      // 035: aload 0
      // 036: getfield com/l7tech/server/audit/AuditArchiver.b Lcom/l7tech/util/ValidatedConfig;
      // 039: aload 5
      // 03b: bipush 52
      // 03d: aaload
      // 03e: bipush 75
      // 040: invokevirtual com/l7tech/util/ValidatedConfig.getIntProperty (Ljava/lang/String;I)I
      // 043: putfield com/l7tech/server/audit/AuditArchiver.j I
      // 046: aload 0
      // 047: aload 0
      // 048: getfield com/l7tech/server/audit/AuditArchiver.b Lcom/l7tech/util/ValidatedConfig;
      // 04b: aload 5
      // 04d: bipush 44
      // 04f: aaload
      // 050: bipush 50
      // 052: invokevirtual com/l7tech/util/ValidatedConfig.getIntProperty (Ljava/lang/String;I)I
      // 055: putfield com/l7tech/server/audit/AuditArchiver.k I
      // 058: aload 0
      // 059: aload 0
      // 05a: getfield com/l7tech/server/audit/AuditArchiver.c Lcom/l7tech/util/Config;
      // 05d: aload 5
      // 05f: bipush 22
      // 061: aaload
      // 062: bipush 100
      // 064: invokeinterface com/l7tech/util/Config.getIntProperty (Ljava/lang/String;I)I 3
      // 069: putfield com/l7tech/server/audit/AuditArchiver.m I
      // 06c: aload 0
      // 06d: aload 0
      // 06e: getfield com/l7tech/server/audit/AuditArchiver.c Lcom/l7tech/util/Config;
      // 071: aload 5
      // 073: bipush 30
      // 075: aaload
      // 076: aload 5
      // 078: bipush 9
      // 07a: aaload
      // 07b: invokeinterface com/l7tech/util/Config.getProperty (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; 3
      // 080: invokestatic com/l7tech/server/audit/AuditArchiver$AuditManagementStrategy.toValue (Ljava/lang/String;)Lcom/l7tech/server/audit/AuditArchiver$AuditManagementStrategy;
      // 083: putfield com/l7tech/server/audit/AuditArchiver.o Lcom/l7tech/server/audit/AuditArchiver$AuditManagementStrategy;
      // 086: aload 0
      // 087: getfield com/l7tech/server/audit/AuditArchiver.c Lcom/l7tech/util/Config;
      // 08a: aload 5
      // 08c: bipush 15
      // 08e: aaload
      // 08f: ldc2_w 120
      // 092: invokeinterface com/l7tech/util/Config.getLongProperty (Ljava/lang/String;J)J 4
      // 097: lstore 1
      // 098: lload 1
      // 099: aload 0
      // 09a: getfield com/l7tech/server/audit/AuditArchiver.s J
      // 09d: lcmp
      // 09e: ifeq 0cd
      // 0a1: getstatic com/l7tech/server/audit/AuditArchiver.a Ljava/util/logging/Logger;
      // 0a4: lload 1
      // 0a5: aload 5
      // 0a7: bipush 46
      // 0a9: aaload
      // 0aa: dup_x2
      // 0ab: pop
      // 0ac: aload 5
      // 0ae: bipush 11
      // 0b0: aaload
      // 0b1: invokedynamic makeConcatWithConstants (Ljava/lang/String;JLjava/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" ]
      // 0b6: invokevirtual java/util/logging/Logger.info (Ljava/lang/String;)V
      // 0b9: aload 0
      // 0ba: lload 1
      // 0bb: putfield com/l7tech/server/audit/AuditArchiver.s J
      // 0be: aload 0
      // 0bf: aload 0
      // 0c0: invokevirtual com/l7tech/server/audit/AuditArchiver.a ()Ljava/util/concurrent/locks/Lock;
      // 0c3: putfield com/l7tech/server/audit/AuditArchiver.q Ljava/util/concurrent/locks/Lock;
      // 0c6: goto 0cd
      // 0c9: invokestatic com/l7tech/server/audit/AuditArchiver.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0cc: athrow
      // 0cd: aload 0
      // 0ce: getfield com/l7tech/server/audit/AuditArchiver.c Lcom/l7tech/util/Config;
      // 0d1: getstatic com/l7tech/server/audit/AuditArchiver.w [Ljava/lang/String;
      // 0d4: bipush 8
      // 0d6: aaload
      // 0d7: ldc2_w 600
      // 0da: invokeinterface com/l7tech/util/Config.getLongProperty (Ljava/lang/String;J)J 4
      // 0df: ldc2_w 1000
      // 0e2: lmul
      // 0e3: lstore 3
      // 0e4: lload 3
      // 0e5: lconst_0
      // 0e6: lcmp
      // 0e7: ifge 0ec
      // 0ea: lconst_0
      // 0eb: lstore 3
      // 0ec: aload 0
      // 0ed: getfield com/l7tech/server/audit/AuditArchiver.p Ljava/util/Timer;
      // 0f0: ifnull 113
      // 0f3: lload 3
      // 0f4: aload 0
      // 0f5: getfield com/l7tech/server/audit/AuditArchiver.t J
      // 0f8: lcmp
      // 0f9: ifeq 113
      // 0fc: goto 103
      // 0ff: invokestatic com/l7tech/server/audit/AuditArchiver.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 102: athrow
      // 103: aload 0
      // 104: lload 3
      // 105: putfield com/l7tech/server/audit/AuditArchiver.t J
      // 108: aload 0
      // 109: invokevirtual com/l7tech/server/audit/AuditArchiver.b ()V
      // 10c: goto 113
      // 10f: invokestatic com/l7tech/server/audit/AuditArchiver.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 112: athrow
      // 113: return
      // try (72 -> 96): 97 org/springframework/beans/BeansException
      // try (115 -> 123): 124 org/springframework/beans/BeansException
      // try (118 -> 131): 132 org/springframework/beans/BeansException
   }

   private void d() {
      String[] var3 = w;
      a.info(var3[56]);
      int var1 = this.a(0L);

      try {
         if (var1 >= this.l) {
            this.g.logAndAudit(SystemMessages.AUDIT_ARCHIVER_SOFT_LIMIT_REACHED, new String[]{String.valueOf(var1), String.valueOf(this.l)});
            this.getApplicationContext().publishEvent(new AuditArchiverEvent(this));
         }
      } catch (BeansException var4) {
         throw a(var4);
      }

      try {
         if (var1 < this.j) {
            a.info(w[34]);
            return;
         }
      } catch (BeansException var5) {
         throw a(var5);
      }

      Thread var2 = new Thread(new j(this));
      var2.start();
   }

   private void e() {
      try {
         if (MessageProcessor.SuspendStatus.INSTANCE.isSuspended()) {
            a.warning(w[24]);
            MessageProcessor.SuspendStatus.INSTANCE.resume();
            this.g.logAndAudit(SystemMessages.AUDIT_ARCHIVER_MESSAGE_PROCESSING_RESTARTED);
            this.getApplicationContext().publishEvent(new AuditArchiverEvent(this));
         }
      } catch (BeansException var1) {
         throw a(var1);
      }
   }

   private void a(String var1) {
      try {
         if (!MessageProcessor.SuspendStatus.INSTANCE.isSuspended()) {
            a.severe(w[42] + var1);
            MessageProcessor.SuspendStatus.INSTANCE.suspend(var1);
            this.g.logAndAudit(SystemMessages.AUDIT_ARCHIVER_MESSAGE_PROCESSING_SUSPENDED, new String[]{var1});
            this.getApplicationContext().publishEvent(new AuditArchiverEvent(this));
         }
      } catch (BeansException var2) {
         throw a(var2);
      }
   }

   int a(long 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:
      // 000: aload 0
      // 001: invokevirtual com/l7tech/server/audit/AuditArchiver.f ()J
      // 004: lstore 5
      // 006: lload 5
      // 008: ldc2_w -1
      // 00b: lcmp
      // 00c: ifne 033
      // 00f: aload 0
      // 010: getfield com/l7tech/server/audit/AuditArchiver.g Lcom/l7tech/gateway/common/audit/Audit;
      // 013: getstatic com/l7tech/gateway/common/audit/SystemMessages.AUDIT_ARCHIVER_ERROR Lcom/l7tech/gateway/common/audit/Messages$M;
      // 016: bipush 1
      // 017: anewarray 156
      // 01a: dup
      // 01b: bipush 0
      // 01c: getstatic com/l7tech/server/audit/AuditArchiver.w [Ljava/lang/String;
      // 01f: bipush 10
      // 021: aaload
      // 022: aastore
      // 023: invokeinterface com/l7tech/gateway/common/audit/Audit.logAndAudit (Lcom/l7tech/gateway/common/audit/AuditDetailMessage;[Ljava/lang/String;)V 3
      // 028: aload 0
      // 029: invokevirtual com/l7tech/server/audit/AuditArchiver.g ()V
      // 02c: goto 18b
      // 02f: invokestatic com/l7tech/server/audit/AuditArchiver.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 032: athrow
      // 033: lload 5
      // 035: lconst_0
      // 036: lcmp
      // 037: ifle 171
      // 03a: ldc2_w 100
      // 03d: aload 0
      // 03e: getfield com/l7tech/server/audit/AuditArchiver.f Lcom/l7tech/server/audit/AuditRecordManager;
      // 041: invokeinterface com/l7tech/server/audit/AuditRecordManager.getCurrentUsage ()J 1
      // 046: lmul
      // 047: lload 5
      // 049: ldiv
      // 04a: l2i
      // 04b: istore 3
      // 04c: ldc2_w 100
      // 04f: aload 0
      // 050: getfield com/l7tech/server/audit/AuditArchiver.f Lcom/l7tech/server/audit/AuditRecordManager;
      // 053: invokeinterface com/l7tech/server/audit/AuditRecordManager.getCurrentUsage ()J 1
      // 058: lload 1
      // 059: lsub
      // 05a: lmul
      // 05b: lload 5
      // 05d: ldiv
      // 05e: l2i
      // 05f: istore 4
      // 061: iload 4
      // 063: ifge 069
      // 066: bipush 0
      // 067: istore 4
      // 069: lload 1
      // 06a: lconst_0
      // 06b: lcmp
      // 06c: ifle 08c
      // 06f: getstatic com/l7tech/server/audit/AuditArchiver.a Ljava/util/logging/Logger;
      // 072: iload 4
      // 074: getstatic com/l7tech/server/audit/AuditArchiver.w [Ljava/lang/String;
      // 077: bipush 32
      // 079: aaload
      // 07a: swap
      // 07b: ldc "%"
      // 07d: invokedynamic makeConcatWithConstants (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" ]
      // 082: invokevirtual java/util/logging/Logger.info (Ljava/lang/String;)V
      // 085: goto 0a5
      // 088: invokestatic com/l7tech/server/audit/AuditArchiver.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 08b: athrow
      // 08c: getstatic com/l7tech/server/audit/AuditArchiver.a Ljava/util/logging/Logger;
      // 08f: iload 3
      // 090: getstatic com/l7tech/server/audit/AuditArchiver.w [Ljava/lang/String;
      // 093: astore 9
      // 095: aload 9
      // 097: bipush 29
      // 099: aaload
      // 09a: swap
      // 09b: ldc "%"
      // 09d: invokedynamic makeConcatWithConstants (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" ]
      // 0a2: invokevirtual java/util/logging/Logger.info (Ljava/lang/String;)V
      // 0a5: iload 3
      // 0a6: aload 0
      // 0a7: getfield com/l7tech/server/audit/AuditArchiver.i I
      // 0aa: if_icmplt 13d
      // 0ad: aload 0
      // 0ae: getfield com/l7tech/server/audit/AuditArchiver.o Lcom/l7tech/server/audit/AuditArchiver$AuditManagementStrategy;
      // 0b1: invokevirtual com/l7tech/server/audit/AuditArchiver$AuditManagementStrategy.ordinal ()I
      // 0b4: lookupswitch 90 2 0 90 1 32
      // 0d0: invokestatic com/l7tech/server/audit/AuditArchiver.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0d3: athrow
      // 0d4: aload 0
      // 0d5: getfield com/l7tech/server/audit/AuditArchiver.f Lcom/l7tech/server/audit/AuditRecordManager;
      // 0d8: bipush 1
      // 0d9: invokeinterface com/l7tech/server/audit/AuditRecordManager.setDatabaseFull (Z)V 2
      // 0de: getstatic com/l7tech/server/audit/AuditArchiver.a Ljava/util/logging/Logger;
      // 0e1: iload 3
      // 0e2: aload 0
      // 0e3: getfield com/l7tech/server/audit/AuditArchiver.i I
      // 0e6: getstatic com/l7tech/server/audit/AuditArchiver.w [Ljava/lang/String;
      // 0e9: bipush 14
      // 0eb: aaload
      // 0ec: dup_x2
      // 0ed: pop
      // 0ee: getstatic com/l7tech/server/audit/AuditArchiver.w [Ljava/lang/String;
      // 0f1: bipush 37
      // 0f3: aaload
      // 0f4: swap
      // 0f5: getstatic com/l7tech/server/audit/AuditArchiver.w [Ljava/lang/String;
      // 0f8: bipush 23
      // 0fa: aaload
      // 0fb: invokedynamic makeConcatWithConstants (Ljava/lang/String;ILjava/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" ]
      // 100: invokevirtual java/util/logging/Logger.severe (Ljava/lang/String;)V
      // 103: aload 0
      // 104: invokevirtual com/l7tech/server/audit/AuditArchiver.e ()V
      // 107: goto 14b
      // 10a: invokestatic com/l7tech/server/audit/AuditArchiver.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 10d: athrow
      // 10e: aload 0
      // 10f: getfield com/l7tech/server/audit/AuditArchiver.f Lcom/l7tech/server/audit/AuditRecordManager;
      // 112: bipush 1
      // 113: invokeinterface com/l7tech/server/audit/AuditRecordManager.setDatabaseFull (Z)V 2
      // 118: aload 0
      // 119: iload 3
      // 11a: aload 0
      // 11b: getfield com/l7tech/server/audit/AuditArchiver.i I
      // 11e: getstatic com/l7tech/server/audit/AuditArchiver.w [Ljava/lang/String;
      // 121: astore 9
      // 123: aload 9
      // 125: bipush 59
      // 127: aaload
      // 128: dup_x2
      // 129: pop
      // 12a: aload 9
      // 12c: bipush 26
      // 12e: aaload
      // 12f: swap
      // 130: ldc ")"
      // 132: invokedynamic makeConcatWithConstants (Ljava/lang/String;ILjava/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" ]
      // 137: invokevirtual com/l7tech/server/audit/AuditArchiver.a (Ljava/lang/String;)V
      // 13a: goto 14b
      // 13d: aload 0
      // 13e: getfield com/l7tech/server/audit/AuditArchiver.f Lcom/l7tech/server/audit/AuditRecordManager;
      // 141: bipush 0
      // 142: invokeinterface com/l7tech/server/audit/AuditRecordManager.setDatabaseFull (Z)V 2
      // 147: aload 0
      // 148: invokevirtual com/l7tech/server/audit/AuditArchiver.e ()V
      // 14b: lload 1
      // 14c: lconst_0
      // 14d: lcmp
      // 14e: ifle 15a
      // 151: iload 4
      // 153: goto 15b
      // 156: invokestatic com/l7tech/server/audit/AuditArchiver.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 159: athrow
      // 15a: iload 3
      // 15b: istore 7
      // 15d: aload 0
      // 15e: invokevirtual com/l7tech/server/audit/AuditArchiver.getApplicationContext ()Lorg/springframework/context/ApplicationContext;
      // 161: new com/l7tech/server/event/system/AuditArchiverEvent
      // 164: dup
      // 165: aload 0
      // 166: invokespecial com/l7tech/server/event/system/AuditArchiverEvent.<init> (Ljava/lang/Object;)V
      // 169: invokeinterface org/springframework/context/ApplicationContext.publishEvent (Lorg/springframework/context/ApplicationEvent;)V 2
      // 16e: iload 7
      // 170: ireturn
      // 171: new com/l7tech/objectmodel/FindException
      // 174: dup
      // 175: lload 5
      // 177: getstatic com/l7tech/server/audit/AuditArchiver.w [Ljava/lang/String;
      // 17a: astore 9
      // 17c: aload 9
      // 17e: bipush 4
      // 17f: aaload
      // 180: dup_x2
      // 181: pop
      // 182: invokedynamic makeConcatWithConstants (Ljava/lang/String;J)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" ]
      // 187: invokespecial com/l7tech/objectmodel/FindException.<init> (Ljava/lang/String;)V
      // 18a: athrow
      // 18b: aload 0
      // 18c: invokevirtual com/l7tech/server/audit/AuditArchiver.getApplicationContext ()Lorg/springframework/context/ApplicationContext;
      // 18f: new com/l7tech/server/event/system/AuditArchiverEvent
      // 192: dup
      // 193: aload 0
      // 194: invokespecial com/l7tech/server/event/system/AuditArchiverEvent.<init> (Ljava/lang/Object;)V
      // 197: invokeinterface org/springframework/context/ApplicationContext.publishEvent (Lorg/springframework/context/ApplicationEvent;)V 2
      // 19c: goto 1e6
      // 19f: astore 5
      // 1a1: aload 0
      // 1a2: getfield com/l7tech/server/audit/AuditArchiver.g Lcom/l7tech/gateway/common/audit/Audit;
      // 1a5: getstatic com/l7tech/gateway/common/audit/SystemMessages.AUDIT_ARCHIVER_ERROR Lcom/l7tech/gateway/common/audit/Messages$M;
      // 1a8: bipush 1
      // 1a9: anewarray 156
      // 1ac: dup
      // 1ad: bipush 0
      // 1ae: getstatic com/l7tech/server/audit/AuditArchiver.w [Ljava/lang/String;
      // 1b1: bipush 19
      // 1b3: aaload
      // 1b4: aastore
      // 1b5: aload 5
      // 1b7: invokeinterface com/l7tech/gateway/common/audit/Audit.logAndAudit (Lcom/l7tech/gateway/common/audit/AuditDetailMessage;[Ljava/lang/String;Ljava/lang/Throwable;)V 4
      // 1bc: aload 0
      // 1bd: invokevirtual com/l7tech/server/audit/AuditArchiver.getApplicationContext ()Lorg/springframework/context/ApplicationContext;
      // 1c0: new com/l7tech/server/event/system/AuditArchiverEvent
      // 1c3: dup
      // 1c4: aload 0
      // 1c5: invokespecial com/l7tech/server/event/system/AuditArchiverEvent.<init> (Ljava/lang/Object;)V
      // 1c8: invokeinterface org/springframework/context/ApplicationContext.publishEvent (Lorg/springframework/context/ApplicationEvent;)V 2
      // 1cd: goto 1e6
      // 1d0: astore 8
      // 1d2: aload 0
      // 1d3: invokevirtual com/l7tech/server/audit/AuditArchiver.getApplicationContext ()Lorg/springframework/context/ApplicationContext;
      // 1d6: new com/l7tech/server/event/system/AuditArchiverEvent
      // 1d9: dup
      // 1da: aload 0
      // 1db: invokespecial com/l7tech/server/event/system/AuditArchiverEvent.<init> (Ljava/lang/Object;)V
      // 1de: invokeinterface org/springframework/context/ApplicationContext.publishEvent (Lorg/springframework/context/ApplicationEvent;)V 2
      // 1e3: aload 8
      // 1e5: athrow
      // 1e6: bipush 0
      // 1e7: ireturn
      // try (145 -> 151): 151 com/l7tech/objectmodel/FindException
      // try (83 -> 114): 114 com/l7tech/objectmodel/FindException
      // try (79 -> 87): 87 com/l7tech/objectmodel/FindException
      // try (52 -> 66): 66 com/l7tech/objectmodel/FindException
      // try (3 -> 22): 22 com/l7tech/objectmodel/FindException
      // try (0 -> 155): 185 com/l7tech/objectmodel/FindException
      // try (164 -> 177): 185 com/l7tech/objectmodel/FindException
      // try (0 -> 155): 207 null
      // try (164 -> 177): 207 null
      // try (185 -> 199): 207 null
      // try (207 -> 208): 207 null
   }

   private long f() throws FindException {
      long var1 = this.f.getMaxTableSpace();
      if (var1 == -1L) {
         int var3 = this.c.getIntProperty(w[55], -1);
         if (var3 != -1) {
            var1 = var3 * 1048576L;
         }
      }

      return var1;
   }

   private void g() {
      try {
         if (this.p != null) {
            this.g.logAndAudit(SystemMessages.AUDIT_ARCHIVER_ERROR, new String[]{w[28]});
            this.p.cancel();
            this.p = null;
         }
      } catch (BeansException var1) {
         throw a(var1);
      }
   }

   private void h() {
      this.g.logAndAudit(SystemMessages.AUDIT_ARCHIVER_JOB_STARTED);

      while (true) {
         long var1 = Long.MIN_VALUE;
         long var3 = Long.MIN_VALUE;
         long var5 = 0L;

         while (this.k <= this.a(var5)) {
            long var7;
            try {
               var7 = this.f.getMinMills(var3);
            } catch (Exception var22) {
               Audit var10000 = this.g;
               M var10001 = SystemMessages.AUDIT_ARCHIVER_ERROR;
               String[] var10002 = new String[1];
               String[] var20 = w;
               var10002[0] = var20[6];
               var10000.logAndAudit(var10001, var10002, var22);
               break;
            }

            if (var1 == Long.MIN_VALUE) {
               var1 = var7;
            }

            try {
               if (var7 == -1L) {
                  this.g.logAndAudit(SystemMessages.AUDIT_ARCHIVER_ERROR, new String[]{w[25]});
                  break;
               }
            } catch (Exception var21) {
               throw a(var21);
            }

            long var36;
            int var41;
            label88: {
               try {
                  var36 = var7;
                  if (this.m > 10000) {
                     var41 = 10000;
                     break label88;
                  }
               } catch (Exception var24) {
                  throw a(var24);
               }

               var41 = this.m;
            }

            long var9 = var36 + var41;

            try {
               if (a.isLoggable(Level.FINE)) {
                  long var12 = var9;
                  long var14 = var7;
                  String[] var31 = w;
                  a.fine(var31[41] + var14 + var31[5] + var12 + "]");
               }

               AuditExporter.ExportedInfo var11 = this.v.archiveRecords(var7, var9);
               if (var11 == null) {
                  break;
               }

               var3 = var11.getLatestTime();
               var5 += var11.getTransferredBytes();
            } catch (Exception var23) {
               Audit var37 = this.g;
               M var42 = SystemMessages.AUDIT_ARCHIVER_ERROR;
               String[] var46 = new String[1];
               String[] var30 = w;
               var46[0] = var30[16];
               var37.logAndAudit(var42, var46, var23);
               break;
            }
         }

         try {
            try {
               if (var1 == Long.MIN_VALUE && var3 == Long.MIN_VALUE) {
                  break;
               }
            } catch (BeansException var25) {
               throw a(var25);
            }

            label126: {
               try {
                  if (var3 < var1 || var3 == Long.MIN_VALUE) {
                     break label126;
                  }
               } catch (Exception var27) {
                  throw a(var27);
               }

               label105: {
                  label104: {
                     try {
                        if (!this.v.flush()) {
                           break label104;
                        }

                        if (!a.isLoggable(Level.FINE)) {
                           break label105;
                        }
                     } catch (Exception var26) {
                        throw a(var26);
                     }

                     long var16 = var3;
                     long var18 = var1;
                     String[] var33 = w;
                     a.fine(var33[43] + var18 + var33[58] + var16 + "]");
                     break label105;
                  }

                  Audit var39 = this.g;
                  M var44 = SystemMessages.AUDIT_ARCHIVER_ERROR;
                  String[] var48 = new String[1];
                  String[] var34 = w;
                  var48[0] = var34[35];
                  var39.logAndAudit(var44, var48);
                  break;
               }

               this.f.deleteRangeByTime(var1, var3);
               this.g.logAndAudit(SystemMessages.AUDIT_ARCHIVER_JOB_ARCHIVED, new String[]{Long.toString(var1), Long.toString(var3)});
               Thread.sleep(15000L);
               continue;
            }

            Audit var40 = this.g;
            M var45 = SystemMessages.AUDIT_ARCHIVER_ERROR;
            String[] var49 = new String[1];
            String[] var35 = w;
            var49[0] = var35[53];
            var40.logAndAudit(var45, var49);
            break;
         } catch (SQLException var28) {
            Audit var38 = this.g;
            M var43 = SystemMessages.AUDIT_ARCHIVER_ERROR;
            String[] var47 = new String[1];
            String[] var32 = w;
            var47[0] = var32[49];
            var38.logAndAudit(var43, var47, var28);
         } catch (InterruptedException var29) {
            a.warning(w[1]);
         }
      }

      this.g.logAndAudit(SystemMessages.AUDIT_ARCHIVER_JOB_COMPLETE);
      this.getApplicationContext().publishEvent(new AuditArchiverEvent(this));
   }

   public void setApplicationContext(ApplicationContext var1) throws BeansException {
      this.r = var1;
   }

   public ApplicationContext getApplicationContext() {
      return this.r;
   }

   @Override
   public void propertyChange(PropertyChangeEvent var1) {
      try {
         if (this.h) {
            this.c();
         }
      } catch (BeansException var2) {
         throw a(var2);
      }
   }

   public void runNow() {
      try {
         if (this.h) {
            this.g.logAndAudit(SystemMessages.AUDIT_ARCHIVER_IMMEDIATE_TRIGGER);
            this.b();
            this.getApplicationContext().publishEvent(new AuditArchiverEvent(this));
            return;
         }
      } catch (BeansException var1) {
         throw a(var1);
      }

      this.g.logAndAudit(SystemMessages.AUDIT_ARCHIVER_ERROR, new String[]{w[31]});
   }

   private ValidatedConfig a(Config var1, Logger var2) {
      ValidatedConfig var3 = new ValidatedConfig(var1, var2);
      String[] var4 = w;
      var3.setMinimumValue(var4[13], 0);
      var3.setMinimumValue(var4[54], 0);
      var3.setMinimumValue(var4[45], 0);
      var3.setMaximumValue(var4[17], 0);
      var3.setMaximumValue(var4[13], 100);
      var3.setMaximumValue(var4[54], 100);
      var3.setMaximumValue(var4[45], 100);
      var3.setMaximumValue(var4[17], 100);
      return var3;
   }

   static {
      String[] var5 = new String[60];
      int var3 = 0;
      String var2 = ">KZG[)(\r]VGYl\u001b_JWCJ{I\u001bWMOMe\f\u001b\u001046PJK]{\u001c\u000fJ[J\u000f~\u0001\u0016R[\u000eXh\u0000\u000bWPI\u000fo\u0006\r\u001esW|X%_MJO[zI\u000bQ\u001e[_m\b\u000b[\u0010\u0006\u001cQPHFn\u0018\u001eKZG['\b\r]VGYl\u001b6Pn\\@n\u001b\u001aMM16PHOC`\r_H_BZlI\u001b[XGAl\r_XQ\\\u000fd\b\u0007\u001eW@Af\r\u001d\u001eJOMe\f\fN_MJ3I\u0003_\u0004\u001e,:LLA])\u000e\u001aJJGAnI\u0013QIK\\}I\u001eKZG[)\u001b\u001a]Q\\K)\u0006\u001dT[M[)\u0000\u001b\u0010\u0002\u001eL\u0018\u001eKZG[H\u001b\u001cVWXJ{=\u0016S[\\\u007fl\u001b\u0016QZ\u0004,jq~'2_F\u000eFg\u0007\u0010Z\\\u000e[h\u000b\u0013[M^Nj\f_MWTJ)\u0007\u0010J\u001eJJo\u0000\u0011[Z\u0000\t_SW@Z}\f\f\u0010%\u001cQS\u0001C>\u001d\u001a]V\u0001\\l\u001b\t[L\u0001N|\r\u0016J\u0011oZm\u0000\u000b\u007fLMG`\u001f\u001aL\u001e\u001eKZG[H\u001b\u001cVWXJ{:\u0017KJJ@~\u0007+VLK\\a\u0006\u0013Z<>KZG[)\u001b\u001a]Q\\KzI\u001b_JOMh\u001a\u001a\u001eZG\\bI\nM_IJ)\f\u0007][KKl\r_[SK]n\f\u0011]G\u000eC`\u0004\u0016J\u001e\u0006\u0019\u001eKZG[H\u001b\u001cVWXJ{:\u000b_RK{`\u0004\u001aQKZ\u001e:LLA])\b\r]VGY`\u0007\u0018\u001e_[K`\u001d_L[M@{\r\f\u0010\u001d\u001eKZG[H\u001b\u001cVWXJ{>\u001eLPGAn=\u0017L[]Gf\u0005\u001b\u0018-[RANm\u0000\u0011Y\u001eM@g\u000f\u0016YK\\N}\u0000\u0010P\u0010!_]Q[CmI\u0011QJ\u000e]l\u001d\rW[XJ)\n\nLLKA}I\nM_IJ\u000e\u001eKZG[f\u001b9_]Z@{\u0010\t_M[M@g\r\f\u0010\u0016\u001eKZG[H\u001b\u001cVWXJ{+\u001eJ]F|`\u0013\u001a#V\u0010\u001eoZm\u0000\u000b\u001eLKLf\u001b\u001bM\u001eYFe\u0005_PQZ\u000fk\f_M_XJmH%-[MZN{\u001d\u0016PY\u000ehh\u001d\u001aI_W\u000fd\f\fM_IJ)\u0019\rQ]K\\z\u0000\u0011Y,:LLA])\u000e\u001aJJGAnI\u0013QIK\\}I\u001eKZG[)\u001b\u001a]Q\\K)\u0006\u001dT[M[)\u0000\u001b\u0010\u0004_\u0000\u0003\u000e)+WSK])\u0000\f\u001e]OAj\f\u0013R[J\u0014)\u001c\u0011_\\BJ)\u001d\u0010\u001eLK\\j\u0001\u001aZKBJ( <_PMJe\u0005\u0016PY\u000en|\r\u0016J\u001eo]j\u0001\u0016H[\\\u000f}\u0000\u0012[L\u0000 <KL\\Jg\u001d_Z_ZNk\b\f[\u001e]_h\n\u001a\u001eK]Nn\f_WM\u000e\u0017\u001eKZG[D\b\u0011_YKBl\u0007\u000bmJ\\N}\f\u0018G\u0017>KZG[)\b\r]VGYl\u001b_ZW]Nk\u0005\u001aZ\"/LQDJj\u001d\u001aZ\u001eJN}\b\u001d_MK\u000fz\u0019\u001e][\u000eZz\b\u0018[\u001eG\\)(Wl[\u0007|j\u0001\u001aZKBFg\u000e_\u007fKJF}I>L]FF\u007f\f\r\u001eJGBl\u001b_XQ\\\u000f<=[RAX)\u001a\u000b_LZph\u001b\u001cVWXJ)\u001d\u0017L[]Gf\u0005\u001b\u0012\u001e@@}I\fJ_\\[`\u0007\u0018\u001e_\\La\u0000\t[L\u000e[a\u001b\u001a_Z\u0000::LLA])\u000f\u0013KMFFg\u000e__LMG`\u001f\u001a\u001eLKLl\u0000\t[L\u0015\u000fG&+\u001eZKCl\u001d\u0016PY\u000eNg\u0010_L[M@{\r\f\u0010>>LY[Bl\u0007\u000b\u001eXA]))1QJ`Ze\u0005_N_\\Nd\f\u000b[L\u000e\b,\u001aX\u001eQH\u000f,\u001aQ\u001bM\u000eB|\u001a\u000b\u001ePA[)\u000b\u001a\u001eP[Ce\u0004_\u0000\u0003\u000e\u001e\u001eKZG[H\u001b\u001cVWXJ{:\u0017KJJ@~\u0007+VLK\\a\u0006\u0013Z\u0003\u001cNS\u0006CWPG[7&>L]FF\u007f\u0000\u0011Y\u001eOZm\u0000\u000b\u001eLKLf\u001b\u001bM\u001eYF}\u0001_JWCJ)\u0000\u0011\u001ee',KM^Jg\r\u0016PY\u000ehh\u001d\u001aI_W\u000fd\f\fM_IJ)\u0019\rQ]K\\z\u0000\u0011Y\u0004\u000e%;[RK[`\u0007\u0018\u001e_[K`\u001d_L[M@{\r\f\u001eIG[aI\u000bWSK\u000f`\u0007_e\u001a\u001eKZG[H\u001b\u001cVWXJ{:\u000bQNzG{\f\fVQBK\u001a\u001eKZG[H\u001b\u001cVWXJ{:\u000bQNzG{\f\fVQBK(,[JZFg\u000e_P[Y\u000fj\u0005\nMJK])\u0005\u0010]U\u000e\\}\b\u0013[\u001eZFd\f\u0010KJ\u0014\u000f\u0002\u000bS\u001d\u001eKZG[H\u001b\u001cVWXJ{>\u001eLPGAn=\u0017L[]Gf\u0005\u001b\u001d:LLA])\r\u001aR[ZFg\u000e__KJF}I\r[]A]m\u001aQ\u001b>KZG[)(\r]VGYl\u001b_WPG[`\b\u0013WDKK'\u0019\u001eKZG[H\u001b\u001cVWXJ{:\u000b_RK{`\u0004\u001aQKZ\u001b\u001eKZG[H\u001b\u001cVWXJ{:\u000b_LZ{a\u001b\u001aMVACm91Q\u001e\\Jj\u0006\rZM\u000eXl\u001b\u001a\u001eMOYl\r_\\G\u000e[a\f_]Q@I`\u000e\nL[J\u000fh\u001b\u001cVWXJ)\u001b\u001a][GYl\u001b^\u001b\u001eKZG[H\u001b\u001cVWXJ{:\u000b_LZ{a\u001b\u001aMVACm%\u001eKZG[H\u001b\u001cVWXJ{G\u001b\\\u0010JJo\b\nRJjFz\u0002+VLK\\a\u0006\u0013Z\u001e,J_\\[`\u0007\u0018\u001e\u007f[K`\u001d_\u007fLMG`\u001f\u001aL\u001eMGl\n\u0014\u0010\u0003\u001eLS";
      int var4 = ">KZG[)(\r]VGYl\u001b_JWCJ{I\u001bWMOMe\f\u001b\u001046PJK]{\u001c\u000fJ[J\u000f~\u0001\u0016R[\u000eXh\u0000\u000bWPI\u000fo\u0006\r\u001esW|X%_MJO[zI\u000bQ\u001e[_m\b\u000b[\u0010\u0006\u001cQPHFn\u0018\u001eKZG['\b\r]VGYl\u001b6Pn\\@n\u001b\u001aMM16PHOC`\r_H_BZlI\u001b[XGAl\r_XQ\\\u000fd\b\u0007\u001eW@Af\r\u001d\u001eJOMe\f\fN_MJ3I\u0003_\u0004\u001e,:LLA])\u000e\u001aJJGAnI\u0013QIK\\}I\u001eKZG[)\u001b\u001a]Q\\K)\u0006\u001dT[M[)\u0000\u001b\u0010\u0002\u001eL\u0018\u001eKZG[H\u001b\u001cVWXJ{=\u0016S[\\\u007fl\u001b\u0016QZ\u0004,jq~'2_F\u000eFg\u0007\u0010Z\\\u000e[h\u000b\u0013[M^Nj\f_MWTJ)\u0007\u0010J\u001eJJo\u0000\u0011[Z\u0000\t_SW@Z}\f\f\u0010%\u001cQS\u0001C>\u001d\u001a]V\u0001\\l\u001b\t[L\u0001N|\r\u0016J\u0011oZm\u0000\u000b\u007fLMG`\u001f\u001aL\u001e\u001eKZG[H\u001b\u001cVWXJ{:\u0017KJJ@~\u0007+VLK\\a\u0006\u0013Z<>KZG[)\u001b\u001a]Q\\KzI\u001b_JOMh\u001a\u001a\u001eZG\\bI\nM_IJ)\f\u0007][KKl\r_[SK]n\f\u0011]G\u000eC`\u0004\u0016J\u001e\u0006\u0019\u001eKZG[H\u001b\u001cVWXJ{:\u000b_RK{`\u0004\u001aQKZ\u001e:LLA])\b\r]VGY`\u0007\u0018\u001e_[K`\u001d_L[M@{\r\f\u0010\u001d\u001eKZG[H\u001b\u001cVWXJ{>\u001eLPGAn=\u0017L[]Gf\u0005\u001b\u0018-[RANm\u0000\u0011Y\u001eM@g\u000f\u0016YK\\N}\u0000\u0010P\u0010!_]Q[CmI\u0011QJ\u000e]l\u001d\rW[XJ)\n\nLLKA}I\nM_IJ\u000e\u001eKZG[f\u001b9_]Z@{\u0010\t_M[M@g\r\f\u0010\u0016\u001eKZG[H\u001b\u001cVWXJ{+\u001eJ]F|`\u0013\u001a#V\u0010\u001eoZm\u0000\u000b\u001eLKLf\u001b\u001bM\u001eYFe\u0005_PQZ\u000fk\f_M_XJmH%-[MZN{\u001d\u0016PY\u000ehh\u001d\u001aI_W\u000fd\f\fM_IJ)\u0019\rQ]K\\z\u0000\u0011Y,:LLA])\u000e\u001aJJGAnI\u0013QIK\\}I\u001eKZG[)\u001b\u001a]Q\\K)\u0006\u001dT[M[)\u0000\u001b\u0010\u0004_\u0000\u0003\u000e)+WSK])\u0000\f\u001e]OAj\f\u0013R[J\u0014)\u001c\u0011_\\BJ)\u001d\u0010\u001eLK\\j\u0001\u001aZKBJ( <_PMJe\u0005\u0016PY\u000en|\r\u0016J\u001eo]j\u0001\u0016H[\\\u000f}\u0000\u0012[L\u0000 <KL\\Jg\u001d_Z_ZNk\b\f[\u001e]_h\n\u001a\u001eK]Nn\f_WM\u000e\u0017\u001eKZG[D\b\u0011_YKBl\u0007\u000bmJ\\N}\f\u0018G\u0017>KZG[)\b\r]VGYl\u001b_ZW]Nk\u0005\u001aZ\"/LQDJj\u001d\u001aZ\u001eJN}\b\u001d_MK\u000fz\u0019\u001e][\u000eZz\b\u0018[\u001eG\\)(Wl[\u0007|j\u0001\u001aZKBFg\u000e_\u007fKJF}I>L]FF\u007f\f\r\u001eJGBl\u001b_XQ\\\u000f<=[RAX)\u001a\u000b_LZph\u001b\u001cVWXJ)\u001d\u0017L[]Gf\u0005\u001b\u0012\u001e@@}I\fJ_\\[`\u0007\u0018\u001e_\\La\u0000\t[L\u000e[a\u001b\u001a_Z\u0000::LLA])\u000f\u0013KMFFg\u000e__LMG`\u001f\u001a\u001eLKLl\u0000\t[L\u0015\u000fG&+\u001eZKCl\u001d\u0016PY\u000eNg\u0010_L[M@{\r\f\u0010>>LY[Bl\u0007\u000b\u001eXA]))1QJ`Ze\u0005_N_\\Nd\f\u000b[L\u000e\b,\u001aX\u001eQH\u000f,\u001aQ\u001bM\u000eB|\u001a\u000b\u001ePA[)\u000b\u001a\u001eP[Ce\u0004_\u0000\u0003\u000e\u001e\u001eKZG[H\u001b\u001cVWXJ{:\u0017KJJ@~\u0007+VLK\\a\u0006\u0013Z\u0003\u001cNS\u0006CWPG[7&>L]FF\u007f\u0000\u0011Y\u001eOZm\u0000\u000b\u001eLKLf\u001b\u001bM\u001eYF}\u0001_JWCJ)\u0000\u0011\u001ee',KM^Jg\r\u0016PY\u000ehh\u001d\u001aI_W\u000fd\f\fM_IJ)\u0019\rQ]K\\z\u0000\u0011Y\u0004\u000e%;[RK[`\u0007\u0018\u001e_[K`\u001d_L[M@{\r\f\u001eIG[aI\u000bWSK\u000f`\u0007_e\u001a\u001eKZG[H\u001b\u001cVWXJ{:\u000bQNzG{\f\fVQBK\u001a\u001eKZG[H\u001b\u001cVWXJ{:\u000bQNzG{\f\fVQBK(,[JZFg\u000e_P[Y\u000fj\u0005\nMJK])\u0005\u0010]U\u000e\\}\b\u0013[\u001eZFd\f\u0010KJ\u0014\u000f\u0002\u000bS\u001d\u001eKZG[H\u001b\u001cVWXJ{>\u001eLPGAn=\u0017L[]Gf\u0005\u001b\u001d:LLA])\r\u001aR[ZFg\u000e__KJF}I\r[]A]m\u001aQ\u001b>KZG[)(\r]VGYl\u001b_WPG[`\b\u0013WDKK'\u0019\u001eKZG[H\u001b\u001cVWXJ{:\u000b_RK{`\u0004\u001aQKZ\u001b\u001eKZG[H\u001b\u001cVWXJ{:\u000b_LZ{a\u001b\u001aMVACm91Q\u001e\\Jj\u0006\rZM\u000eXl\u001b\u001a\u001eMOYl\r_\\G\u000e[a\f_]Q@I`\u000e\nL[J\u000fh\u001b\u001cVWXJ)\u001b\u001a][GYl\u001b^\u001b\u001eKZG[H\u001b\u001cVWXJ{:\u000b_LZ{a\u001b\u001aMVACm%\u001eKZG[H\u001b\u001cVWXJ{G\u001b\\\u0010JJo\b\nRJjFz\u0002+VLK\\a\u0006\u0013Z\u001e,J_\\[`\u0007\u0018\u001e\u007f[K`\u001d_\u007fLMG`\u001f\u001aL\u001eMGl\n\u0014\u0010\u0003\u001eLS"
         .length();
      char var1 = 30;
      int var7 = -1;

      label24:
      while (true) {
         byte var10000 = 3;
         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) {
                     w = var5;
                     a = Logger.getLogger(AuditArchiver.class.getName());
                     return;
                  }

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

                  var2 = "\u0018CY<y\f\u001d\u0000\u001cn\\]\u001a\u0016\u001b\f=\u000e\\\u0018\r\b\n/]]Y\u001d\u0000\u001b%\u000eM\n\u0018\u000e\rnK@\u001a\u001c\f\f+J\u0018\u001c\u0014\f\u001a)KV\u001a\u0000I\u0004'CQ\rYA";
                  var4 = "\u0018CY<y\f\u001d\u0000\u001cn\\]\u001a\u0016\u001b\f=\u000e\\\u0018\r\b\n/]]Y\u001d\u0000\u001b%\u000eM\n\u0018\u000e\rnK@\u001a\u001c\f\f+J\u0018\u001c\u0014\f\u001a)KV\u001a\u0000I\u0004'CQ\rYA"
                     .length();
                  var1 = 3;
                  var7 = -1;
            }

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

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

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

      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 -> 124;
            case 1 -> 61;
            case 2 -> 61;
            case 3 -> 45;
            case 4 -> 44;
            case 5 -> 10;
            default -> 106;
         });
      }

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

   private enum AuditManagementStrategy {
      STOP,
      BYPASS,
      DELETE;

      public static AuditArchiver.AuditManagementStrategy toValue(String var0) {
         try {
            return valueOf(var0);
         } catch (IllegalArgumentException var2) {
            return STOP;
         }
      }

      // $VF: Failed to inline enum fields
      // 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!)
      static {
         String[] var0 = new String[3];
         int var4 = 0;
         String var3 = "s\u0004G*pm\u0004b\tX;\u0006u\u0018[.w{";
         int var5 = "s\u0004G*pm\u0004b\tX;\u0006u\u0018[.w{".length();
         char var2 = 6;
         int var1 = -1;

         while (true) {
            String var10002 = a(91, a(var3.substring(++var1, var1 + var2)));
            byte var10001 = -1;
            var0[var4++] = var10002;
            if ((var1 += var2) >= var5) {
               STOP = new AuditArchiver.AuditManagementStrategy();
               BYPASS = new AuditArchiver.AuditManagementStrategy();
               DELETE = new AuditArchiver.AuditManagementStrategy();
               return;
            }

            var2 = var3.charAt(var1);
         }
      }

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

         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 -> 106;
               case 1 -> 6;
               case 2 -> 76;
               case 3 -> 48;
               case 4 -> 120;
               case 5 -> 101;
               default -> 42;
            });
         }

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