package com.l7tech.server;

import com.l7tech.policy.assertion.AssertionStatus;
import com.l7tech.server.message.PolicyEnforcementContext;
import java.util.concurrent.Callable;

class as implements Callable<AssertionStatus> {
   final PolicyEnforcementContext val$context;
   final AssertionStatus[] val$status;
   final MessageProcessorMediator val$messageProcessorMediator;
   final MessageProcessor this$0;

   as(MessageProcessor var1, PolicyEnforcementContext var2, AssertionStatus[] var3, MessageProcessorMediator var4) {
      this.this$0 = var1;
      this.val$context = var2;
      this.val$status = var3;
      this.val$messageProcessorMediator = var4;
   }

   public AssertionStatus call() throws Exception {
      // $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: invokestatic com/l7tech/server/audit/AuditContextFactory.getCurrent ()Lcom/l7tech/server/audit/AuditContext;
      // 03: astore 1
      // 04: aload 0
      // 05: getfield com/l7tech/server/as.val$context Lcom/l7tech/server/message/PolicyEnforcementContext;
      // 08: aload 1
      // 09: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.setAuditContext (Lcom/l7tech/server/audit/AuditContext;)V 2
      // 0e: aload 0
      // 0f: getfield com/l7tech/server/as.val$status [Lcom/l7tech/policy/assertion/AssertionStatus;
      // 12: bipush 0
      // 13: aload 0
      // 14: getfield com/l7tech/server/as.this$0 Lcom/l7tech/server/MessageProcessor;
      // 17: aload 0
      // 18: getfield com/l7tech/server/as.val$context Lcom/l7tech/server/message/PolicyEnforcementContext;
      // 1b: aload 0
      // 1c: getfield com/l7tech/server/as.val$messageProcessorMediator Lcom/l7tech/server/MessageProcessorMediator;
      // 1f: invokevirtual com/l7tech/server/MessageProcessor.a (Lcom/l7tech/server/message/PolicyEnforcementContext;Lcom/l7tech/server/MessageProcessorMediator;)Lcom/l7tech/policy/assertion/AssertionStatus;
      // 22: aastore
      // 23: aload 0
      // 24: getfield com/l7tech/server/as.val$messageProcessorMediator Lcom/l7tech/server/MessageProcessorMediator;
      // 27: aload 0
      // 28: getfield com/l7tech/server/as.val$status [Lcom/l7tech/policy/assertion/AssertionStatus;
      // 2b: bipush 0
      // 2c: aaload
      // 2d: invokeinterface com/l7tech/server/MessageProcessorMediator.processMessagePostReallyProcessMessage (Lcom/l7tech/policy/assertion/AssertionStatus;)V 2
      // 32: aload 0
      // 33: getfield com/l7tech/server/as.val$status [Lcom/l7tech/policy/assertion/AssertionStatus;
      // 36: bipush 0
      // 37: aaload
      // 38: astore 2
      // 39: aload 0
      // 3a: getfield com/l7tech/server/as.this$0 Lcom/l7tech/server/MessageProcessor;
      // 3d: aload 0
      // 3e: getfield com/l7tech/server/as.val$context Lcom/l7tech/server/message/PolicyEnforcementContext;
      // 41: aload 0
      // 42: getfield com/l7tech/server/as.val$status [Lcom/l7tech/policy/assertion/AssertionStatus;
      // 45: bipush 0
      // 46: aaload
      // 47: aload 0
      // 48: getfield com/l7tech/server/as.val$messageProcessorMediator Lcom/l7tech/server/MessageProcessorMediator;
      // 4b: invokevirtual com/l7tech/server/MessageProcessor.a (Lcom/l7tech/server/message/PolicyEnforcementContext;Lcom/l7tech/policy/assertion/AssertionStatus;Lcom/l7tech/server/MessageProcessorMediator;)V
      // 4e: invokestatic com/l7tech/server/audit/AuditLogFormatter.getContextVariablesUsed ()[Ljava/lang/String;
      // 51: astore 3
      // 52: aload 3
      // 53: ifnull 80
      // 56: aload 3
      // 57: arraylength
      // 58: ifle 80
      // 5b: goto 62
      // 5e: invokestatic com/l7tech/server/as.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 61: athrow
      // 62: aload 1
      // 63: aload 0
      // 64: getfield com/l7tech/server/as.val$context Lcom/l7tech/server/message/PolicyEnforcementContext;
      // 67: aload 3
      // 68: aload 0
      // 69: getfield com/l7tech/server/as.this$0 Lcom/l7tech/server/MessageProcessor;
      // 6c: getfield com/l7tech/server/MessageProcessor.x Lcom/l7tech/server/audit/Auditor;
      // 6f: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getVariableMap ([Ljava/lang/String;Lcom/l7tech/gateway/common/audit/Audit;)Ljava/util/Map; 3
      // 74: invokeinterface com/l7tech/server/audit/AuditContext.setContextVariables (Ljava/util/Map;)V 2
      // 79: goto 80
      // 7c: invokestatic com/l7tech/server/as.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 7f: athrow
      // 80: aload 2
      // 81: areturn
      // 82: astore 4
      // 84: aload 0
      // 85: getfield com/l7tech/server/as.this$0 Lcom/l7tech/server/MessageProcessor;
      // 88: aload 0
      // 89: getfield com/l7tech/server/as.val$context Lcom/l7tech/server/message/PolicyEnforcementContext;
      // 8c: aload 0
      // 8d: getfield com/l7tech/server/as.val$status [Lcom/l7tech/policy/assertion/AssertionStatus;
      // 90: bipush 0
      // 91: aaload
      // 92: aload 0
      // 93: getfield com/l7tech/server/as.val$messageProcessorMediator Lcom/l7tech/server/MessageProcessorMediator;
      // 96: invokevirtual com/l7tech/server/MessageProcessor.a (Lcom/l7tech/server/message/PolicyEnforcementContext;Lcom/l7tech/policy/assertion/AssertionStatus;Lcom/l7tech/server/MessageProcessorMediator;)V
      // 99: invokestatic com/l7tech/server/audit/AuditLogFormatter.getContextVariablesUsed ()[Ljava/lang/String;
      // 9c: astore 5
      // 9e: aload 5
      // a0: ifnull cf
      // a3: aload 5
      // a5: arraylength
      // a6: ifle cf
      // a9: goto b0
      // ac: invokestatic com/l7tech/server/as.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // af: athrow
      // b0: aload 1
      // b1: aload 0
      // b2: getfield com/l7tech/server/as.val$context Lcom/l7tech/server/message/PolicyEnforcementContext;
      // b5: aload 5
      // b7: aload 0
      // b8: getfield com/l7tech/server/as.this$0 Lcom/l7tech/server/MessageProcessor;
      // bb: getfield com/l7tech/server/MessageProcessor.x Lcom/l7tech/server/audit/Auditor;
      // be: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getVariableMap ([Ljava/lang/String;Lcom/l7tech/gateway/common/audit/Audit;)Ljava/util/Map; 3
      // c3: invokeinterface com/l7tech/server/audit/AuditContext.setContextVariables (Ljava/util/Map;)V 2
      // c8: goto cf
      // cb: invokestatic com/l7tech/server/as.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // ce: athrow
      // cf: aload 4
      // d1: athrow
      // try (6 -> 29): 64 null
      // try (44 -> 59): 60 java/lang/Exception
      // try (42 -> 47): 48 java/lang/Exception
      // try (64 -> 65): 64 null
      // try (78 -> 83): 84 java/lang/Exception
      // try (80 -> 95): 96 java/lang/Exception
   }

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