public class org.apache.cassandra.io.util.ChecksummedSequentialWriter extends org.apache.cassandra.io.util.SequentialWriter
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.cassandra.io.util.ChecksummedSequentialWriter
  super_class: org.apache.cassandra.io.util.SequentialWriter
{
  private static final org.apache.cassandra.io.util.SequentialWriterOption CRC_WRITER_OPTION;
    descriptor: Lorg/apache/cassandra/io/util/SequentialWriterOption;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final org.apache.cassandra.io.util.SequentialWriter crcWriter;
    descriptor: Lorg/apache/cassandra/io/util/SequentialWriter;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.cassandra.io.util.ChecksumWriter crcMetadata;
    descriptor: Lorg/apache/cassandra/io/util/ChecksumWriter;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Optional<java.io.File> digestFile;
    descriptor: Ljava/util/Optional;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Optional<Ljava/io/File;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 26
            invokestatic org.apache.cassandra.io.util.SequentialWriterOption.newBuilder:()Lorg/apache/cassandra/io/util/SequentialWriterOption$Builder;
         1: .line 27
            sipush 8192
            invokevirtual org.apache.cassandra.io.util.SequentialWriterOption$Builder.bufferSize:(I)Lorg/apache/cassandra/io/util/SequentialWriterOption$Builder;
         2: .line 28
            invokevirtual org.apache.cassandra.io.util.SequentialWriterOption$Builder.build:()Lorg/apache/cassandra/io/util/SequentialWriterOption;
         3: .line 26
            putstatic org.apache.cassandra.io.util.ChecksummedSequentialWriter.CRC_WRITER_OPTION:Lorg/apache/cassandra/io/util/SequentialWriterOption;
         4: .line 28
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(java.io.File, java.io.File, java.io.File, org.apache.cassandra.io.util.SequentialWriterOption);
    descriptor: (Ljava/io/File;Ljava/io/File;Ljava/io/File;Lorg/apache/cassandra/io/util/SequentialWriterOption;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.apache.cassandra.io.util.ChecksummedSequentialWriter this
        start local 1 // java.io.File file
        start local 2 // java.io.File crcPath
        start local 3 // java.io.File digestFile
        start local 4 // org.apache.cassandra.io.util.SequentialWriterOption option
         0: .line 36
            aload 0 /* this */
            aload 1 /* file */
            aload 4 /* option */
            invokespecial org.apache.cassandra.io.util.SequentialWriter.<init>:(Ljava/io/File;Lorg/apache/cassandra/io/util/SequentialWriterOption;)V
         1: .line 37
            aload 0 /* this */
            new org.apache.cassandra.io.util.SequentialWriter
            dup
            aload 2 /* crcPath */
            getstatic org.apache.cassandra.io.util.ChecksummedSequentialWriter.CRC_WRITER_OPTION:Lorg/apache/cassandra/io/util/SequentialWriterOption;
            invokespecial org.apache.cassandra.io.util.SequentialWriter.<init>:(Ljava/io/File;Lorg/apache/cassandra/io/util/SequentialWriterOption;)V
            putfield org.apache.cassandra.io.util.ChecksummedSequentialWriter.crcWriter:Lorg/apache/cassandra/io/util/SequentialWriter;
         2: .line 38
            aload 0 /* this */
            new org.apache.cassandra.io.util.ChecksumWriter
            dup
            aload 0 /* this */
            getfield org.apache.cassandra.io.util.ChecksummedSequentialWriter.crcWriter:Lorg/apache/cassandra/io/util/SequentialWriter;
            invokespecial org.apache.cassandra.io.util.ChecksumWriter.<init>:(Ljava/io/DataOutput;)V
            putfield org.apache.cassandra.io.util.ChecksummedSequentialWriter.crcMetadata:Lorg/apache/cassandra/io/util/ChecksumWriter;
         3: .line 39
            aload 0 /* this */
            getfield org.apache.cassandra.io.util.ChecksummedSequentialWriter.crcMetadata:Lorg/apache/cassandra/io/util/ChecksumWriter;
            aload 0 /* this */
            getfield org.apache.cassandra.io.util.ChecksummedSequentialWriter.buffer:Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.capacity:()I
            invokevirtual org.apache.cassandra.io.util.ChecksumWriter.writeChunkSize:(I)V
         4: .line 40
            aload 0 /* this */
            aload 3 /* digestFile */
            invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
            putfield org.apache.cassandra.io.util.ChecksummedSequentialWriter.digestFile:Ljava/util/Optional;
         5: .line 41
            return
        end local 4 // org.apache.cassandra.io.util.SequentialWriterOption option
        end local 3 // java.io.File digestFile
        end local 2 // java.io.File crcPath
        end local 1 // java.io.File file
        end local 0 // org.apache.cassandra.io.util.ChecksummedSequentialWriter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/apache/cassandra/io/util/ChecksummedSequentialWriter;
            0    6     1        file  Ljava/io/File;
            0    6     2     crcPath  Ljava/io/File;
            0    6     3  digestFile  Ljava/io/File;
            0    6     4      option  Lorg/apache/cassandra/io/util/SequentialWriterOption;
    MethodParameters:
            Name  Flags
      file        
      crcPath     
      digestFile  
      option      

  protected void flushData();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.apache.cassandra.io.util.ChecksummedSequentialWriter this
         0: .line 46
            aload 0 /* this */
            invokespecial org.apache.cassandra.io.util.SequentialWriter.flushData:()V
         1: .line 47
            aload 0 /* this */
            getfield org.apache.cassandra.io.util.ChecksummedSequentialWriter.buffer:Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.duplicate:()Ljava/nio/ByteBuffer;
            astore 1 /* toAppend */
        start local 1 // java.nio.ByteBuffer toAppend
         2: .line 48
            aload 1 /* toAppend */
            iconst_0
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/Buffer;
            pop
         3: .line 49
            aload 1 /* toAppend */
            aload 0 /* this */
            getfield org.apache.cassandra.io.util.ChecksummedSequentialWriter.buffer:Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.position:()I
            invokevirtual java.nio.ByteBuffer.limit:(I)Ljava/nio/Buffer;
            pop
         4: .line 50
            aload 0 /* this */
            getfield org.apache.cassandra.io.util.ChecksummedSequentialWriter.crcMetadata:Lorg/apache/cassandra/io/util/ChecksumWriter;
            aload 1 /* toAppend */
            iconst_0
            invokevirtual org.apache.cassandra.io.util.ChecksumWriter.appendDirect:(Ljava/nio/ByteBuffer;Z)V
         5: .line 51
            return
        end local 1 // java.nio.ByteBuffer toAppend
        end local 0 // org.apache.cassandra.io.util.ChecksummedSequentialWriter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/apache/cassandra/io/util/ChecksummedSequentialWriter;
            2    6     1  toAppend  Ljava/nio/ByteBuffer;

  protected org.apache.cassandra.io.util.SequentialWriter$TransactionalProxy txnProxy();
    descriptor: ()Lorg/apache/cassandra/io/util/SequentialWriter$TransactionalProxy;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.cassandra.io.util.ChecksummedSequentialWriter this
         0: .line 79
            new org.apache.cassandra.io.util.ChecksummedSequentialWriter$TransactionalProxy
            dup
            aload 0 /* this */
            invokespecial org.apache.cassandra.io.util.ChecksummedSequentialWriter$TransactionalProxy.<init>:(Lorg/apache/cassandra/io/util/ChecksummedSequentialWriter;)V
            areturn
        end local 0 // org.apache.cassandra.io.util.ChecksummedSequentialWriter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/io/util/ChecksummedSequentialWriter;
}
SourceFile: "ChecksummedSequentialWriter.java"
NestMembers:
  org.apache.cassandra.io.util.ChecksummedSequentialWriter$TransactionalProxy
InnerClasses:
  protected TransactionalProxy = org.apache.cassandra.io.util.ChecksummedSequentialWriter$TransactionalProxy of org.apache.cassandra.io.util.ChecksummedSequentialWriter
  protected TransactionalProxy = org.apache.cassandra.io.util.SequentialWriter$TransactionalProxy of org.apache.cassandra.io.util.SequentialWriter
  public Builder = org.apache.cassandra.io.util.SequentialWriterOption$Builder of org.apache.cassandra.io.util.SequentialWriterOption