public class org.apache.cassandra.tools.SSTableRepairedAtSetter
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.cassandra.tools.SSTableRepairedAtSetter
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.tools.SSTableRepairedAtSetter this
         0: .line 45
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.apache.cassandra.tools.SSTableRepairedAtSetter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/tools/SSTableRepairedAtSetter;

  public static void main(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=8, args_size=1
        start local 0 // java.lang.String[] args
         0: .line 52
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            astore 1 /* out */
        start local 1 // java.io.PrintStream out
         1: .line 53
            aload 0 /* args */
            arraylength
            ifne 5
         2: .line 55
            aload 1 /* out */
            ldc "This command should be run with Cassandra stopped!"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         3: .line 56
            aload 1 /* out */
            ldc "Usage: sstablerepairedset [--is-repaired | --is-unrepaired] [-f <sstable-list> | <sstables>]"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         4: .line 57
            iconst_1
            invokestatic java.lang.System.exit:(I)V
         5: .line 60
      StackMap locals: java.io.PrintStream
      StackMap stack:
            aload 0 /* args */
            arraylength
            iconst_3
            if_icmplt 6
            aload 0 /* args */
            iconst_0
            aaload
            ldc "--really-set"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
            aload 0 /* args */
            iconst_1
            aaload
            ldc "--is-repaired"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 10
            aload 0 /* args */
            iconst_1
            aaload
            ldc "--is-unrepaired"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 10
         6: .line 62
      StackMap locals:
      StackMap stack:
            aload 1 /* out */
            ldc "This command should be run with Cassandra stopped, otherwise you will get very strange behavior"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         7: .line 63
            aload 1 /* out */
            ldc "Verify that Cassandra is not running and then execute the command like this:"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         8: .line 64
            aload 1 /* out */
            ldc "Usage: sstablerepairedset --really-set [--is-repaired | --is-unrepaired] [-f <sstable-list> | <sstables>]"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         9: .line 65
            iconst_1
            invokestatic java.lang.System.exit:(I)V
        10: .line 68
      StackMap locals:
      StackMap stack:
            invokestatic org.apache.cassandra.tools.Util.initDatabaseDescriptor:()V
        11: .line 70
            aload 0 /* args */
            iconst_1
            aaload
            ldc "--is-repaired"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            istore 2 /* setIsRepaired */
        start local 2 // boolean setIsRepaired
        12: .line 73
            aload 0 /* args */
            iconst_2
            aaload
            ldc "-f"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 15
        13: .line 75
            aload 0 /* args */
            iconst_3
            aaload
            iconst_0
            anewarray java.lang.String
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
            invokestatic java.nio.charset.Charset.defaultCharset:()Ljava/nio/charset/Charset;
            invokestatic java.nio.file.Files.readAllLines:(Ljava/nio/file/Path;Ljava/nio/charset/Charset;)Ljava/util/List;
            astore 3 /* fileNames */
        start local 3 // java.util.List fileNames
        14: .line 76
            goto 16
        end local 3 // java.util.List fileNames
        15: .line 79
      StackMap locals: int
      StackMap stack:
            aload 0 /* args */
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            iconst_2
            aload 0 /* args */
            arraylength
            invokeinterface java.util.List.subList:(II)Ljava/util/List;
            astore 3 /* fileNames */
        start local 3 // java.util.List fileNames
        16: .line 82
      StackMap locals: java.util.List
      StackMap stack:
            aload 3 /* fileNames */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 27
      StackMap locals: java.lang.String[] java.io.PrintStream int java.util.List top java.util.Iterator
      StackMap stack:
        17: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* fname */
        start local 4 // java.lang.String fname
        18: .line 84
            aload 4 /* fname */
            invokestatic org.apache.cassandra.io.sstable.Descriptor.fromFilename:(Ljava/lang/String;)Lorg/apache/cassandra/io/sstable/Descriptor;
            astore 6 /* descriptor */
        start local 6 // org.apache.cassandra.io.sstable.Descriptor descriptor
        19: .line 85
            aload 6 /* descriptor */
            getfield org.apache.cassandra.io.sstable.Descriptor.version:Lorg/apache/cassandra/io/sstable/format/Version;
            invokevirtual org.apache.cassandra.io.sstable.format.Version.hasRepairedAt:()Z
            ifeq 26
        20: .line 87
            iload 2 /* setIsRepaired */
            ifeq 24
        21: .line 89
            new java.io.File
            dup
            aload 6 /* descriptor */
            getstatic org.apache.cassandra.io.sstable.Component.DATA:Lorg/apache/cassandra/io/sstable/Component;
            invokevirtual org.apache.cassandra.io.sstable.Descriptor.filenameFor:(Lorg/apache/cassandra/io/sstable/Component;)Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
            iconst_0
            anewarray java.nio.file.LinkOption
            invokestatic java.nio.file.Files.getLastModifiedTime:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Ljava/nio/file/attribute/FileTime;
            astore 7 /* f */
        start local 7 // java.nio.file.attribute.FileTime f
        22: .line 90
            aload 6 /* descriptor */
            invokevirtual org.apache.cassandra.io.sstable.Descriptor.getMetadataSerializer:()Lorg/apache/cassandra/io/sstable/metadata/IMetadataSerializer;
            aload 6 /* descriptor */
            aload 7 /* f */
            invokevirtual java.nio.file.attribute.FileTime.toMillis:()J
            invokeinterface org.apache.cassandra.io.sstable.metadata.IMetadataSerializer.mutateRepairedAt:(Lorg/apache/cassandra/io/sstable/Descriptor;J)V
        end local 7 // java.nio.file.attribute.FileTime f
        23: .line 91
            goto 27
        24: .line 94
      StackMap locals: java.lang.String[] java.io.PrintStream int java.util.List java.lang.String java.util.Iterator org.apache.cassandra.io.sstable.Descriptor
      StackMap stack:
            aload 6 /* descriptor */
            invokevirtual org.apache.cassandra.io.sstable.Descriptor.getMetadataSerializer:()Lorg/apache/cassandra/io/sstable/metadata/IMetadataSerializer;
            aload 6 /* descriptor */
            lconst_0
            invokeinterface org.apache.cassandra.io.sstable.metadata.IMetadataSerializer.mutateRepairedAt:(Lorg/apache/cassandra/io/sstable/Descriptor;J)V
        25: .line 96
            goto 27
        26: .line 99
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "SSTable "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* fname */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " does not have repaired property, run upgradesstables"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        end local 6 // org.apache.cassandra.io.sstable.Descriptor descriptor
        end local 4 // java.lang.String fname
        27: .line 82
      StackMap locals: java.lang.String[] java.io.PrintStream int java.util.List top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 17
        28: .line 102
            return
        end local 3 // java.util.List fileNames
        end local 2 // boolean setIsRepaired
        end local 1 // java.io.PrintStream out
        end local 0 // java.lang.String[] args
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   29     0           args  [Ljava/lang/String;
            1   29     1            out  Ljava/io/PrintStream;
           12   29     2  setIsRepaired  Z
           14   15     3      fileNames  Ljava/util/List<Ljava/lang/String;>;
           16   29     3      fileNames  Ljava/util/List<Ljava/lang/String;>;
           18   27     4          fname  Ljava/lang/String;
           19   27     6     descriptor  Lorg/apache/cassandra/io/sstable/Descriptor;
           22   23     7              f  Ljava/nio/file/attribute/FileTime;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      args  final
}
SourceFile: "SSTableRepairedAtSetter.java"