package com.l7tech.server.audit;

import com.l7tech.common.mime.ContentTypeHeader;
import com.l7tech.common.mime.PartInfo;
import com.l7tech.gateway.common.audit.AuditDetail;
import com.l7tech.gateway.common.audit.MessageSummaryAuditDetail;
import com.l7tech.gateway.common.audit.MessageSummaryAuditRecord;
import com.l7tech.gateway.common.mapping.MessageContextMapping;
import com.l7tech.identity.IdentityProvider;
import com.l7tech.identity.User;
import com.l7tech.message.Message;
import com.l7tech.message.MimeKnob;
import com.l7tech.objectmodel.Goid;
import com.l7tech.policy.assertion.AssertionStatus;
import com.l7tech.policy.assertion.credential.LoginCredentials;
import com.l7tech.security.token.SecurityTokenType;
import com.l7tech.server.identity.IdentityProviderFactory;
import com.l7tech.server.mapping.MessageContextMappingManager;
import com.l7tech.server.message.PolicyEnforcementContext;
import com.l7tech.util.Charsets;
import com.l7tech.util.ConfigFactory;
import com.l7tech.util.IOUtils;
import com.l7tech.util.Pair;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.nio.charset.Charset;
import java.text.MessageFormat;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.wsdl.Operation;

public class MessageSummaryAuditFactory implements PropertyChangeListener {
   private final String a;
   private static final Logger b;
   private static final Charset c;
   private MessageContextMappingManager d;
   private boolean e;
   private IdentityProviderFactory f;
   private static final String[] g;

   public MessageSummaryAuditFactory(String var1) {
      if (var1 == null) {
         String[] var2 = g;
         throw new IllegalArgumentException(var2[13]);
      }

      this.a = var1;
      this.e = ConfigFactory.getBooleanProperty(g[3], false);
   }

   public MessageSummaryAuditRecord makeEvent(PolicyEnforcementContext param1, AssertionStatus param2) {
      // $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: aconst_null
      // 001: astore 3
      // 002: bipush -1
      // 003: istore 4
      // 005: aconst_null
      // 006: astore 5
      // 008: bipush -1
      // 009: istore 6
      // 00b: aconst_null
      // 00c: astore 7
      // 00e: aconst_null
      // 00f: astore 8
      // 011: aconst_null
      // 012: astore 9
      // 014: getstatic com/l7tech/gateway/common/service/PublishedService.DEFAULT_GOID Lcom/l7tech/objectmodel/Goid;
      // 017: astore 10
      // 019: aconst_null
      // 01a: astore 11
      // 01c: aconst_null
      // 01d: astore 13
      // 01f: aconst_null
      // 020: astore 14
      // 022: aload 1
      // 023: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getService ()Lcom/l7tech/gateway/common/service/PublishedService; 1
      // 028: astore 15
      // 02a: aload 15
      // 02c: ifnull 03d
      // 02f: aload 15
      // 031: invokevirtual com/l7tech/gateway/common/service/PublishedService.getGoid ()Lcom/l7tech/objectmodel/Goid;
      // 034: astore 10
      // 036: aload 15
      // 038: invokevirtual com/l7tech/gateway/common/service/PublishedService.displayName ()Ljava/lang/String;
      // 03b: astore 11
      // 03d: aload 1
      // 03e: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getDefaultAuthenticationContext ()Lcom/l7tech/server/message/AuthenticationContext; 1
      // 043: astore 16
      // 045: aload 16
      // 047: invokevirtual com/l7tech/server/message/AuthenticationContext.isAuthenticated ()Z
      // 04a: istore 12
      // 04c: iload 12
      // 04e: ifeq 155
      // 051: new java/lang/StringBuffer
      // 054: dup
      // 055: invokespecial java/lang/StringBuffer.<init> ()V
      // 058: astore 18
      // 05a: new java/lang/StringBuffer
      // 05d: dup
      // 05e: invokespecial java/lang/StringBuffer.<init> ()V
      // 061: astore 19
      // 063: aload 16
      // 065: invokevirtual com/l7tech/server/message/AuthenticationContext.getAllAuthenticationResults ()Ljava/util/List;
      // 068: astore 20
      // 06a: aload 20
      // 06c: invokeinterface java/util/List.iterator ()Ljava/util/Iterator; 1
      // 071: astore 21
      // 073: aload 21
      // 075: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 07a: ifeq 126
      // 07d: aload 21
      // 07f: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 084: checkcast com/l7tech/server/identity/AuthenticationResult
      // 087: astore 22
      // 089: aload 22
      // 08b: invokevirtual com/l7tech/server/identity/AuthenticationResult.getUser ()Lcom/l7tech/identity/User;
      // 08e: invokeinterface com/l7tech/identity/User.getLogin ()Ljava/lang/String; 1
      // 093: astore 23
      // 095: aload 23
      // 097: ifnull 0aa
      // 09a: aload 23
      // 09c: invokevirtual java/lang/String.length ()I
      // 09f: bipush 1
      // 0a0: if_icmpge 0b6
      // 0a3: goto 0aa
      // 0a6: invokestatic com/l7tech/server/audit/MessageSummaryAuditFactory.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0a9: athrow
      // 0aa: aload 22
      // 0ac: invokevirtual com/l7tech/server/identity/AuthenticationResult.getUser ()Lcom/l7tech/identity/User;
      // 0af: invokeinterface com/l7tech/identity/User.getName ()Ljava/lang/String; 1
      // 0b4: astore 23
      // 0b6: aload 18
      // 0b8: invokevirtual java/lang/StringBuffer.length ()I
      // 0bb: ifle 0d1
      // 0be: aload 18
      // 0c0: getstatic com/l7tech/server/audit/MessageSummaryAuditFactory.g [Ljava/lang/String;
      // 0c3: bipush 11
      // 0c5: aaload
      // 0c6: invokevirtual java/lang/StringBuffer.append (Ljava/lang/String;)Ljava/lang/StringBuffer;
      // 0c9: pop
      // 0ca: goto 0d1
      // 0cd: invokestatic com/l7tech/server/audit/MessageSummaryAuditFactory.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0d0: athrow
      // 0d1: aload 18
      // 0d3: aload 23
      // 0d5: invokevirtual java/lang/StringBuffer.append (Ljava/lang/String;)Ljava/lang/StringBuffer;
      // 0d8: pop
      // 0d9: aload 22
      // 0db: invokevirtual com/l7tech/server/identity/AuthenticationResult.getUser ()Lcom/l7tech/identity/User;
      // 0de: invokeinterface com/l7tech/identity/User.getId ()Ljava/lang/String; 1
      // 0e3: astore 23
      // 0e5: aload 23
      // 0e7: ifnull 123
      // 0ea: aload 23
      // 0ec: invokevirtual java/lang/String.length ()I
      // 0ef: ifle 123
      // 0f2: goto 0f9
      // 0f5: invokestatic com/l7tech/server/audit/MessageSummaryAuditFactory.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0f8: athrow
      // 0f9: aload 19
      // 0fb: invokevirtual java/lang/StringBuffer.length ()I
      // 0fe: ifle 11b
      // 101: goto 108
      // 104: invokestatic com/l7tech/server/audit/MessageSummaryAuditFactory.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 107: athrow
      // 108: aload 19
      // 10a: getstatic com/l7tech/server/audit/MessageSummaryAuditFactory.g [Ljava/lang/String;
      // 10d: bipush 14
      // 10f: aaload
      // 110: invokevirtual java/lang/StringBuffer.append (Ljava/lang/String;)Ljava/lang/StringBuffer;
      // 113: pop
      // 114: goto 11b
      // 117: invokestatic com/l7tech/server/audit/MessageSummaryAuditFactory.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 11a: athrow
      // 11b: aload 19
      // 11d: aload 23
      // 11f: invokevirtual java/lang/StringBuffer.append (Ljava/lang/String;)Ljava/lang/StringBuffer;
      // 122: pop
      // 123: goto 073
      // 126: aload 18
      // 128: invokevirtual java/lang/StringBuffer.length ()I
      // 12b: ifle 135
      // 12e: aload 18
      // 130: invokevirtual java/lang/StringBuffer.toString ()Ljava/lang/String;
      // 133: astore 8
      // 135: aload 19
      // 137: invokevirtual java/lang/StringBuffer.length ()I
      // 13a: ifle 144
      // 13d: aload 19
      // 13f: invokevirtual java/lang/StringBuffer.toString ()Ljava/lang/String;
      // 142: astore 14
      // 144: aload 0
      // 145: aload 1
      // 146: invokevirtual com/l7tech/server/audit/MessageSummaryAuditFactory.a (Lcom/l7tech/server/message/PolicyEnforcementContext;)Lcom/l7tech/security/token/SecurityTokenType;
      // 149: astore 13
      // 14b: aload 16
      // 14d: invokevirtual com/l7tech/server/message/AuthenticationContext.getLastAuthenticatedUser ()Lcom/l7tech/identity/User;
      // 150: astore 17
      // 152: goto 158
      // 155: aconst_null
      // 156: astore 17
      // 158: aload 1
      // 159: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getRequest ()Lcom/l7tech/message/Message; 1
      // 15e: astore 19
      // 160: aload 1
      // 161: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getRequestId ()Lcom/l7tech/gateway/common/RequestId; 1
      // 166: invokevirtual com/l7tech/gateway/common/RequestId.toString ()Ljava/lang/String;
      // 169: astore 18
      // 16b: aload 1
      // 16c: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.isAuditSaveRequest ()Z 1
      // 171: ifeq 18d
      // 174: bipush 1
      // 175: newarray 10
      // 177: dup
      // 178: bipush 0
      // 179: bipush -1
      // 17a: iastore
      // 17b: astore 20
      // 17d: aload 0
      // 17e: aload 19
      // 180: aload 20
      // 182: bipush 1
      // 183: invokevirtual com/l7tech/server/audit/MessageSummaryAuditFactory.a (Lcom/l7tech/message/Message;[IZ)Ljava/lang/String;
      // 186: astore 3
      // 187: aload 20
      // 189: bipush 0
      // 18a: iaload
      // 18b: istore 4
      // 18d: aload 19
      // 18f: ldc com/l7tech/message/TcpKnob
      // 191: invokevirtual com/l7tech/message/Message.getKnob (Ljava/lang/Class;)Ljava/lang/Object;
      // 194: checkcast com/l7tech/message/TcpKnob
      // 197: astore 20
      // 199: aload 20
      // 19b: ifnull 1a7
      // 19e: aload 20
      // 1a0: invokeinterface com/l7tech/message/TcpKnob.getRemoteAddress ()Ljava/lang/String; 1
      // 1a5: astore 9
      // 1a7: aload 1
      // 1a8: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getResponse ()Lcom/l7tech/message/Message; 1
      // 1ad: astore 20
      // 1af: aload 1
      // 1b0: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.isAuditSaveResponse ()Z 1
      // 1b5: ifeq 1d3
      // 1b8: bipush 1
      // 1b9: newarray 10
      // 1bb: dup
      // 1bc: bipush 0
      // 1bd: iload 6
      // 1bf: iastore
      // 1c0: astore 21
      // 1c2: aload 0
      // 1c3: aload 20
      // 1c5: aload 21
      // 1c7: bipush 0
      // 1c8: invokevirtual com/l7tech/server/audit/MessageSummaryAuditFactory.a (Lcom/l7tech/message/Message;[IZ)Ljava/lang/String;
      // 1cb: astore 5
      // 1cd: aload 21
      // 1cf: bipush 0
      // 1d0: iaload
      // 1d1: istore 6
      // 1d3: bipush -1
      // 1d4: istore 19
      // 1d6: aload 20
      // 1d8: ldc com/l7tech/message/HttpResponseKnob
      // 1da: invokevirtual com/l7tech/message/Message.getKnob (Ljava/lang/Class;)Ljava/lang/Object;
      // 1dd: checkcast com/l7tech/message/HttpResponseKnob
      // 1e0: astore 21
      // 1e2: aload 21
      // 1e4: ifnull 1f0
      // 1e7: aload 21
      // 1e9: invokeinterface com/l7tech/message/HttpResponseKnob.getStatus ()I 1
      // 1ee: istore 19
      // 1f0: aload 1
      // 1f1: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getRoutingStartTime ()J 1
      // 1f6: lstore 20
      // 1f8: lload 20
      // 1fa: lconst_0
      // 1fb: lcmp
      // 1fc: ifgt 204
      // 1ff: invokestatic java/lang/System.currentTimeMillis ()J
      // 202: lstore 20
      // 204: aload 1
      // 205: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getRoutingEndTime ()J 1
      // 20a: lstore 22
      // 20c: lload 22
      // 20e: lconst_0
      // 20f: lcmp
      // 210: ifgt 217
      // 213: lload 20
      // 215: lstore 22
      // 217: lload 22
      // 219: lload 20
      // 21b: lsub
      // 21c: l2i
      // 21d: istore 24
      // 21f: new com/l7tech/server/audit/al
      // 222: dup
      // 223: aload 0
      // 224: aload 1
      // 225: invokespecial com/l7tech/server/audit/al.<init> (Lcom/l7tech/server/audit/MessageSummaryAuditFactory;Lcom/l7tech/server/message/PolicyEnforcementContext;)V
      // 228: astore 25
      // 22a: aload 0
      // 22b: getfield com/l7tech/server/audit/MessageSummaryAuditFactory.e Z
      // 22e: ifne 239
      // 231: aconst_null
      // 232: goto 246
      // 235: invokestatic com/l7tech/server/audit/MessageSummaryAuditFactory.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 238: athrow
      // 239: new com/l7tech/server/audit/am
      // 23c: dup
      // 23d: aload 0
      // 23e: aload 25
      // 240: aload 17
      // 242: aload 1
      // 243: invokespecial com/l7tech/server/audit/am.<init> (Lcom/l7tech/server/audit/MessageSummaryAuditFactory;Ljava/lang/Object;Lcom/l7tech/identity/User;Lcom/l7tech/server/message/PolicyEnforcementContext;)V
      // 246: astore 26
      // 248: new com/l7tech/gateway/common/audit/MessageSummaryAuditRecord
      // 24b: dup
      // 24c: aload 1
      // 24d: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getAuditLevel ()Ljava/util/logging/Level; 1
      // 252: aload 0
      // 253: getfield com/l7tech/server/audit/MessageSummaryAuditFactory.a Ljava/lang/String;
      // 256: aload 18
      // 258: aload 2
      // 259: aload 9
      // 25b: aload 1
      // 25c: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.isAuditSaveRequest ()Z 1
      // 261: ifeq 26c
      // 264: aload 3
      // 265: goto 26d
      // 268: invokestatic com/l7tech/server/audit/MessageSummaryAuditFactory.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 26b: athrow
      // 26c: aconst_null
      // 26d: iload 4
      // 26f: aload 1
      // 270: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.isAuditSaveResponse ()Z 1
      // 275: ifeq 27d
      // 278: aload 5
      // 27a: goto 27e
      // 27d: aconst_null
      // 27e: iload 6
      // 280: iload 19
      // 282: iload 24
      // 284: aload 10
      // 286: aload 11
      // 288: aload 25
      // 28a: iload 12
      // 28c: aload 13
      // 28e: aload 7
      // 290: aload 8
      // 292: aload 14
      // 294: aload 26
      // 296: invokespecial com/l7tech/gateway/common/audit/MessageSummaryAuditRecord.<init> (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Lcom/l7tech/policy/assertion/AssertionStatus;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;IIILcom/l7tech/objectmodel/Goid;Ljava/lang/String;Ljava/lang/Object;ZLcom/l7tech/security/token/SecurityTokenType;Lcom/l7tech/objectmodel/Goid;Ljava/lang/String;Ljava/lang/String;Lcom/l7tech/util/Functions$Nullary;)V
      // 299: astore 27
      // 29b: aload 27
      // 29d: aload 1
      // 29e: invokevirtual com/l7tech/gateway/common/audit/MessageSummaryAuditRecord.originalPolicyEnforcementContext (Ljava/lang/Object;)V
      // 2a1: aload 27
      // 2a3: areturn
      // try (66 -> 72): 73 java/lang/IllegalArgumentException
      // try (79 -> 88): 89 java/lang/IllegalArgumentException
      // try (99 -> 104): 105 java/lang/IllegalArgumentException
      // try (101 -> 110): 111 java/lang/IllegalArgumentException
      // try (107 -> 119): 120 java/lang/IllegalArgumentException
      // try (250 -> 255): 255 java/lang/IllegalArgumentException
      // try (265 -> 279): 279 java/lang/IllegalArgumentException
   }

   public void setMessageContextMappingManager(MessageContextMappingManager var1) {
      this.d = var1;
   }

   public void setIdentityProviderFactory(IdentityProviderFactory var1) {
      this.f = var1;
   }

   @Override
   public void propertyChange(PropertyChangeEvent 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: getstatic com/l7tech/server/audit/MessageSummaryAuditFactory.g [Ljava/lang/String;
      // 03: bipush 1
      // 04: aaload
      // 05: aload 1
      // 06: invokevirtual java/beans/PropertyChangeEvent.getPropertyName ()Ljava/lang/String;
      // 09: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 0c: ifeq 42
      // 0f: aload 1
      // 10: invokevirtual java/beans/PropertyChangeEvent.getNewValue ()Ljava/lang/Object;
      // 13: checkcast java/lang/String
      // 16: invokestatic java/lang/Boolean.valueOf (Ljava/lang/String;)Ljava/lang/Boolean;
      // 19: invokevirtual java/lang/Boolean.booleanValue ()Z
      // 1c: ifeq 32
      // 1f: goto 26
      // 22: invokestatic com/l7tech/server/audit/MessageSummaryAuditFactory.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 25: athrow
      // 26: aload 0
      // 27: bipush 1
      // 28: putfield com/l7tech/server/audit/MessageSummaryAuditFactory.e Z
      // 2b: goto 42
      // 2e: invokestatic com/l7tech/server/audit/MessageSummaryAuditFactory.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 31: athrow
      // 32: aload 0
      // 33: bipush 0
      // 34: putfield com/l7tech/server/audit/MessageSummaryAuditFactory.e Z
      // 37: getstatic com/l7tech/server/audit/MessageSummaryAuditFactory.b Ljava/util/logging/Logger;
      // 3a: getstatic com/l7tech/server/audit/MessageSummaryAuditFactory.g [Ljava/lang/String;
      // 3d: bipush 2
      // 3e: aaload
      // 3f: invokevirtual java/util/logging/Logger.info (Ljava/lang/String;)V
      // 42: return
      // try (0 -> 13): 14 java/lang/IllegalArgumentException
      // try (7 -> 20): 20 java/lang/IllegalArgumentException
   }

   private Goid a(Object param1, User param2, List<MessageContextMapping> param3) {
      // $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/MessageSummaryAuditFactory.d Lcom/l7tech/server/mapping/MessageContextMappingManager;
      // 04: ifnonnull 0d
      // 07: aconst_null
      // 08: areturn
      // 09: invokestatic com/l7tech/server/audit/MessageSummaryAuditFactory.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0c: athrow
      // 0d: new com/l7tech/gateway/common/mapping/MessageContextMappingKeys
      // 10: dup
      // 11: invokespecial com/l7tech/gateway/common/mapping/MessageContextMappingKeys.<init> ()V
      // 14: astore 4
      // 16: new com/l7tech/gateway/common/mapping/MessageContextMappingValues
      // 19: dup
      // 1a: invokespecial com/l7tech/gateway/common/mapping/MessageContextMappingValues.<init> ()V
      // 1d: astore 5
      // 1f: aload 4
      // 21: invokestatic java/lang/System.currentTimeMillis ()J
      // 24: invokevirtual com/l7tech/gateway/common/mapping/MessageContextMappingKeys.setCreateTime (J)V
      // 27: aload 5
      // 29: invokestatic java/lang/System.currentTimeMillis ()J
      // 2c: invokevirtual com/l7tech/gateway/common/mapping/MessageContextMappingValues.setCreateTime (J)V
      // 2f: aload 5
      // 31: aload 1
      // 32: invokevirtual java/lang/Object.toString ()Ljava/lang/String;
      // 35: invokevirtual com/l7tech/gateway/common/mapping/MessageContextMappingValues.setServiceOperation (Ljava/lang/String;)V
      // 38: aload 3
      // 39: ifnull c8
      // 3c: bipush 0
      // 3d: istore 6
      // 3f: aload 3
      // 40: invokeinterface java/util/List.iterator ()Ljava/util/Iterator; 1
      // 45: astore 7
      // 47: aload 7
      // 49: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 4e: ifeq c8
      // 51: aload 7
      // 53: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 58: checkcast com/l7tech/gateway/common/mapping/MessageContextMapping
      // 5b: astore 8
      // 5d: aload 8
      // 5f: invokevirtual com/l7tech/gateway/common/mapping/MessageContextMapping.getMappingType ()Lcom/l7tech/gateway/common/mapping/MessageContextMapping$MappingType;
      // 62: getstatic com/l7tech/gateway/common/mapping/MessageContextMapping$MappingType.AUTH_USER Lcom/l7tech/gateway/common/mapping/MessageContextMapping$MappingType;
      // 65: if_acmpne a5
      // 68: aload 2
      // 69: ifnull c5
      // 6c: goto 73
      // 6f: invokestatic com/l7tech/server/audit/MessageSummaryAuditFactory.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 72: athrow
      // 73: aload 5
      // 75: aload 0
      // 76: aload 2
      // 77: invokeinterface com/l7tech/identity/User.getProviderId ()Lcom/l7tech/objectmodel/Goid; 1
      // 7c: aload 2
      // 7d: invokeinterface com/l7tech/identity/User.getId ()Ljava/lang/String; 1
      // 82: invokevirtual com/l7tech/server/audit/MessageSummaryAuditFactory.a (Lcom/l7tech/objectmodel/Goid;Ljava/lang/String;)Ljava/lang/String;
      // 85: invokevirtual com/l7tech/gateway/common/mapping/MessageContextMappingValues.setAuthUserId (Ljava/lang/String;)V
      // 88: aload 5
      // 8a: aload 2
      // 8b: invokeinterface com/l7tech/identity/User.getId ()Ljava/lang/String; 1
      // 90: invokevirtual com/l7tech/gateway/common/mapping/MessageContextMappingValues.setAuthUserUniqueId (Ljava/lang/String;)V
      // 93: aload 5
      // 95: aload 2
      // 96: invokeinterface com/l7tech/identity/User.getProviderId ()Lcom/l7tech/objectmodel/Goid; 1
      // 9b: invokevirtual com/l7tech/gateway/common/mapping/MessageContextMappingValues.setAuthUserProviderId (Lcom/l7tech/objectmodel/Goid;)V
      // 9e: goto c5
      // a1: invokestatic com/l7tech/server/audit/MessageSummaryAuditFactory.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // a4: athrow
      // a5: aload 4
      // a7: iload 6
      // a9: aload 8
      // ab: invokevirtual com/l7tech/gateway/common/mapping/MessageContextMapping.getMappingType ()Lcom/l7tech/gateway/common/mapping/MessageContextMapping$MappingType;
      // ae: aload 8
      // b0: invokevirtual com/l7tech/gateway/common/mapping/MessageContextMapping.getKey ()Ljava/lang/String;
      // b3: invokevirtual com/l7tech/gateway/common/mapping/MessageContextMappingKeys.setTypeAndKey (ILcom/l7tech/gateway/common/mapping/MessageContextMapping$MappingType;Ljava/lang/String;)V
      // b6: aload 5
      // b8: iload 6
      // ba: aload 8
      // bc: invokevirtual com/l7tech/gateway/common/mapping/MessageContextMapping.getValue ()Ljava/lang/String;
      // bf: invokevirtual com/l7tech/gateway/common/mapping/MessageContextMappingValues.setValue (ILjava/lang/String;)V
      // c2: iinc 6 1
      // c5: goto 47
      // c8: aload 0
      // c9: getfield com/l7tech/server/audit/MessageSummaryAuditFactory.d Lcom/l7tech/server/mapping/MessageContextMappingManager;
      // cc: aload 4
      // ce: invokeinterface com/l7tech/server/mapping/MessageContextMappingManager.saveMessageContextMappingKeys (Lcom/l7tech/gateway/common/mapping/MessageContextMappingKeys;)Lcom/l7tech/objectmodel/Goid; 2
      // d3: astore 6
      // d5: aload 5
      // d7: aload 6
      // d9: invokevirtual com/l7tech/gateway/common/mapping/MessageContextMappingValues.setMappingKeysGoid (Lcom/l7tech/objectmodel/Goid;)V
      // dc: aload 0
      // dd: getfield com/l7tech/server/audit/MessageSummaryAuditFactory.d Lcom/l7tech/server/mapping/MessageContextMappingManager;
      // e0: aload 5
      // e2: invokeinterface com/l7tech/server/mapping/MessageContextMappingManager.saveMessageContextMappingValues (Lcom/l7tech/gateway/common/mapping/MessageContextMappingValues;)Lcom/l7tech/objectmodel/Goid; 2
      // e7: areturn
      // e8: astore 6
      // ea: getstatic com/l7tech/server/audit/MessageSummaryAuditFactory.b Ljava/util/logging/Logger;
      // ed: getstatic com/l7tech/server/audit/MessageSummaryAuditFactory.g [Ljava/lang/String;
      // f0: bipush 10
      // f2: aaload
      // f3: invokevirtual java/util/logging/Logger.warning (Ljava/lang/String;)V
      // f6: aconst_null
      // f7: areturn
      // try (43 -> 65): 65 java/lang/Exception
      // try (39 -> 45): 46 java/lang/Exception
      // try (0 -> 5): 5 java/lang/Exception
      // try (81 -> 93): 94 java/lang/Exception
   }

   private String a(Message var1, int[] var2, boolean var3) {
      String var10000;
      label75: {
         try {
            if (var3) {
               var10000 = g[4];
               break label75;
            }
         } catch (Exception var15) {
            throw a(var15);
         }

         String[] var10 = g;
         var10000 = var10[12];
      }

      String var4 = var10000;

      try {
         MimeKnob var5 = (MimeKnob)var1.getKnob(MimeKnob.class);

         label79: {
            try {
               if (var5 == null || !var1.isInitialized()) {
                  break label79;
               }
            } catch (Exception var13) {
               throw a(var13);
            }

            PartInfo var16 = var5.getFirstPart();
            byte[] var7 = IOUtils.slurpStream(var16.getInputStream(false));
            var2[0] = var7.length;
            ContentTypeHeader var8 = var16.getContentType();
            Charset var9 = null;

            label56: {
               label80: {
                  try {
                     if (var8 != null && var8.isTextualContentType()) {
                        break label80;
                     }
                  } catch (Exception var12) {
                     throw a(var12);
                  }

                  Level var10001;
                  String var10002;
                  Object[] var10003;
                  Object[] var10004;
                  byte var10005;
                  String var10006;
                  label46: {
                     try {
                        var18 = b;
                        var10001 = Level.INFO;
                        var10002 = g[5];
                        var10003 = new Object[]{var4, null, null};
                        var10004 = var10003;
                        var10005 = 1;
                        if (var8 == null) {
                           var10006 = g[8];
                           break label46;
                        }
                     } catch (Exception var11) {
                        throw a(var11);
                     }

                     var10006 = var8.getFullValue();
                  }

                  var10004[var10005] = var10006;
                  var10003[2] = c;
                  var18.log(var10001, MessageFormat.format(var10002, var10003));
                  break label56;
               }

               var9 = var8.getEncoding();
            }

            if (var9 == null) {
               var9 = c;
            }

            return new String(var7, var9);
         }

         String[] var17 = g;
         b.fine(MessageFormat.format(var17[7], var4));
         var2[0] = 0;
         return null;
      } catch (Exception var14) {
         String var6 = MessageFormat.format(g[6], var4, var14.getMessage());
         b.log(Level.WARNING, var6);
         return var6;
      }
   }

   public AuditDetail makeEvent(PolicyEnforcementContext var1, String var2) {
      MessageSummaryAuditDetail var3 = null;
      if (var1.isAuditSaveResponse()) {
         var3 = new MessageSummaryAuditDetail(var2);
      }

      return var3;
   }

   private SecurityTokenType a(PolicyEnforcementContext var1) {
      SecurityTokenType var2 = null;
      LoginCredentials var3 = var1.getDefaultAuthenticationContext().getLastCredentials();
      if (var3 != null) {
         var2 = var3.getType();
      }

      return var2;
   }

   private String b(PolicyEnforcementContext var1) {
      String var2 = null;

      try {
         Pair var3 = var1.getBindingAndOperation();
         if (var3 != null) {
            var2 = ((Operation)var3.right).getName();
         }
      } catch (Exception var4) {
         b.log(Level.INFO, g[9] + var4.toString());
      }

      return var2;
   }

   private String a(Goid var1, String var2) {
      String var3 = null;

      try {
         IdentityProvider var4 = this.f.getProvider(var1);
         if (var4 != null) {
            User var5 = var4.getUserManager().findByPrimaryKey(var2);

            String var10000;
            label27: {
               try {
                  if (var5 == null) {
                     var10000 = var2;
                     break label27;
                  }
               } catch (Exception var7) {
                  throw a(var7);
               }

               var10000 = this.a(var5);
            }

            String var10001 = var4.getConfig().getName();
            String[] var9 = g;
            var3 = var10000 + var9[0] + var10001 + "]";
         }
      } catch (Exception var8) {
         String[] var6 = g;
         b.log(Level.WARNING, var6[15], var8);
      }

      if (var3 == null) {
         var3 = var2 + g[16] + var1 + "]";
      }

      return var3;
   }

   private String a(User var1) {
      String var2 = var1.getLogin();

      label33: {
         try {
            if (var2 != null && !"".equals(var2)) {
               break label33;
            }
         } catch (IllegalArgumentException var4) {
            throw a(var4);
         }

         var2 = var1.getName();
      }

      try {
         if (var2 != null && !"".equals(var2)) {
            return var2;
         }
      } catch (IllegalArgumentException var3) {
         throw a(var3);
      }

      return var1.getId();
   }

   static {
      String[] var5 = new String[17];
      int var3 = 0;
      String var2 = "bq'!_;[\rK\u000f0g)_\u0012O\u0004%\u0004)K\u0006r\u0005\u0005K<J\u0015G\u0013\u0003_,F\u0016c\u001c'D<\\N\u0003N,F\fAJ/O;\\\u0003A\u000fbI'A\u0016C\u00126\n%N\u0012V\u0003,M;\u000f\u0016IJ\u0005K<J\u0015G\u0013bk=K\u000bRJ\u0007\\-A\u0016UJ+YhL\u0017T\u0018'D<C\u001b\u0006\u000e+Y)M\u000eC\u000el'!_;[\rK\u000f0g)_\u0012O\u0004%\u0004)K\u0006r\u0005\u0005K<J\u0015G\u0013\u0003_,F\u0016c\u001c'D<\\\u00070O9Z\u0007U\u001eN\u0001E&[\u0007H\u001eo~1_\u0007\u0006\u0005$\n3\u001f\u001f\u0006B`QyR@\u000fJ+YhZ\fM\u0004-]&\u000f\rTJ,E<\u000f\u0016C\u00126\u0011hZ\u0011O\u0004%\n3\u001d\u001f\u0006\u001e-\n;N\u0014CJ9\u001a5\u000f\u0016C\u00126\u001a\u0017D)M\u000eCJ6EhH\u0007RJ9\u001a5\u000f:k&x\n3\u001e\u001f>9\u001a5\u000f\nG\u0019bD'[BD\u000f'DhF\fO\u001e+K$F\u0018C\u000ey\n&@\u0016\u0006\u000b6^-B\u0012R\u0003,Mh[\r\u0006\u0019#\\-\u000f\u0000I\u000e;\n<J\u001aR\u0004,_$C#\u0001E=C\u0006HM6\n,J\u0016C\u0018/C&JBI\u001a'X)[\u000bI\u0004bD)B\u0007\u001cJA\u0004K!C\u0007BJ6Eh\\\u0003P\u000fb^ JBM\u000f;Yh@\u0010\u0006\u001c#F=J\u0011\u0006\u0005$\n<G\u0007\u0006\u0007'Y;N\u0005CJ!E&[\u0007^\u001ebG)_\u0012O\u0004%\u0004\u0002n\n\b0O;_\rH\u0019'\u001b\u0001F=\\\u0016C\u0018bd'K\u0007\u0006#\u0006\n!\\BT\u000f3_!]\u0007B\u0002n\n";
      int var4 = "bq'!_;[\rK\u000f0g)_\u0012O\u0004%\u0004)K\u0006r\u0005\u0005K<J\u0015G\u0013\u0003_,F\u0016c\u001c'D<\\N\u0003N,F\fAJ/O;\\\u0003A\u000fbI'A\u0016C\u00126\n%N\u0012V\u0003,M;\u000f\u0016IJ\u0005K<J\u0015G\u0013bk=K\u000bRJ\u0007\\-A\u0016UJ+YhL\u0017T\u0018'D<C\u001b\u0006\u000e+Y)M\u000eC\u000el'!_;[\rK\u000f0g)_\u0012O\u0004%\u0004)K\u0006r\u0005\u0005K<J\u0015G\u0013\u0003_,F\u0016c\u001c'D<\\\u00070O9Z\u0007U\u001eN\u0001E&[\u0007H\u001eo~1_\u0007\u0006\u0005$\n3\u001f\u001f\u0006B`QyR@\u000fJ+YhZ\fM\u0004-]&\u000f\rTJ,E<\u000f\u0016C\u00126\u0011hZ\u0011O\u0004%\n3\u001d\u001f\u0006\u001e-\n;N\u0014CJ9\u001a5\u000f\u0016C\u00126\u001a\u0017D)M\u000eCJ6EhH\u0007RJ9\u001a5\u000f:k&x\n3\u001e\u001f>9\u001a5\u000f\nG\u0019bD'[BD\u000f'DhF\fO\u001e+K$F\u0018C\u000ey\n&@\u0016\u0006\u000b6^-B\u0012R\u0003,Mh[\r\u0006\u0019#\\-\u000f\u0000I\u000e;\n<J\u001aR\u0004,_$C#\u0001E=C\u0006HM6\n,J\u0016C\u0018/C&JBI\u001a'X)[\u000bI\u0004bD)B\u0007\u001cJA\u0004K!C\u0007BJ6Eh\\\u0003P\u000fb^ JBM\u000f;Yh@\u0010\u0006\u001c#F=J\u0011\u0006\u0005$\n<G\u0007\u0006\u0007'Y;N\u0005CJ!E&[\u0007^\u001ebG)_\u0012O\u0004%\u0004\u0002n\n\b0O;_\rH\u0019'\u001b\u0001F=\\\u0016C\u0018bd'K\u0007\u0006#\u0006\n!\\BT\u000f3_!]\u0007B\u0002n\n"
         .length();
      char var1 = 2;
      int var7 = -1;

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

         while (true) {
            String var8 = a(var10000, a(var10001));
            switch (var10002) {
               case 0:
                  var5[var3++] = var8;
                  if ((var7 += var1) >= var4) {
                     g = var5;
                     b = Logger.getLogger(MessageSummaryAuditFactory.class.getName());
                     c = Charsets.ISO8859;
                     return;
                  }

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

                  var2 = "\u000eQ3I\u0019\u000f\u0002(@$U\u0018F\r,\u00034U\u000e]C/F5G\u0002C\u0010e\u0003kxb";
                  var4 = "\u000eQ3I\u0019\u000f\u0002(@$U\u0018F\r,\u00034U\u000e]C/F5G\u0002C\u0010e\u0003kxb".length();
                  var1 = 29;
                  var7 = -1;
            }

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

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

   private static char[] a(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 -> 124;
            case 1 -> 20;
            case 2 -> 118;
            case 3 -> 17;
            case 4 -> 92;
            case 5 -> 24;
            default -> 84;
         });
      }

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