class org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes extends org.eclipse.jetty.util.Attributes$Wrapper
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes
  super_class: org.eclipse.jetty.util.Attributes$Wrapper
{
  private final org.eclipse.jetty.server.Request _request;
    descriptor: Lorg/eclipse/jetty/server/Request;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final javax.net.ssl.SSLSession _session;
    descriptor: Ljavax/net/ssl/SSLSession;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.security.cert.X509Certificate[] _certs;
    descriptor: [Ljava/security/cert/X509Certificate;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String _cipherSuite;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Integer _keySize;
    descriptor: Ljava/lang/Integer;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String _sessionId;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String _sessionAttribute;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  final org.eclipse.jetty.server.SecureRequestCustomizer this$0;
    descriptor: Lorg/eclipse/jetty/server/SecureRequestCustomizer;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private void <init>(org.eclipse.jetty.server.SecureRequestCustomizer, org.eclipse.jetty.server.Request, javax.net.ssl.SSLSession);
    descriptor: (Lorg/eclipse/jetty/server/SecureRequestCustomizer;Lorg/eclipse/jetty/server/Request;Ljavax/net/ssl/SSLSession;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes this
        start local 2 // org.eclipse.jetty.server.Request request
        start local 3 // javax.net.ssl.SSLSession sslSession
         0: .line 334
            aload 0 /* this */
            aload 1
            putfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes.this$0:Lorg/eclipse/jetty/server/SecureRequestCustomizer;
         1: .line 335
            aload 0 /* this */
            aload 2 /* request */
            invokevirtual org.eclipse.jetty.server.Request.getAttributes:()Lorg/eclipse/jetty/util/Attributes;
            invokespecial org.eclipse.jetty.util.Attributes$Wrapper.<init>:(Lorg/eclipse/jetty/util/Attributes;)V
         2: .line 336
            aload 0 /* this */
            aload 2 /* request */
            putfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._request:Lorg/eclipse/jetty/server/Request;
         3: .line 337
            aload 0 /* this */
            aload 3 /* sslSession */
            putfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._session:Ljavax/net/ssl/SSLSession;
         4: .line 341
            aload 0 /* this */
            invokevirtual org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes.getSslSessionData:()Lorg/eclipse/jetty/server/SecureRequestCustomizer$SslSessionData;
            astore 4 /* sslSessionData */
        start local 4 // org.eclipse.jetty.server.SecureRequestCustomizer$SslSessionData sslSessionData
         5: .line 342
            aload 0 /* this */
            aload 4 /* sslSessionData */
            invokevirtual org.eclipse.jetty.server.SecureRequestCustomizer$SslSessionData.getCerts:()[Ljava/security/cert/X509Certificate;
            putfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._certs:[Ljava/security/cert/X509Certificate;
         6: .line 343
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._session:Ljavax/net/ssl/SSLSession;
            invokeinterface javax.net.ssl.SSLSession.getCipherSuite:()Ljava/lang/String;
            putfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._cipherSuite:Ljava/lang/String;
         7: .line 344
            aload 0 /* this */
            aload 4 /* sslSessionData */
            invokevirtual org.eclipse.jetty.server.SecureRequestCustomizer$SslSessionData.getKeySize:()Ljava/lang/Integer;
            putfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._keySize:Ljava/lang/Integer;
         8: .line 345
            aload 0 /* this */
            aload 4 /* sslSessionData */
            invokevirtual org.eclipse.jetty.server.SecureRequestCustomizer$SslSessionData.getIdStr:()Ljava/lang/String;
            putfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._sessionId:Ljava/lang/String;
         9: .line 346
            aload 0 /* this */
            aload 1
            invokevirtual org.eclipse.jetty.server.SecureRequestCustomizer.getSslSessionAttribute:()Ljava/lang/String;
            putfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._sessionAttribute:Ljava/lang/String;
        end local 4 // org.eclipse.jetty.server.SecureRequestCustomizer$SslSessionData sslSessionData
        10: .line 347
            goto 13
        11: .line 348
      StackMap locals: org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes org.eclipse.jetty.server.SecureRequestCustomizer org.eclipse.jetty.server.Request javax.net.ssl.SSLSession
      StackMap stack: java.lang.Exception
            astore 4 /* e */
        start local 4 // java.lang.Exception e
        12: .line 350
            getstatic org.eclipse.jetty.server.SecureRequestCustomizer.LOG:Lorg/slf4j/Logger;
            ldc "Unable to get secure details "
            aload 4 /* e */
            invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 4 // java.lang.Exception e
        13: .line 352
      StackMap locals:
      StackMap stack:
            return
        end local 3 // javax.net.ssl.SSLSession sslSession
        end local 2 // org.eclipse.jetty.server.Request request
        end local 0 // org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   14     0            this  Lorg/eclipse/jetty/server/SecureRequestCustomizer$SslAttributes;
            0   14     2         request  Lorg/eclipse/jetty/server/Request;
            0   14     3      sslSession  Ljavax/net/ssl/SSLSession;
            5   10     4  sslSessionData  Lorg/eclipse/jetty/server/SecureRequestCustomizer$SslSessionData;
           12   13     4               e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           4    10      11  Class java.lang.Exception
    MethodParameters:
            Name  Flags
      this$0      final
      request     
      sslSession  

  public java.lang.Object getAttribute(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes this
        start local 1 // java.lang.String name
         0: .line 357
            aload 1 /* name */
            dup
            astore 2
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 4
          -2122667291: 1
            660520589: 2
           1396315848: 3
           1597190523: 4
              default: 9
          }
      StackMap locals: java.lang.String
      StackMap stack:
         1: aload 2
            ldc "jakarta.servlet.request.key_size"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 7
            goto 9
      StackMap locals:
      StackMap stack:
         2: aload 2
            ldc "jakarta.servlet.request.X509Certificate"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 5
            goto 9
      StackMap locals:
      StackMap stack:
         3: aload 2
            ldc "jakarta.servlet.request.cipher_suite"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 6
            goto 9
      StackMap locals:
      StackMap stack:
         4: aload 2
            ldc "jakarta.servlet.request.ssl_session_id"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 8
            goto 9
         5: .line 360
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._certs:[Ljava/security/cert/X509Certificate;
            areturn
         6: .line 362
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._cipherSuite:Ljava/lang/String;
            areturn
         7: .line 364
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._keySize:Ljava/lang/Integer;
            areturn
         8: .line 366
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._sessionId:Ljava/lang/String;
            areturn
         9: .line 368
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._sessionAttribute:Ljava/lang/String;
            invokestatic org.eclipse.jetty.util.StringUtil.isEmpty:(Ljava/lang/String;)Z
            ifne 11
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._sessionAttribute:Ljava/lang/String;
            aload 1 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 11
        10: .line 369
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._session:Ljavax/net/ssl/SSLSession;
            areturn
        11: .line 372
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._attributes:Lorg/eclipse/jetty/util/Attributes;
            aload 1 /* name */
            invokeinterface org.eclipse.jetty.util.Attributes.getAttribute:(Ljava/lang/String;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lorg/eclipse/jetty/server/SecureRequestCustomizer$SslAttributes;
            0   12     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  private org.eclipse.jetty.server.SecureRequestCustomizer$SslSessionData getSslSessionData();
    descriptor: ()Lorg/eclipse/jetty/server/SecureRequestCustomizer$SslSessionData;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=1
        start local 0 // org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes this
         0: .line 382
            ldc Lorg/eclipse/jetty/server/SecureRequestCustomizer$SslSessionData;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            astore 1 /* key */
        start local 1 // java.lang.String key
         1: .line 383
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._session:Ljavax/net/ssl/SSLSession;
            aload 1 /* key */
            invokeinterface javax.net.ssl.SSLSession.getValue:(Ljava/lang/String;)Ljava/lang/Object;
            checkcast org.eclipse.jetty.server.SecureRequestCustomizer$SslSessionData
            astore 2 /* sslSessionData */
        start local 2 // org.eclipse.jetty.server.SecureRequestCustomizer$SslSessionData sslSessionData
         2: .line 384
            aload 2 /* sslSessionData */
            ifnonnull 10
         3: .line 386
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._session:Ljavax/net/ssl/SSLSession;
            invokeinterface javax.net.ssl.SSLSession.getCipherSuite:()Ljava/lang/String;
            astore 3 /* cipherSuite */
        start local 3 // java.lang.String cipherSuite
         4: .line 387
            aload 3 /* cipherSuite */
            invokestatic org.eclipse.jetty.util.ssl.SslContextFactory.deduceKeyLength:(Ljava/lang/String;)I
            istore 4 /* keySize */
        start local 4 // int keySize
         5: .line 389
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes.this$0:Lorg/eclipse/jetty/server/SecureRequestCustomizer;
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._request:Lorg/eclipse/jetty/server/Request;
            invokevirtual org.eclipse.jetty.server.Request.getHttpChannel:()Lorg/eclipse/jetty/server/HttpChannel;
            invokevirtual org.eclipse.jetty.server.HttpChannel.getConnector:()Lorg/eclipse/jetty/server/Connector;
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._session:Ljavax/net/ssl/SSLSession;
            invokevirtual org.eclipse.jetty.server.SecureRequestCustomizer.getCertChain:(Lorg/eclipse/jetty/server/Connector;Ljavax/net/ssl/SSLSession;)[Ljava/security/cert/X509Certificate;
            astore 5 /* certs */
        start local 5 // java.security.cert.X509Certificate[] certs
         6: .line 391
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._session:Ljavax/net/ssl/SSLSession;
            invokeinterface javax.net.ssl.SSLSession.getId:()[B
            astore 6 /* bytes */
        start local 6 // byte[] bytes
         7: .line 392
            aload 6 /* bytes */
            invokestatic org.eclipse.jetty.util.TypeUtil.toHexString:([B)Ljava/lang/String;
            astore 7 /* idStr */
        start local 7 // java.lang.String idStr
         8: .line 394
            new org.eclipse.jetty.server.SecureRequestCustomizer$SslSessionData
            dup
            iload 4 /* keySize */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 5 /* certs */
            aload 7 /* idStr */
            invokespecial org.eclipse.jetty.server.SecureRequestCustomizer$SslSessionData.<init>:(Ljava/lang/Integer;[Ljava/security/cert/X509Certificate;Ljava/lang/String;)V
            astore 2 /* sslSessionData */
         9: .line 395
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._session:Ljavax/net/ssl/SSLSession;
            aload 1 /* key */
            aload 2 /* sslSessionData */
            invokeinterface javax.net.ssl.SSLSession.putValue:(Ljava/lang/String;Ljava/lang/Object;)V
        end local 7 // java.lang.String idStr
        end local 6 // byte[] bytes
        end local 5 // java.security.cert.X509Certificate[] certs
        end local 4 // int keySize
        end local 3 // java.lang.String cipherSuite
        10: .line 397
      StackMap locals: java.lang.String org.eclipse.jetty.server.SecureRequestCustomizer$SslSessionData
      StackMap stack:
            aload 2 /* sslSessionData */
            areturn
        end local 2 // org.eclipse.jetty.server.SecureRequestCustomizer$SslSessionData sslSessionData
        end local 1 // java.lang.String key
        end local 0 // org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   11     0            this  Lorg/eclipse/jetty/server/SecureRequestCustomizer$SslAttributes;
            1   11     1             key  Ljava/lang/String;
            2   11     2  sslSessionData  Lorg/eclipse/jetty/server/SecureRequestCustomizer$SslSessionData;
            4   10     3     cipherSuite  Ljava/lang/String;
            5   10     4         keySize  I
            6   10     5           certs  [Ljava/security/cert/X509Certificate;
            7   10     6           bytes  [B
            8   10     7           idStr  Ljava/lang/String;

  public java.util.Set<java.lang.String> getAttributeNameSet();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes this
         0: .line 403
            new java.util.HashSet
            dup
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._attributes:Lorg/eclipse/jetty/util/Attributes;
            invokeinterface org.eclipse.jetty.util.Attributes.getAttributeNameSet:()Ljava/util/Set;
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
            astore 1 /* names */
        start local 1 // java.util.Set names
         1: .line 404
            aload 1 /* names */
            ldc "jakarta.servlet.request.X509Certificate"
            invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
            pop
         2: .line 405
            aload 1 /* names */
            ldc "jakarta.servlet.request.cipher_suite"
            invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
            pop
         3: .line 406
            aload 1 /* names */
            ldc "jakarta.servlet.request.key_size"
            invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
            pop
         4: .line 407
            aload 1 /* names */
            ldc "jakarta.servlet.request.ssl_session_id"
            invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
            pop
         5: .line 409
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._certs:[Ljava/security/cert/X509Certificate;
            ifnull 7
         6: .line 410
            aload 1 /* names */
            ldc "jakarta.servlet.request.X509Certificate"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         7: .line 411
      StackMap locals: java.util.Set
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._cipherSuite:Ljava/lang/String;
            ifnull 9
         8: .line 412
            aload 1 /* names */
            ldc "jakarta.servlet.request.cipher_suite"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         9: .line 413
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._keySize:Ljava/lang/Integer;
            ifnull 11
        10: .line 414
            aload 1 /* names */
            ldc "jakarta.servlet.request.key_size"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        11: .line 415
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._sessionId:Ljava/lang/String;
            ifnull 13
        12: .line 416
            aload 1 /* names */
            ldc "jakarta.servlet.request.ssl_session_id"
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        13: .line 417
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._sessionAttribute:Ljava/lang/String;
            invokestatic org.eclipse.jetty.util.StringUtil.isEmpty:(Ljava/lang/String;)Z
            ifne 15
        14: .line 418
            aload 1 /* names */
            aload 0 /* this */
            getfield org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes._sessionAttribute:Ljava/lang/String;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        15: .line 420
      StackMap locals:
      StackMap stack:
            aload 1 /* names */
            areturn
        end local 1 // java.util.Set names
        end local 0 // org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   16     0   this  Lorg/eclipse/jetty/server/SecureRequestCustomizer$SslAttributes;
            1   16     1  names  Ljava/util/Set<Ljava/lang/String;>;
    Signature: ()Ljava/util/Set<Ljava/lang/String;>;
}
SourceFile: "SecureRequestCustomizer.java"
NestHost: org.eclipse.jetty.server.SecureRequestCustomizer
InnerClasses:
  private SslAttributes = org.eclipse.jetty.server.SecureRequestCustomizer$SslAttributes of org.eclipse.jetty.server.SecureRequestCustomizer
  private SslSessionData = org.eclipse.jetty.server.SecureRequestCustomizer$SslSessionData of org.eclipse.jetty.server.SecureRequestCustomizer
  public abstract Wrapper = org.eclipse.jetty.util.Attributes$Wrapper of org.eclipse.jetty.util.Attributes