final class jdk.jfr.internal.instrument.SocketChannelImplInstrumentor
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor
  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 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
         0: .line 42
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 43
            return
        end local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/jfr/internal/instrument/SocketChannelImplInstrumentor;

  public int read(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=13, locals=16, args_size=2
        start local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
        start local 1 // java.nio.ByteBuffer dst
         0: .line 48
            getstatic jdk.jfr.events.Handlers.SOCKET_READ:Ljdk/jfr/internal/handlers/EventHandler;
            astore 2 /* handler */
        start local 2 // jdk.jfr.internal.handlers.EventHandler handler
         1: .line 49
            aload 2 /* handler */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.isEnabled:()Z
            ifne 3
         2: .line 50
            aload 0 /* this */
            aload 1 /* dst */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.read:(Ljava/nio/ByteBuffer;)I
            ireturn
         3: .line 52
      StackMap locals: jdk.jfr.internal.handlers.EventHandler
      StackMap stack:
            iconst_0
            istore 3 /* bytesRead */
        start local 3 // int bytesRead
         4: .line 53
            lconst_0
            lstore 4 /* start */
        start local 4 // long start
         5: .line 55
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lstore 4 /* start */
         6: .line 56
            aload 0 /* this */
            aload 1 /* dst */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.read:(Ljava/nio/ByteBuffer;)I
            istore 3 /* bytesRead */
         7: .line 57
            goto 31
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long
      StackMap stack: java.lang.Throwable
         8: astore 6
         9: .line 58
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lload 4 /* start */
            lsub
            lstore 7 /* duration */
        start local 7 // long duration
        10: .line 59
            aload 2 /* handler */
            lload 7 /* duration */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.shouldCommit:(J)Z
            ifeq 30
        11: .line 60
            aload 0 /* this */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.getRemoteAddress:()Ljava/net/SocketAddress;
            astore 9 /* remoteAddress */
        start local 9 // java.net.SocketAddress remoteAddress
        12: .line 61
            aload 9 /* remoteAddress */
            instanceof java.net.InetSocketAddress
            ifeq 24
        13: .line 62
            aload 9 /* remoteAddress */
            checkcast java.net.InetSocketAddress
            astore 10 /* isa */
        start local 10 // java.net.InetSocketAddress isa
        14: .line 63
            aload 10 /* isa */
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
            astore 11 /* hostString */
        start local 11 // java.lang.String hostString
        15: .line 64
            aload 11 /* hostString */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 12 /* delimiterIndex */
        start local 12 // int delimiterIndex
        16: .line 66
            aload 11 /* hostString */
            iconst_0
            iload 12 /* delimiterIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 13 /* host */
        start local 13 // java.lang.String host
        17: .line 67
            aload 11 /* hostString */
            iload 12 /* delimiterIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 14 /* address */
        start local 14 // java.lang.String address
        18: .line 68
            aload 10 /* isa */
            invokevirtual java.net.InetSocketAddress.getPort:()I
            istore 15 /* port */
        start local 15 // int port
        19: .line 69
            iload 3 /* bytesRead */
            ifge 22
        20: .line 70
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            aload 13 /* host */
            aload 14 /* address */
            iload 15 /* port */
            lconst_0
            lconst_0
            iconst_1
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        21: .line 71
            goto 30
        22: .line 72
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long java.lang.Throwable long java.net.SocketAddress java.net.InetSocketAddress java.lang.String int java.lang.String java.lang.String int
      StackMap stack:
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            aload 13 /* host */
            aload 14 /* address */
            iload 15 /* port */
            lconst_0
            iload 3 /* bytesRead */
            i2l
            iconst_0
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        end local 15 // int port
        end local 14 // java.lang.String address
        end local 13 // java.lang.String host
        end local 12 // int delimiterIndex
        end local 11 // java.lang.String hostString
        end local 10 // java.net.InetSocketAddress isa
        23: .line 74
            goto 30
        24: .line 75
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long java.lang.Throwable long java.net.SocketAddress
      StackMap stack:
            aload 9 /* remoteAddress */
            checkcast java.net.UnixDomainSocketAddress
            astore 10 /* udsa */
        start local 10 // java.net.UnixDomainSocketAddress udsa
        25: .line 76
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 10 /* udsa */
            invokevirtual java.net.UnixDomainSocketAddress.getPath:()Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 11 /* path */
        start local 11 // java.lang.String path
        26: .line 77
            iload 3 /* bytesRead */
            ifge 29
        27: .line 78
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            ldc "Unix domain socket"
            aload 11 /* path */
            iconst_0
            lconst_0
            lconst_0
            iconst_1
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        28: .line 79
            goto 30
        29: .line 80
      StackMap locals: java.net.UnixDomainSocketAddress java.lang.String
      StackMap stack:
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            ldc "Unix domain socket"
            aload 11 /* path */
            iconst_0
            lconst_0
            iload 3 /* bytesRead */
            i2l
            iconst_0
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        end local 11 // java.lang.String path
        end local 10 // java.net.UnixDomainSocketAddress udsa
        end local 9 // java.net.SocketAddress remoteAddress
        end local 7 // long duration
        30: .line 84
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long java.lang.Throwable
      StackMap stack:
            aload 6
            athrow
        31: .line 58
      StackMap locals:
      StackMap stack:
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lload 4 /* start */
            lsub
            lstore 7 /* duration */
        start local 7 // long duration
        32: .line 59
            aload 2 /* handler */
            lload 7 /* duration */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.shouldCommit:(J)Z
            ifeq 52
        33: .line 60
            aload 0 /* this */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.getRemoteAddress:()Ljava/net/SocketAddress;
            astore 9 /* remoteAddress */
        start local 9 // java.net.SocketAddress remoteAddress
        34: .line 61
            aload 9 /* remoteAddress */
            instanceof java.net.InetSocketAddress
            ifeq 46
        35: .line 62
            aload 9 /* remoteAddress */
            checkcast java.net.InetSocketAddress
            astore 10 /* isa */
        start local 10 // java.net.InetSocketAddress isa
        36: .line 63
            aload 10 /* isa */
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
            astore 11 /* hostString */
        start local 11 // java.lang.String hostString
        37: .line 64
            aload 11 /* hostString */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 12 /* delimiterIndex */
        start local 12 // int delimiterIndex
        38: .line 66
            aload 11 /* hostString */
            iconst_0
            iload 12 /* delimiterIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 13 /* host */
        start local 13 // java.lang.String host
        39: .line 67
            aload 11 /* hostString */
            iload 12 /* delimiterIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 14 /* address */
        start local 14 // java.lang.String address
        40: .line 68
            aload 10 /* isa */
            invokevirtual java.net.InetSocketAddress.getPort:()I
            istore 15 /* port */
        start local 15 // int port
        41: .line 69
            iload 3 /* bytesRead */
            ifge 44
        42: .line 70
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            aload 13 /* host */
            aload 14 /* address */
            iload 15 /* port */
            lconst_0
            lconst_0
            iconst_1
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        43: .line 71
            goto 52
        44: .line 72
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long top long java.net.SocketAddress java.net.InetSocketAddress java.lang.String int java.lang.String java.lang.String int
      StackMap stack:
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            aload 13 /* host */
            aload 14 /* address */
            iload 15 /* port */
            lconst_0
            iload 3 /* bytesRead */
            i2l
            iconst_0
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        end local 15 // int port
        end local 14 // java.lang.String address
        end local 13 // java.lang.String host
        end local 12 // int delimiterIndex
        end local 11 // java.lang.String hostString
        end local 10 // java.net.InetSocketAddress isa
        45: .line 74
            goto 52
        46: .line 75
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long top long java.net.SocketAddress
      StackMap stack:
            aload 9 /* remoteAddress */
            checkcast java.net.UnixDomainSocketAddress
            astore 10 /* udsa */
        start local 10 // java.net.UnixDomainSocketAddress udsa
        47: .line 76
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 10 /* udsa */
            invokevirtual java.net.UnixDomainSocketAddress.getPath:()Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 11 /* path */
        start local 11 // java.lang.String path
        48: .line 77
            iload 3 /* bytesRead */
            ifge 51
        49: .line 78
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            ldc "Unix domain socket"
            aload 11 /* path */
            iconst_0
            lconst_0
            lconst_0
            iconst_1
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        50: .line 79
            goto 52
        51: .line 80
      StackMap locals: java.net.UnixDomainSocketAddress java.lang.String
      StackMap stack:
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            ldc "Unix domain socket"
            aload 11 /* path */
            iconst_0
            lconst_0
            iload 3 /* bytesRead */
            i2l
            iconst_0
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        end local 11 // java.lang.String path
        end local 10 // java.net.UnixDomainSocketAddress udsa
        end local 9 // java.net.SocketAddress remoteAddress
        end local 7 // long duration
        52: .line 85
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long
      StackMap stack:
            iload 3 /* bytesRead */
            ireturn
        end local 4 // long start
        end local 3 // int bytesRead
        end local 2 // jdk.jfr.internal.handlers.EventHandler handler
        end local 1 // java.nio.ByteBuffer dst
        end local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   53     0            this  Ljdk/jfr/internal/instrument/SocketChannelImplInstrumentor;
            0   53     1             dst  Ljava/nio/ByteBuffer;
            1   53     2         handler  Ljdk/jfr/internal/handlers/EventHandler;
            4   53     3       bytesRead  I
            5   53     4           start  J
           10   30     7        duration  J
           32   52     7        duration  J
           12   30     9   remoteAddress  Ljava/net/SocketAddress;
           34   52     9   remoteAddress  Ljava/net/SocketAddress;
           14   23    10             isa  Ljava/net/InetSocketAddress;
           36   45    10             isa  Ljava/net/InetSocketAddress;
           15   23    11      hostString  Ljava/lang/String;
           37   45    11      hostString  Ljava/lang/String;
           16   23    12  delimiterIndex  I
           38   45    12  delimiterIndex  I
           17   23    13            host  Ljava/lang/String;
           39   45    13            host  Ljava/lang/String;
           18   23    14         address  Ljava/lang/String;
           40   45    14         address  Ljava/lang/String;
           19   23    15            port  I
           41   45    15            port  I
           25   30    10            udsa  Ljava/net/UnixDomainSocketAddress;
           47   52    10            udsa  Ljava/net/UnixDomainSocketAddress;
           26   30    11            path  Ljava/lang/String;
           48   52    11            path  Ljava/lang/String;
      Exception table:
        from    to  target  type
           5     8       8  any
    Exceptions:
      throws java.io.IOException
    RuntimeVisibleAnnotations: 
      jdk.jfr.internal.instrument.JIInstrumentationMethod()
    MethodParameters:
      Name  Flags
      dst   

  public long read(java.nio.ByteBuffer[], int, int);
    descriptor: ([Ljava/nio/ByteBuffer;II)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=13, locals=19, args_size=4
        start local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
        start local 1 // java.nio.ByteBuffer[] dsts
        start local 2 // int offset
        start local 3 // int length
         0: .line 91
            getstatic jdk.jfr.events.Handlers.SOCKET_READ:Ljdk/jfr/internal/handlers/EventHandler;
            astore 4 /* handler */
        start local 4 // jdk.jfr.internal.handlers.EventHandler handler
         1: .line 92
            aload 4 /* handler */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.isEnabled:()Z
            ifne 3
         2: .line 93
            aload 0 /* this */
            aload 1 /* dsts */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.read:([Ljava/nio/ByteBuffer;II)J
            lreturn
         3: .line 95
      StackMap locals: jdk.jfr.internal.handlers.EventHandler
      StackMap stack:
            lconst_0
            lstore 5 /* bytesRead */
        start local 5 // long bytesRead
         4: .line 96
            lconst_0
            lstore 7 /* start */
        start local 7 // long start
         5: .line 98
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lstore 7 /* start */
         6: .line 99
            aload 0 /* this */
            aload 1 /* dsts */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.read:([Ljava/nio/ByteBuffer;II)J
            lstore 5 /* bytesRead */
         7: .line 100
            goto 31
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long
      StackMap stack: java.lang.Throwable
         8: astore 9
         9: .line 101
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lload 7 /* start */
            lsub
            lstore 10 /* duration */
        start local 10 // long duration
        10: .line 102
            aload 4 /* handler */
            lload 10 /* duration */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.shouldCommit:(J)Z
            ifeq 30
        11: .line 103
            aload 0 /* this */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.getRemoteAddress:()Ljava/net/SocketAddress;
            astore 12 /* remoteAddress */
        start local 12 // java.net.SocketAddress remoteAddress
        12: .line 104
            aload 12 /* remoteAddress */
            instanceof java.net.InetSocketAddress
            ifeq 24
        13: .line 105
            aload 12 /* remoteAddress */
            checkcast java.net.InetSocketAddress
            astore 13 /* isa */
        start local 13 // java.net.InetSocketAddress isa
        14: .line 106
            aload 13 /* isa */
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
            astore 14 /* hostString */
        start local 14 // java.lang.String hostString
        15: .line 107
            aload 14 /* hostString */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 15 /* delimiterIndex */
        start local 15 // int delimiterIndex
        16: .line 109
            aload 14 /* hostString */
            iconst_0
            iload 15 /* delimiterIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 16 /* host */
        start local 16 // java.lang.String host
        17: .line 110
            aload 14 /* hostString */
            iload 15 /* delimiterIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 17 /* address */
        start local 17 // java.lang.String address
        18: .line 111
            aload 13 /* isa */
            invokevirtual java.net.InetSocketAddress.getPort:()I
            istore 18 /* port */
        start local 18 // int port
        19: .line 112
            lload 5 /* bytesRead */
            lconst_0
            lcmp
            ifge 22
        20: .line 113
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            aload 16 /* host */
            aload 17 /* address */
            iload 18 /* port */
            lconst_0
            lconst_0
            iconst_1
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        21: .line 114
            goto 30
        22: .line 115
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long java.lang.Throwable long java.net.SocketAddress java.net.InetSocketAddress java.lang.String int java.lang.String java.lang.String int
      StackMap stack:
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            aload 16 /* host */
            aload 17 /* address */
            iload 18 /* port */
            lconst_0
            lload 5 /* bytesRead */
            iconst_0
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        end local 18 // int port
        end local 17 // java.lang.String address
        end local 16 // java.lang.String host
        end local 15 // int delimiterIndex
        end local 14 // java.lang.String hostString
        end local 13 // java.net.InetSocketAddress isa
        23: .line 117
            goto 30
        24: .line 118
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long java.lang.Throwable long java.net.SocketAddress
      StackMap stack:
            aload 12 /* remoteAddress */
            checkcast java.net.UnixDomainSocketAddress
            astore 13 /* udsa */
        start local 13 // java.net.UnixDomainSocketAddress udsa
        25: .line 119
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 13 /* udsa */
            invokevirtual java.net.UnixDomainSocketAddress.getPath:()Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 14 /* path */
        start local 14 // java.lang.String path
        26: .line 120
            lload 5 /* bytesRead */
            lconst_0
            lcmp
            ifge 29
        27: .line 121
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            ldc "Unix domain socket"
            aload 14 /* path */
            iconst_0
            lconst_0
            lconst_0
            iconst_1
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        28: .line 122
            goto 30
        29: .line 123
      StackMap locals: java.net.UnixDomainSocketAddress java.lang.String
      StackMap stack:
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            ldc "Unix domain socket"
            aload 14 /* path */
            iconst_0
            lconst_0
            lload 5 /* bytesRead */
            iconst_0
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        end local 14 // java.lang.String path
        end local 13 // java.net.UnixDomainSocketAddress udsa
        end local 12 // java.net.SocketAddress remoteAddress
        end local 10 // long duration
        30: .line 127
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long java.lang.Throwable
      StackMap stack:
            aload 9
            athrow
        31: .line 101
      StackMap locals:
      StackMap stack:
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lload 7 /* start */
            lsub
            lstore 10 /* duration */
        start local 10 // long duration
        32: .line 102
            aload 4 /* handler */
            lload 10 /* duration */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.shouldCommit:(J)Z
            ifeq 52
        33: .line 103
            aload 0 /* this */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.getRemoteAddress:()Ljava/net/SocketAddress;
            astore 12 /* remoteAddress */
        start local 12 // java.net.SocketAddress remoteAddress
        34: .line 104
            aload 12 /* remoteAddress */
            instanceof java.net.InetSocketAddress
            ifeq 46
        35: .line 105
            aload 12 /* remoteAddress */
            checkcast java.net.InetSocketAddress
            astore 13 /* isa */
        start local 13 // java.net.InetSocketAddress isa
        36: .line 106
            aload 13 /* isa */
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
            astore 14 /* hostString */
        start local 14 // java.lang.String hostString
        37: .line 107
            aload 14 /* hostString */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 15 /* delimiterIndex */
        start local 15 // int delimiterIndex
        38: .line 109
            aload 14 /* hostString */
            iconst_0
            iload 15 /* delimiterIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 16 /* host */
        start local 16 // java.lang.String host
        39: .line 110
            aload 14 /* hostString */
            iload 15 /* delimiterIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 17 /* address */
        start local 17 // java.lang.String address
        40: .line 111
            aload 13 /* isa */
            invokevirtual java.net.InetSocketAddress.getPort:()I
            istore 18 /* port */
        start local 18 // int port
        41: .line 112
            lload 5 /* bytesRead */
            lconst_0
            lcmp
            ifge 44
        42: .line 113
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            aload 16 /* host */
            aload 17 /* address */
            iload 18 /* port */
            lconst_0
            lconst_0
            iconst_1
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        43: .line 114
            goto 52
        44: .line 115
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long top long java.net.SocketAddress java.net.InetSocketAddress java.lang.String int java.lang.String java.lang.String int
      StackMap stack:
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            aload 16 /* host */
            aload 17 /* address */
            iload 18 /* port */
            lconst_0
            lload 5 /* bytesRead */
            iconst_0
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        end local 18 // int port
        end local 17 // java.lang.String address
        end local 16 // java.lang.String host
        end local 15 // int delimiterIndex
        end local 14 // java.lang.String hostString
        end local 13 // java.net.InetSocketAddress isa
        45: .line 117
            goto 52
        46: .line 118
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long top long java.net.SocketAddress
      StackMap stack:
            aload 12 /* remoteAddress */
            checkcast java.net.UnixDomainSocketAddress
            astore 13 /* udsa */
        start local 13 // java.net.UnixDomainSocketAddress udsa
        47: .line 119
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 13 /* udsa */
            invokevirtual java.net.UnixDomainSocketAddress.getPath:()Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 14 /* path */
        start local 14 // java.lang.String path
        48: .line 120
            lload 5 /* bytesRead */
            lconst_0
            lcmp
            ifge 51
        49: .line 121
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            ldc "Unix domain socket"
            aload 14 /* path */
            iconst_0
            lconst_0
            lconst_0
            iconst_1
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        50: .line 122
            goto 52
        51: .line 123
      StackMap locals: java.net.UnixDomainSocketAddress java.lang.String
      StackMap stack:
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            ldc "Unix domain socket"
            aload 14 /* path */
            iconst_0
            lconst_0
            lload 5 /* bytesRead */
            iconst_0
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJJZ)V
        end local 14 // java.lang.String path
        end local 13 // java.net.UnixDomainSocketAddress udsa
        end local 12 // java.net.SocketAddress remoteAddress
        end local 10 // long duration
        52: .line 128
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long
      StackMap stack:
            lload 5 /* bytesRead */
            lreturn
        end local 7 // long start
        end local 5 // long bytesRead
        end local 4 // jdk.jfr.internal.handlers.EventHandler handler
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.nio.ByteBuffer[] dsts
        end local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   53     0            this  Ljdk/jfr/internal/instrument/SocketChannelImplInstrumentor;
            0   53     1            dsts  [Ljava/nio/ByteBuffer;
            0   53     2          offset  I
            0   53     3          length  I
            1   53     4         handler  Ljdk/jfr/internal/handlers/EventHandler;
            4   53     5       bytesRead  J
            5   53     7           start  J
           10   30    10        duration  J
           32   52    10        duration  J
           12   30    12   remoteAddress  Ljava/net/SocketAddress;
           34   52    12   remoteAddress  Ljava/net/SocketAddress;
           14   23    13             isa  Ljava/net/InetSocketAddress;
           36   45    13             isa  Ljava/net/InetSocketAddress;
           15   23    14      hostString  Ljava/lang/String;
           37   45    14      hostString  Ljava/lang/String;
           16   23    15  delimiterIndex  I
           38   45    15  delimiterIndex  I
           17   23    16            host  Ljava/lang/String;
           39   45    16            host  Ljava/lang/String;
           18   23    17         address  Ljava/lang/String;
           40   45    17         address  Ljava/lang/String;
           19   23    18            port  I
           41   45    18            port  I
           25   30    13            udsa  Ljava/net/UnixDomainSocketAddress;
           47   52    13            udsa  Ljava/net/UnixDomainSocketAddress;
           26   30    14            path  Ljava/lang/String;
           48   52    14            path  Ljava/lang/String;
      Exception table:
        from    to  target  type
           5     8       8  any
    Exceptions:
      throws java.io.IOException
    RuntimeVisibleAnnotations: 
      jdk.jfr.internal.instrument.JIInstrumentationMethod()
    MethodParameters:
        Name  Flags
      dsts    
      offset  
      length  

  public int write(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=18, args_size=2
        start local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
        start local 1 // java.nio.ByteBuffer buf
         0: .line 134
            getstatic jdk.jfr.events.Handlers.SOCKET_WRITE:Ljdk/jfr/internal/handlers/EventHandler;
            astore 2 /* handler */
        start local 2 // jdk.jfr.internal.handlers.EventHandler handler
         1: .line 135
            aload 2 /* handler */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.isEnabled:()Z
            ifne 3
         2: .line 136
            aload 0 /* this */
            aload 1 /* buf */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.write:(Ljava/nio/ByteBuffer;)I
            ireturn
         3: .line 138
      StackMap locals: jdk.jfr.internal.handlers.EventHandler
      StackMap stack:
            iconst_0
            istore 3 /* bytesWritten */
        start local 3 // int bytesWritten
         4: .line 139
            lconst_0
            lstore 4 /* start */
        start local 4 // long start
         5: .line 141
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lstore 4 /* start */
         6: .line 142
            aload 0 /* this */
            aload 1 /* buf */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.write:(Ljava/nio/ByteBuffer;)I
            istore 3 /* bytesWritten */
         7: .line 143
            goto 28
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long
      StackMap stack: java.lang.Throwable
         8: astore 6
         9: .line 144
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lload 4 /* start */
            lsub
            lstore 7 /* duration */
        start local 7 // long duration
        10: .line 145
            aload 2 /* handler */
            lload 7 /* duration */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.shouldCommit:(J)Z
            ifeq 27
        11: .line 146
            iload 3 /* bytesWritten */
            ifge 12
            iconst_0
            goto 13
      StackMap locals: java.lang.Throwable long
      StackMap stack:
        12: iload 3 /* bytesWritten */
      StackMap locals:
      StackMap stack: int
        13: i2l
            lstore 9 /* bytes */
        start local 9 // long bytes
        14: .line 147
            aload 0 /* this */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.getRemoteAddress:()Ljava/net/SocketAddress;
            astore 11 /* remoteAddress */
        start local 11 // java.net.SocketAddress remoteAddress
        15: .line 148
            aload 11 /* remoteAddress */
            instanceof java.net.InetSocketAddress
            ifeq 24
        16: .line 149
            aload 11 /* remoteAddress */
            checkcast java.net.InetSocketAddress
            astore 12 /* isa */
        start local 12 // java.net.InetSocketAddress isa
        17: .line 150
            aload 12 /* isa */
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
            astore 13 /* hostString */
        start local 13 // java.lang.String hostString
        18: .line 151
            aload 13 /* hostString */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 14 /* delimiterIndex */
        start local 14 // int delimiterIndex
        19: .line 153
            aload 13 /* hostString */
            iconst_0
            iload 14 /* delimiterIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 15 /* host */
        start local 15 // java.lang.String host
        20: .line 154
            aload 13 /* hostString */
            iload 14 /* delimiterIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 16 /* address */
        start local 16 // java.lang.String address
        21: .line 155
            aload 12 /* isa */
            invokevirtual java.net.InetSocketAddress.getPort:()I
            istore 17 /* port */
        start local 17 // int port
        22: .line 156
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            aload 15 /* host */
            aload 16 /* address */
            iload 17 /* port */
            lload 9 /* bytes */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJ)V
        end local 17 // int port
        end local 16 // java.lang.String address
        end local 15 // java.lang.String host
        end local 14 // int delimiterIndex
        end local 13 // java.lang.String hostString
        end local 12 // java.net.InetSocketAddress isa
        23: .line 157
            goto 27
        24: .line 158
      StackMap locals: long java.net.SocketAddress
      StackMap stack:
            aload 11 /* remoteAddress */
            checkcast java.net.UnixDomainSocketAddress
            astore 12 /* udsa */
        start local 12 // java.net.UnixDomainSocketAddress udsa
        25: .line 159
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 12 /* udsa */
            invokevirtual java.net.UnixDomainSocketAddress.getPath:()Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 13 /* path */
        start local 13 // java.lang.String path
        26: .line 160
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            ldc "Unix domain socket"
            aload 13 /* path */
            iconst_0
            lload 9 /* bytes */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJ)V
        end local 13 // java.lang.String path
        end local 12 // java.net.UnixDomainSocketAddress udsa
        end local 11 // java.net.SocketAddress remoteAddress
        end local 9 // long bytes
        end local 7 // long duration
        27: .line 163
      StackMap locals:
      StackMap stack:
            aload 6
            athrow
        28: .line 144
      StackMap locals:
      StackMap stack:
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lload 4 /* start */
            lsub
            lstore 7 /* duration */
        start local 7 // long duration
        29: .line 145
            aload 2 /* handler */
            lload 7 /* duration */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.shouldCommit:(J)Z
            ifeq 46
        30: .line 146
            iload 3 /* bytesWritten */
            ifge 31
            iconst_0
            goto 32
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long top long
      StackMap stack:
        31: iload 3 /* bytesWritten */
      StackMap locals:
      StackMap stack: int
        32: i2l
            lstore 9 /* bytes */
        start local 9 // long bytes
        33: .line 147
            aload 0 /* this */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.getRemoteAddress:()Ljava/net/SocketAddress;
            astore 11 /* remoteAddress */
        start local 11 // java.net.SocketAddress remoteAddress
        34: .line 148
            aload 11 /* remoteAddress */
            instanceof java.net.InetSocketAddress
            ifeq 43
        35: .line 149
            aload 11 /* remoteAddress */
            checkcast java.net.InetSocketAddress
            astore 12 /* isa */
        start local 12 // java.net.InetSocketAddress isa
        36: .line 150
            aload 12 /* isa */
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
            astore 13 /* hostString */
        start local 13 // java.lang.String hostString
        37: .line 151
            aload 13 /* hostString */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 14 /* delimiterIndex */
        start local 14 // int delimiterIndex
        38: .line 153
            aload 13 /* hostString */
            iconst_0
            iload 14 /* delimiterIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 15 /* host */
        start local 15 // java.lang.String host
        39: .line 154
            aload 13 /* hostString */
            iload 14 /* delimiterIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 16 /* address */
        start local 16 // java.lang.String address
        40: .line 155
            aload 12 /* isa */
            invokevirtual java.net.InetSocketAddress.getPort:()I
            istore 17 /* port */
        start local 17 // int port
        41: .line 156
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            aload 15 /* host */
            aload 16 /* address */
            iload 17 /* port */
            lload 9 /* bytes */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJ)V
        end local 17 // int port
        end local 16 // java.lang.String address
        end local 15 // java.lang.String host
        end local 14 // int delimiterIndex
        end local 13 // java.lang.String hostString
        end local 12 // java.net.InetSocketAddress isa
        42: .line 157
            goto 46
        43: .line 158
      StackMap locals: long java.net.SocketAddress
      StackMap stack:
            aload 11 /* remoteAddress */
            checkcast java.net.UnixDomainSocketAddress
            astore 12 /* udsa */
        start local 12 // java.net.UnixDomainSocketAddress udsa
        44: .line 159
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 12 /* udsa */
            invokevirtual java.net.UnixDomainSocketAddress.getPath:()Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 13 /* path */
        start local 13 // java.lang.String path
        45: .line 160
            aload 2 /* handler */
            lload 4 /* start */
            lload 7 /* duration */
            ldc "Unix domain socket"
            aload 13 /* path */
            iconst_0
            lload 9 /* bytes */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJ)V
        end local 13 // java.lang.String path
        end local 12 // java.net.UnixDomainSocketAddress udsa
        end local 11 // java.net.SocketAddress remoteAddress
        end local 9 // long bytes
        end local 7 // long duration
        46: .line 164
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer jdk.jfr.internal.handlers.EventHandler int long
      StackMap stack:
            iload 3 /* bytesWritten */
            ireturn
        end local 4 // long start
        end local 3 // int bytesWritten
        end local 2 // jdk.jfr.internal.handlers.EventHandler handler
        end local 1 // java.nio.ByteBuffer buf
        end local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   47     0            this  Ljdk/jfr/internal/instrument/SocketChannelImplInstrumentor;
            0   47     1             buf  Ljava/nio/ByteBuffer;
            1   47     2         handler  Ljdk/jfr/internal/handlers/EventHandler;
            4   47     3    bytesWritten  I
            5   47     4           start  J
           10   27     7        duration  J
           29   46     7        duration  J
           14   27     9           bytes  J
           33   46     9           bytes  J
           15   27    11   remoteAddress  Ljava/net/SocketAddress;
           34   46    11   remoteAddress  Ljava/net/SocketAddress;
           17   23    12             isa  Ljava/net/InetSocketAddress;
           36   42    12             isa  Ljava/net/InetSocketAddress;
           18   23    13      hostString  Ljava/lang/String;
           37   42    13      hostString  Ljava/lang/String;
           19   23    14  delimiterIndex  I
           38   42    14  delimiterIndex  I
           20   23    15            host  Ljava/lang/String;
           39   42    15            host  Ljava/lang/String;
           21   23    16         address  Ljava/lang/String;
           40   42    16         address  Ljava/lang/String;
           22   23    17            port  I
           41   42    17            port  I
           25   27    12            udsa  Ljava/net/UnixDomainSocketAddress;
           44   46    12            udsa  Ljava/net/UnixDomainSocketAddress;
           26   27    13            path  Ljava/lang/String;
           45   46    13            path  Ljava/lang/String;
      Exception table:
        from    to  target  type
           5     8       8  any
    Exceptions:
      throws java.io.IOException
    RuntimeVisibleAnnotations: 
      jdk.jfr.internal.instrument.JIInstrumentationMethod()
    MethodParameters:
      Name  Flags
      buf   

  public java.net.SocketAddress getRemoteAddress();
    descriptor: ()Ljava/net/SocketAddress;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
         0: .line 169
            aconst_null
            areturn
        end local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/jfr/internal/instrument/SocketChannelImplInstrumentor;
    Exceptions:
      throws java.io.IOException

  public long write(java.nio.ByteBuffer[], int, int);
    descriptor: ([Ljava/nio/ByteBuffer;II)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=21, args_size=4
        start local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
        start local 1 // java.nio.ByteBuffer[] srcs
        start local 2 // int offset
        start local 3 // int length
         0: .line 175
            getstatic jdk.jfr.events.Handlers.SOCKET_WRITE:Ljdk/jfr/internal/handlers/EventHandler;
            astore 4 /* handler */
        start local 4 // jdk.jfr.internal.handlers.EventHandler handler
         1: .line 176
            aload 4 /* handler */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.isEnabled:()Z
            ifne 3
         2: .line 177
            aload 0 /* this */
            aload 1 /* srcs */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.write:([Ljava/nio/ByteBuffer;II)J
            lreturn
         3: .line 179
      StackMap locals: jdk.jfr.internal.handlers.EventHandler
      StackMap stack:
            lconst_0
            lstore 5 /* bytesWritten */
        start local 5 // long bytesWritten
         4: .line 180
            lconst_0
            lstore 7 /* start */
        start local 7 // long start
         5: .line 182
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lstore 7 /* start */
         6: .line 183
            aload 0 /* this */
            aload 1 /* srcs */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.write:([Ljava/nio/ByteBuffer;II)J
            lstore 5 /* bytesWritten */
         7: .line 184
            goto 28
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long
      StackMap stack: java.lang.Throwable
         8: astore 9
         9: .line 185
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lload 7 /* start */
            lsub
            lstore 10 /* duration */
        start local 10 // long duration
        10: .line 186
            aload 4 /* handler */
            lload 10 /* duration */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.shouldCommit:(J)Z
            ifeq 27
        11: .line 187
            lload 5 /* bytesWritten */
            lconst_0
            lcmp
            ifge 12
            lconst_0
            goto 13
      StackMap locals: java.lang.Throwable long
      StackMap stack:
        12: lload 5 /* bytesWritten */
      StackMap locals:
      StackMap stack: long
        13: lstore 12 /* bytes */
        start local 12 // long bytes
        14: .line 188
            aload 0 /* this */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.getRemoteAddress:()Ljava/net/SocketAddress;
            astore 14 /* remoteAddress */
        start local 14 // java.net.SocketAddress remoteAddress
        15: .line 189
            aload 14 /* remoteAddress */
            instanceof java.net.InetSocketAddress
            ifeq 24
        16: .line 190
            aload 14 /* remoteAddress */
            checkcast java.net.InetSocketAddress
            astore 15 /* isa */
        start local 15 // java.net.InetSocketAddress isa
        17: .line 191
            aload 15 /* isa */
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
            astore 16 /* hostString */
        start local 16 // java.lang.String hostString
        18: .line 192
            aload 16 /* hostString */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 17 /* delimiterIndex */
        start local 17 // int delimiterIndex
        19: .line 194
            aload 16 /* hostString */
            iconst_0
            iload 17 /* delimiterIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 18 /* host */
        start local 18 // java.lang.String host
        20: .line 195
            aload 16 /* hostString */
            iload 17 /* delimiterIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 19 /* address */
        start local 19 // java.lang.String address
        21: .line 196
            aload 15 /* isa */
            invokevirtual java.net.InetSocketAddress.getPort:()I
            istore 20 /* port */
        start local 20 // int port
        22: .line 197
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            aload 18 /* host */
            aload 19 /* address */
            iload 20 /* port */
            lload 12 /* bytes */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJ)V
        end local 20 // int port
        end local 19 // java.lang.String address
        end local 18 // java.lang.String host
        end local 17 // int delimiterIndex
        end local 16 // java.lang.String hostString
        end local 15 // java.net.InetSocketAddress isa
        23: .line 198
            goto 27
        24: .line 199
      StackMap locals: long java.net.SocketAddress
      StackMap stack:
            aload 14 /* remoteAddress */
            checkcast java.net.UnixDomainSocketAddress
            astore 15 /* udsa */
        start local 15 // java.net.UnixDomainSocketAddress udsa
        25: .line 200
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 15 /* udsa */
            invokevirtual java.net.UnixDomainSocketAddress.getPath:()Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 16 /* path */
        start local 16 // java.lang.String path
        26: .line 201
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            ldc "Unix domain socket"
            aload 16 /* path */
            iconst_0
            lload 12 /* bytes */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJ)V
        end local 16 // java.lang.String path
        end local 15 // java.net.UnixDomainSocketAddress udsa
        end local 14 // java.net.SocketAddress remoteAddress
        end local 12 // long bytes
        end local 10 // long duration
        27: .line 204
      StackMap locals:
      StackMap stack:
            aload 9
            athrow
        28: .line 185
      StackMap locals:
      StackMap stack:
            invokestatic jdk.jfr.internal.handlers.EventHandler.timestamp:()J
            lload 7 /* start */
            lsub
            lstore 10 /* duration */
        start local 10 // long duration
        29: .line 186
            aload 4 /* handler */
            lload 10 /* duration */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.shouldCommit:(J)Z
            ifeq 46
        30: .line 187
            lload 5 /* bytesWritten */
            lconst_0
            lcmp
            ifge 31
            lconst_0
            goto 32
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long top long
      StackMap stack:
        31: lload 5 /* bytesWritten */
      StackMap locals:
      StackMap stack: long
        32: lstore 12 /* bytes */
        start local 12 // long bytes
        33: .line 188
            aload 0 /* this */
            invokevirtual jdk.jfr.internal.instrument.SocketChannelImplInstrumentor.getRemoteAddress:()Ljava/net/SocketAddress;
            astore 14 /* remoteAddress */
        start local 14 // java.net.SocketAddress remoteAddress
        34: .line 189
            aload 14 /* remoteAddress */
            instanceof java.net.InetSocketAddress
            ifeq 43
        35: .line 190
            aload 14 /* remoteAddress */
            checkcast java.net.InetSocketAddress
            astore 15 /* isa */
        start local 15 // java.net.InetSocketAddress isa
        36: .line 191
            aload 15 /* isa */
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.toString:()Ljava/lang/String;
            astore 16 /* hostString */
        start local 16 // java.lang.String hostString
        37: .line 192
            aload 16 /* hostString */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 17 /* delimiterIndex */
        start local 17 // int delimiterIndex
        38: .line 194
            aload 16 /* hostString */
            iconst_0
            iload 17 /* delimiterIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 18 /* host */
        start local 18 // java.lang.String host
        39: .line 195
            aload 16 /* hostString */
            iload 17 /* delimiterIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 19 /* address */
        start local 19 // java.lang.String address
        40: .line 196
            aload 15 /* isa */
            invokevirtual java.net.InetSocketAddress.getPort:()I
            istore 20 /* port */
        start local 20 // int port
        41: .line 197
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            aload 18 /* host */
            aload 19 /* address */
            iload 20 /* port */
            lload 12 /* bytes */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJ)V
        end local 20 // int port
        end local 19 // java.lang.String address
        end local 18 // java.lang.String host
        end local 17 // int delimiterIndex
        end local 16 // java.lang.String hostString
        end local 15 // java.net.InetSocketAddress isa
        42: .line 198
            goto 46
        43: .line 199
      StackMap locals: long java.net.SocketAddress
      StackMap stack:
            aload 14 /* remoteAddress */
            checkcast java.net.UnixDomainSocketAddress
            astore 15 /* udsa */
        start local 15 // java.net.UnixDomainSocketAddress udsa
        44: .line 200
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 15 /* udsa */
            invokevirtual java.net.UnixDomainSocketAddress.getPath:()Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 16 /* path */
        start local 16 // java.lang.String path
        45: .line 201
            aload 4 /* handler */
            lload 7 /* start */
            lload 10 /* duration */
            ldc "Unix domain socket"
            aload 16 /* path */
            iconst_0
            lload 12 /* bytes */
            invokevirtual jdk.jfr.internal.handlers.EventHandler.write:(JJLjava/lang/String;Ljava/lang/String;IJ)V
        end local 16 // java.lang.String path
        end local 15 // java.net.UnixDomainSocketAddress udsa
        end local 14 // java.net.SocketAddress remoteAddress
        end local 12 // long bytes
        end local 10 // long duration
        46: .line 205
      StackMap locals: jdk.jfr.internal.instrument.SocketChannelImplInstrumentor java.nio.ByteBuffer[] int int jdk.jfr.internal.handlers.EventHandler long long
      StackMap stack:
            lload 5 /* bytesWritten */
            lreturn
        end local 7 // long start
        end local 5 // long bytesWritten
        end local 4 // jdk.jfr.internal.handlers.EventHandler handler
        end local 3 // int length
        end local 2 // int offset
        end local 1 // java.nio.ByteBuffer[] srcs
        end local 0 // jdk.jfr.internal.instrument.SocketChannelImplInstrumentor this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   47     0            this  Ljdk/jfr/internal/instrument/SocketChannelImplInstrumentor;
            0   47     1            srcs  [Ljava/nio/ByteBuffer;
            0   47     2          offset  I
            0   47     3          length  I
            1   47     4         handler  Ljdk/jfr/internal/handlers/EventHandler;
            4   47     5    bytesWritten  J
            5   47     7           start  J
           10   27    10        duration  J
           29   46    10        duration  J
           14   27    12           bytes  J
           33   46    12           bytes  J
           15   27    14   remoteAddress  Ljava/net/SocketAddress;
           34   46    14   remoteAddress  Ljava/net/SocketAddress;
           17   23    15             isa  Ljava/net/InetSocketAddress;
           36   42    15             isa  Ljava/net/InetSocketAddress;
           18   23    16      hostString  Ljava/lang/String;
           37   42    16      hostString  Ljava/lang/String;
           19   23    17  delimiterIndex  I
           38   42    17  delimiterIndex  I
           20   23    18            host  Ljava/lang/String;
           39   42    18            host  Ljava/lang/String;
           21   23    19         address  Ljava/lang/String;
           40   42    19         address  Ljava/lang/String;
           22   23    20            port  I
           41   42    20            port  I
           25   27    15            udsa  Ljava/net/UnixDomainSocketAddress;
           44   46    15            udsa  Ljava/net/UnixDomainSocketAddress;
           26   27    16            path  Ljava/lang/String;
           45   46    16            path  Ljava/lang/String;
      Exception table:
        from    to  target  type
           5     8       8  any
    Exceptions:
      throws java.io.IOException
    RuntimeVisibleAnnotations: 
      jdk.jfr.internal.instrument.JIInstrumentationMethod()
    MethodParameters:
        Name  Flags
      srcs    
      offset  
      length  
}
SourceFile: "SocketChannelImplInstrumentor.java"
    RuntimeVisibleAnnotations: 
      jdk.jfr.internal.instrument.JIInstrumentationTarget(value = "sun.nio.ch.SocketChannelImpl")