final class sun.security.ssl.NewSessionTicket$T12NewSessionTicketConsumer implements sun.security.ssl.SSLConsumer
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: sun.security.ssl.NewSessionTicket$T12NewSessionTicketConsumer
  super_class: java.lang.Object
{
  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.NewSessionTicket$T12NewSessionTicketConsumer this
         0: .line 633
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 635
            return
        end local 0 // sun.security.ssl.NewSessionTicket$T12NewSessionTicketConsumer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/security/ssl/NewSessionTicket$T12NewSessionTicketConsumer;

  public void consume(sun.security.ssl.ConnectionContext, java.nio.ByteBuffer);
    descriptor: (Lsun/security/ssl/ConnectionContext;Ljava/nio/ByteBuffer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // sun.security.ssl.NewSessionTicket$T12NewSessionTicketConsumer this
        start local 1 // sun.security.ssl.ConnectionContext context
        start local 2 // java.nio.ByteBuffer message
         0: .line 641
            aload 1 /* context */
            checkcast sun.security.ssl.HandshakeContext
            astore 3 /* hc */
        start local 3 // sun.security.ssl.HandshakeContext hc
         1: .line 642
            aload 3 /* hc */
            getfield sun.security.ssl.HandshakeContext.handshakeConsumers:Ljava/util/LinkedHashMap;
            getstatic sun.security.ssl.SSLHandshake.NEW_SESSION_TICKET:Lsun/security/ssl/SSLHandshake;
            getfield sun.security.ssl.SSLHandshake.id:B
            invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
            invokevirtual java.util.LinkedHashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 644
            new sun.security.ssl.NewSessionTicket$T12NewSessionTicketMessage
            dup
            aload 3 /* hc */
         3: .line 645
            aload 2 /* message */
         4: .line 644
            invokespecial sun.security.ssl.NewSessionTicket$T12NewSessionTicketMessage.<init>:(Lsun/security/ssl/HandshakeContext;Ljava/nio/ByteBuffer;)V
            astore 4 /* nstm */
        start local 4 // sun.security.ssl.NewSessionTicket$NewSessionTicketMessage nstm
         5: .line 646
            aload 4 /* nstm */
            getfield sun.security.ssl.NewSessionTicket$NewSessionTicketMessage.ticket:[B
            arraylength
            ifne 9
         6: .line 647
            getstatic sun.security.ssl.SSLLogger.isOn:Z
            ifeq 8
            ldc "ssl,handshake"
            invokestatic sun.security.ssl.SSLLogger.isOn:(Ljava/lang/String;)Z
            ifeq 8
         7: .line 648
            ldc "NewSessionTicket ticket was empty"
            iconst_0
            anewarray java.lang.Object
            invokestatic sun.security.ssl.SSLLogger.fine:(Ljava/lang/String;[Ljava/lang/Object;)V
         8: .line 650
      StackMap locals: sun.security.ssl.HandshakeContext sun.security.ssl.NewSessionTicket$NewSessionTicketMessage
      StackMap stack:
            return
         9: .line 654
      StackMap locals:
      StackMap stack:
            aload 4 /* nstm */
            getfield sun.security.ssl.NewSessionTicket$NewSessionTicketMessage.ticketLifetime:I
            ifle 11
        10: .line 655
            aload 4 /* nstm */
            getfield sun.security.ssl.NewSessionTicket$NewSessionTicketMessage.ticketLifetime:I
            ldc 604800
            if_icmple 18
        11: .line 656
      StackMap locals:
      StackMap stack:
            getstatic sun.security.ssl.SSLLogger.isOn:Z
            ifeq 17
            ldc "ssl,handshake"
            invokestatic sun.security.ssl.SSLLogger.isOn:(Ljava/lang/String;)Z
            ifeq 17
        12: .line 658
            new java.lang.StringBuilder
            dup
            ldc "Discarding NewSessionTicket with lifetime "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        13: .line 659
            aload 4 /* nstm */
            getfield sun.security.ssl.NewSessionTicket$NewSessionTicketMessage.ticketLifetime:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        14: .line 658
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
        15: .line 659
            aload 4 /* nstm */
            aastore
        16: .line 657
            invokestatic sun.security.ssl.SSLLogger.fine:(Ljava/lang/String;[Ljava/lang/Object;)V
        17: .line 661
      StackMap locals:
      StackMap stack:
            return
        18: .line 665
      StackMap locals:
      StackMap stack:
            aload 3 /* hc */
            getfield sun.security.ssl.HandshakeContext.sslContext:Lsun/security/ssl/SSLContextImpl;
            invokevirtual sun.security.ssl.SSLContextImpl.engineGetClientSessionContext:()Ljavax/net/ssl/SSLSessionContext;
        19: .line 664
            checkcast sun.security.ssl.SSLSessionContextImpl
            astore 5 /* sessionCache */
        start local 5 // sun.security.ssl.SSLSessionContextImpl sessionCache
        20: .line 667
            aload 5 /* sessionCache */
            invokevirtual sun.security.ssl.SSLSessionContextImpl.getSessionTimeout:()I
            ldc 604800
            if_icmple 25
        21: .line 668
            getstatic sun.security.ssl.SSLLogger.isOn:Z
            ifeq 24
            ldc "ssl,handshake"
            invokestatic sun.security.ssl.SSLLogger.isOn:(Ljava/lang/String;)Z
            ifeq 24
        22: .line 670
            ldc "Session cache lifetime is too long. Discarding ticket."
            iconst_0
            anewarray java.lang.Object
        23: .line 669
            invokestatic sun.security.ssl.SSLLogger.fine:(Ljava/lang/String;[Ljava/lang/Object;)V
        24: .line 673
      StackMap locals: sun.security.ssl.SSLSessionContextImpl
      StackMap stack:
            return
        25: .line 676
      StackMap locals:
      StackMap stack:
            aload 3 /* hc */
            getfield sun.security.ssl.HandshakeContext.handshakeSession:Lsun/security/ssl/SSLSessionImpl;
            aload 4 /* nstm */
            getfield sun.security.ssl.NewSessionTicket$NewSessionTicketMessage.ticket:[B
            invokevirtual sun.security.ssl.SSLSessionImpl.setPskIdentity:([B)V
        26: .line 677
            getstatic sun.security.ssl.SSLLogger.isOn:Z
            ifeq 30
            ldc "ssl,handshake"
            invokestatic sun.security.ssl.SSLLogger.isOn:(Ljava/lang/String;)Z
            ifeq 30
        27: .line 678
            new java.lang.StringBuilder
            dup
            ldc "Consuming NewSessionTicket\n"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        28: .line 679
            aload 4 /* nstm */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        29: .line 678
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_0
            anewarray java.lang.Object
            invokestatic sun.security.ssl.SSLLogger.fine:(Ljava/lang/String;[Ljava/lang/Object;)V
        30: .line 681
      StackMap locals:
      StackMap stack:
            return
        end local 5 // sun.security.ssl.SSLSessionContextImpl sessionCache
        end local 4 // sun.security.ssl.NewSessionTicket$NewSessionTicketMessage nstm
        end local 3 // sun.security.ssl.HandshakeContext hc
        end local 2 // java.nio.ByteBuffer message
        end local 1 // sun.security.ssl.ConnectionContext context
        end local 0 // sun.security.ssl.NewSessionTicket$T12NewSessionTicketConsumer this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   31     0          this  Lsun/security/ssl/NewSessionTicket$T12NewSessionTicketConsumer;
            0   31     1       context  Lsun/security/ssl/ConnectionContext;
            0   31     2       message  Ljava/nio/ByteBuffer;
            1   31     3            hc  Lsun/security/ssl/HandshakeContext;
            5   31     4          nstm  Lsun/security/ssl/NewSessionTicket$NewSessionTicketMessage;
           20   31     5  sessionCache  Lsun/security/ssl/SSLSessionContextImpl;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      context  
      message  
}
SourceFile: "NewSessionTicket.java"
NestHost: sun.security.ssl.NewSessionTicket
InnerClasses:
  abstract NewSessionTicketMessage = sun.security.ssl.NewSessionTicket$NewSessionTicketMessage of sun.security.ssl.NewSessionTicket
  private final T12NewSessionTicketConsumer = sun.security.ssl.NewSessionTicket$T12NewSessionTicketConsumer of sun.security.ssl.NewSessionTicket
  final T12NewSessionTicketMessage = sun.security.ssl.NewSessionTicket$T12NewSessionTicketMessage of sun.security.ssl.NewSessionTicket