public class org.apache.cassandra.repair.LocalSyncTask extends org.apache.cassandra.repair.SyncTask implements org.apache.cassandra.streaming.StreamEventHandler
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.cassandra.repair.LocalSyncTask
  super_class: org.apache.cassandra.repair.SyncTask
{
  private final org.apache.cassandra.tracing.TraceState state;
    descriptor: Lorg/apache/cassandra/tracing/TraceState;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final org.slf4j.Logger logger;
    descriptor: Lorg/slf4j/Logger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final long repairedAt;
    descriptor: J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean pullRepair;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static volatile int[] $SWITCH_TABLE$org$apache$cassandra$streaming$StreamEvent$Type;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 46
            ldc Lorg/apache/cassandra/repair/LocalSyncTask;
            invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
            putstatic org.apache.cassandra.repair.LocalSyncTask.logger:Lorg/slf4j/Logger;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.apache.cassandra.repair.RepairJobDesc, java.net.InetAddress, java.net.InetAddress, java.util.List<org.apache.cassandra.dht.Range<org.apache.cassandra.dht.Token>>, long, );
    descriptor: (Lorg/apache/cassandra/repair/RepairJobDesc;Ljava/net/InetAddress;Ljava/net/InetAddress;Ljava/util/List;JZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=7
        start local 0 // org.apache.cassandra.repair.LocalSyncTask this
        start local 1 // org.apache.cassandra.repair.RepairJobDesc desc
        start local 2 // java.net.InetAddress firstEndpoint
        start local 3 // java.net.InetAddress secondEndpoint
        start local 4 // java.util.List rangesToSync
        start local 5 // long repairedAt
        start local 7 // boolean pullRepair
         0: .line 54
            aload 0 /* this */
            aload 1 /* desc */
            aload 2 /* firstEndpoint */
            aload 3 /* secondEndpoint */
            aload 4 /* rangesToSync */
            invokespecial org.apache.cassandra.repair.SyncTask.<init>:(Lorg/apache/cassandra/repair/RepairJobDesc;Ljava/net/InetAddress;Ljava/net/InetAddress;Ljava/util/List;)V
         1: .line 44
            aload 0 /* this */
            getstatic org.apache.cassandra.tracing.Tracing.instance:Lorg/apache/cassandra/tracing/Tracing;
            invokevirtual org.apache.cassandra.tracing.Tracing.get:()Lorg/apache/cassandra/tracing/TraceState;
            putfield org.apache.cassandra.repair.LocalSyncTask.state:Lorg/apache/cassandra/tracing/TraceState;
         2: .line 55
            aload 0 /* this */
            lload 5 /* repairedAt */
            putfield org.apache.cassandra.repair.LocalSyncTask.repairedAt:J
         3: .line 56
            aload 0 /* this */
            iload 7 /* pullRepair */
            putfield org.apache.cassandra.repair.LocalSyncTask.pullRepair:Z
         4: .line 57
            return
        end local 7 // boolean pullRepair
        end local 5 // long repairedAt
        end local 4 // java.util.List rangesToSync
        end local 3 // java.net.InetAddress secondEndpoint
        end local 2 // java.net.InetAddress firstEndpoint
        end local 1 // org.apache.cassandra.repair.RepairJobDesc desc
        end local 0 // org.apache.cassandra.repair.LocalSyncTask this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            this  Lorg/apache/cassandra/repair/LocalSyncTask;
            0    5     1            desc  Lorg/apache/cassandra/repair/RepairJobDesc;
            0    5     2   firstEndpoint  Ljava/net/InetAddress;
            0    5     3  secondEndpoint  Ljava/net/InetAddress;
            0    5     4    rangesToSync  Ljava/util/List<Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;>;
            0    5     5      repairedAt  J
            0    5     7      pullRepair  Z
    Signature: (Lorg/apache/cassandra/repair/RepairJobDesc;Ljava/net/InetAddress;Ljava/net/InetAddress;Ljava/util/List<Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;>;JZ)V
    MethodParameters:
                Name  Flags
      desc            
      firstEndpoint   
      secondEndpoint  
      rangesToSync    
      repairedAt      
      pullRepair      

  protected void startSync(java.util.List<org.apache.cassandra.dht.Range<org.apache.cassandra.dht.Token>>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=9, locals=8, args_size=2
        start local 0 // org.apache.cassandra.repair.LocalSyncTask this
        start local 1 // java.util.List differences
         0: .line 65
            invokestatic org.apache.cassandra.utils.FBUtilities.getBroadcastAddress:()Ljava/net/InetAddress;
            astore 2 /* local */
        start local 2 // java.net.InetAddress local
         1: .line 67
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.secondEndpoint:Ljava/net/InetAddress;
            aload 2 /* local */
            invokevirtual java.net.InetAddress.equals:(Ljava/lang/Object;)Z
            ifeq 2
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.firstEndpoint:Ljava/net/InetAddress;
            goto 3
      StackMap locals: java.net.InetAddress
      StackMap stack:
         2: aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.secondEndpoint:Ljava/net/InetAddress;
      StackMap locals:
      StackMap stack: java.net.InetAddress
         3: astore 3 /* dst */
        start local 3 // java.net.InetAddress dst
         4: .line 68
            aload 3 /* dst */
            invokestatic org.apache.cassandra.db.SystemKeyspace.getPreferredIP:(Ljava/net/InetAddress;)Ljava/net/InetAddress;
            astore 4 /* preferred */
        start local 4 // java.net.InetAddress preferred
         5: .line 70
            ldc "Performing streaming repair of %d ranges with %s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* differences */
            invokeinterface java.util.List.size:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            aload 3 /* dst */
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 5 /* message */
        start local 5 // java.lang.String message
         6: .line 71
            getstatic org.apache.cassandra.repair.LocalSyncTask.logger:Lorg/slf4j/Logger;
            ldc "[repair #{}] {}"
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.desc:Lorg/apache/cassandra/repair/RepairJobDesc;
            getfield org.apache.cassandra.repair.RepairJobDesc.sessionId:Ljava/util/UUID;
            aload 5 /* message */
            invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
         7: .line 72
            iconst_0
            istore 6 /* isIncremental */
        start local 6 // boolean isIncremental
         8: .line 73
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.desc:Lorg/apache/cassandra/repair/RepairJobDesc;
            getfield org.apache.cassandra.repair.RepairJobDesc.parentSessionId:Ljava/util/UUID;
            ifnull 11
         9: .line 75
            getstatic org.apache.cassandra.service.ActiveRepairService.instance:Lorg/apache/cassandra/service/ActiveRepairService;
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.desc:Lorg/apache/cassandra/repair/RepairJobDesc;
            getfield org.apache.cassandra.repair.RepairJobDesc.parentSessionId:Ljava/util/UUID;
            invokevirtual org.apache.cassandra.service.ActiveRepairService.getParentRepairSession:(Ljava/util/UUID;)Lorg/apache/cassandra/service/ActiveRepairService$ParentRepairSession;
            astore 7 /* prs */
        start local 7 // org.apache.cassandra.service.ActiveRepairService$ParentRepairSession prs
        10: .line 76
            aload 7 /* prs */
            getfield org.apache.cassandra.service.ActiveRepairService$ParentRepairSession.isIncremental:Z
            istore 6 /* isIncremental */
        end local 7 // org.apache.cassandra.service.ActiveRepairService$ParentRepairSession prs
        11: .line 78
      StackMap locals: org.apache.cassandra.repair.LocalSyncTask java.util.List java.net.InetAddress java.net.InetAddress java.net.InetAddress java.lang.String int
      StackMap stack:
            aload 5 /* message */
            iconst_0
            anewarray java.lang.Object
            invokestatic org.apache.cassandra.tracing.Tracing.traceRepair:(Ljava/lang/String;[Ljava/lang/Object;)V
        12: .line 79
            new org.apache.cassandra.streaming.StreamPlan
            dup
            ldc "Repair"
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.repairedAt:J
            iconst_1
            iconst_0
            iload 6 /* isIncremental */
            iconst_0
            invokespecial org.apache.cassandra.streaming.StreamPlan.<init>:(Ljava/lang/String;JIZZZ)V
            aload 0 /* this */
            iconst_0
            anewarray org.apache.cassandra.streaming.StreamEventHandler
            invokevirtual org.apache.cassandra.streaming.StreamPlan.listeners:(Lorg/apache/cassandra/streaming/StreamEventHandler;[Lorg/apache/cassandra/streaming/StreamEventHandler;)Lorg/apache/cassandra/streaming/StreamPlan;
        13: .line 80
            iconst_1
            invokevirtual org.apache.cassandra.streaming.StreamPlan.flushBeforeTransfer:(Z)Lorg/apache/cassandra/streaming/StreamPlan;
        14: .line 82
            aload 3 /* dst */
            aload 4 /* preferred */
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.desc:Lorg/apache/cassandra/repair/RepairJobDesc;
            getfield org.apache.cassandra.repair.RepairJobDesc.keyspace:Ljava/lang/String;
            aload 1 /* differences */
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.desc:Lorg/apache/cassandra/repair/RepairJobDesc;
            getfield org.apache.cassandra.repair.RepairJobDesc.columnFamily:Ljava/lang/String;
            aastore
            invokevirtual org.apache.cassandra.streaming.StreamPlan.requestRanges:(Ljava/net/InetAddress;Ljava/net/InetAddress;Ljava/lang/String;Ljava/util/Collection;[Ljava/lang/String;)Lorg/apache/cassandra/streaming/StreamPlan;
        15: .line 79
            astore 7 /* plan */
        start local 7 // org.apache.cassandra.streaming.StreamPlan plan
        16: .line 83
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.pullRepair:Z
            ifne 18
        17: .line 86
            aload 7 /* plan */
            aload 3 /* dst */
            aload 4 /* preferred */
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.desc:Lorg/apache/cassandra/repair/RepairJobDesc;
            getfield org.apache.cassandra.repair.RepairJobDesc.keyspace:Ljava/lang/String;
            aload 1 /* differences */
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.desc:Lorg/apache/cassandra/repair/RepairJobDesc;
            getfield org.apache.cassandra.repair.RepairJobDesc.columnFamily:Ljava/lang/String;
            aastore
            invokevirtual org.apache.cassandra.streaming.StreamPlan.transferRanges:(Ljava/net/InetAddress;Ljava/net/InetAddress;Ljava/lang/String;Ljava/util/Collection;[Ljava/lang/String;)Lorg/apache/cassandra/streaming/StreamPlan;
            pop
        18: .line 89
      StackMap locals: org.apache.cassandra.streaming.StreamPlan
      StackMap stack:
            aload 7 /* plan */
            invokevirtual org.apache.cassandra.streaming.StreamPlan.execute:()Lorg/apache/cassandra/streaming/StreamResultFuture;
            pop
        19: .line 90
            return
        end local 7 // org.apache.cassandra.streaming.StreamPlan plan
        end local 6 // boolean isIncremental
        end local 5 // java.lang.String message
        end local 4 // java.net.InetAddress preferred
        end local 3 // java.net.InetAddress dst
        end local 2 // java.net.InetAddress local
        end local 1 // java.util.List differences
        end local 0 // org.apache.cassandra.repair.LocalSyncTask this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   20     0           this  Lorg/apache/cassandra/repair/LocalSyncTask;
            0   20     1    differences  Ljava/util/List<Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;>;
            1   20     2          local  Ljava/net/InetAddress;
            4   20     3            dst  Ljava/net/InetAddress;
            5   20     4      preferred  Ljava/net/InetAddress;
            6   20     5        message  Ljava/lang/String;
            8   20     6  isIncremental  Z
           10   11     7            prs  Lorg/apache/cassandra/service/ActiveRepairService$ParentRepairSession;
           16   20     7           plan  Lorg/apache/cassandra/streaming/StreamPlan;
    Signature: (Ljava/util/List<Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;>;)V
    MethodParameters:
             Name  Flags
      differences  

  public void handleStreamEvent(org.apache.cassandra.streaming.StreamEvent);
    descriptor: (Lorg/apache/cassandra/streaming/StreamEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=5, args_size=2
        start local 0 // org.apache.cassandra.repair.LocalSyncTask this
        start local 1 // org.apache.cassandra.streaming.StreamEvent event
         0: .line 94
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.state:Lorg/apache/cassandra/tracing/TraceState;
            ifnonnull 2
         1: .line 95
            return
         2: .line 96
      StackMap locals:
      StackMap stack:
            invokestatic org.apache.cassandra.repair.LocalSyncTask.$SWITCH_TABLE$org$apache$cassandra$streaming$StreamEvent$Type:()[I
            aload 1 /* event */
            getfield org.apache.cassandra.streaming.StreamEvent.eventType:Lorg/apache/cassandra/streaming/StreamEvent$Type;
            invokevirtual org.apache.cassandra.streaming.StreamEvent$Type.ordinal:()I
            iaload
            tableswitch { // 1 - 3
                    1: 3
                    2: 6
                    3: 11
              default: 22
          }
         3: .line 99
      StackMap locals:
      StackMap stack:
            aload 1 /* event */
            checkcast org.apache.cassandra.streaming.StreamEvent$SessionPreparedEvent
            astore 2 /* spe */
        start local 2 // org.apache.cassandra.streaming.StreamEvent$SessionPreparedEvent spe
         4: .line 100
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.state:Lorg/apache/cassandra/tracing/TraceState;
            ldc "Streaming session with {} prepared"
            aload 2 /* spe */
            getfield org.apache.cassandra.streaming.StreamEvent$SessionPreparedEvent.session:Lorg/apache/cassandra/streaming/SessionInfo;
            getfield org.apache.cassandra.streaming.SessionInfo.peer:Ljava/net/InetAddress;
            invokevirtual org.apache.cassandra.tracing.TraceState.trace:(Ljava/lang/String;Ljava/lang/Object;)V
         5: .line 101
            goto 22
        end local 2 // org.apache.cassandra.streaming.StreamEvent$SessionPreparedEvent spe
         6: .line 103
      StackMap locals:
      StackMap stack:
            aload 1 /* event */
            checkcast org.apache.cassandra.streaming.StreamEvent$SessionCompleteEvent
            astore 3 /* sce */
        start local 3 // org.apache.cassandra.streaming.StreamEvent$SessionCompleteEvent sce
         7: .line 104
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.state:Lorg/apache/cassandra/tracing/TraceState;
            ldc "Streaming session with {} {}"
            aload 3 /* sce */
            getfield org.apache.cassandra.streaming.StreamEvent$SessionCompleteEvent.peer:Ljava/net/InetAddress;
            aload 3 /* sce */
            getfield org.apache.cassandra.streaming.StreamEvent$SessionCompleteEvent.success:Z
            ifeq 8
            ldc "completed successfully"
            goto 9
      StackMap locals: org.apache.cassandra.repair.LocalSyncTask org.apache.cassandra.streaming.StreamEvent top org.apache.cassandra.streaming.StreamEvent$SessionCompleteEvent
      StackMap stack: org.apache.cassandra.tracing.TraceState java.lang.String java.net.InetAddress
         8: ldc "failed"
      StackMap locals: org.apache.cassandra.repair.LocalSyncTask org.apache.cassandra.streaming.StreamEvent top org.apache.cassandra.streaming.StreamEvent$SessionCompleteEvent
      StackMap stack: org.apache.cassandra.tracing.TraceState java.lang.String java.net.InetAddress java.lang.String
         9: invokevirtual org.apache.cassandra.tracing.TraceState.trace:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        10: .line 105
            goto 22
        end local 3 // org.apache.cassandra.streaming.StreamEvent$SessionCompleteEvent sce
        11: .line 107
      StackMap locals: org.apache.cassandra.repair.LocalSyncTask org.apache.cassandra.streaming.StreamEvent
      StackMap stack:
            aload 1 /* event */
            checkcast org.apache.cassandra.streaming.StreamEvent$ProgressEvent
            getfield org.apache.cassandra.streaming.StreamEvent$ProgressEvent.progress:Lorg/apache/cassandra/streaming/ProgressInfo;
            astore 4 /* pi */
        start local 4 // org.apache.cassandra.streaming.ProgressInfo pi
        12: .line 108
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.state:Lorg/apache/cassandra/tracing/TraceState;
            ldc "{}/{} ({}%) {} idx:{}{}"
        13: .line 109
            bipush 6
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* pi */
            getfield org.apache.cassandra.streaming.ProgressInfo.currentBytes:J
            invokestatic org.apache.cassandra.utils.FBUtilities.prettyPrintMemory:(J)Ljava/lang/String;
            aastore
            dup
            iconst_1
        14: .line 110
            aload 4 /* pi */
            getfield org.apache.cassandra.streaming.ProgressInfo.totalBytes:J
            invokestatic org.apache.cassandra.utils.FBUtilities.prettyPrintMemory:(J)Ljava/lang/String;
            aastore
            dup
            iconst_2
        15: .line 111
            aload 4 /* pi */
            getfield org.apache.cassandra.streaming.ProgressInfo.currentBytes:J
            ldc 100
            lmul
            aload 4 /* pi */
            getfield org.apache.cassandra.streaming.ProgressInfo.totalBytes:J
            ldiv
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_3
        16: .line 112
            aload 4 /* pi */
            getfield org.apache.cassandra.streaming.ProgressInfo.direction:Lorg/apache/cassandra/streaming/ProgressInfo$Direction;
            getstatic org.apache.cassandra.streaming.ProgressInfo$Direction.OUT:Lorg/apache/cassandra/streaming/ProgressInfo$Direction;
            if_acmpne 17
            ldc "sent to"
            goto 18
      StackMap locals: org.apache.cassandra.repair.LocalSyncTask org.apache.cassandra.streaming.StreamEvent top top org.apache.cassandra.streaming.ProgressInfo
      StackMap stack: org.apache.cassandra.tracing.TraceState java.lang.String java.lang.Object[] java.lang.Object[] int
        17: ldc "received from"
      StackMap locals: org.apache.cassandra.repair.LocalSyncTask org.apache.cassandra.streaming.StreamEvent top top org.apache.cassandra.streaming.ProgressInfo
      StackMap stack: org.apache.cassandra.tracing.TraceState java.lang.String java.lang.Object[] java.lang.Object[] int java.lang.String
        18: aastore
            dup
            iconst_4
        19: .line 113
            aload 4 /* pi */
            getfield org.apache.cassandra.streaming.ProgressInfo.sessionIndex:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_5
        20: .line 114
            aload 4 /* pi */
            getfield org.apache.cassandra.streaming.ProgressInfo.peer:Ljava/net/InetAddress;
            aastore
        21: .line 108
            invokevirtual org.apache.cassandra.tracing.TraceState.trace:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 4 // org.apache.cassandra.streaming.ProgressInfo pi
        22: .line 116
      StackMap locals: org.apache.cassandra.repair.LocalSyncTask org.apache.cassandra.streaming.StreamEvent
      StackMap stack:
            return
        end local 1 // org.apache.cassandra.streaming.StreamEvent event
        end local 0 // org.apache.cassandra.repair.LocalSyncTask this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   23     0   this  Lorg/apache/cassandra/repair/LocalSyncTask;
            0   23     1  event  Lorg/apache/cassandra/streaming/StreamEvent;
            4    6     2    spe  Lorg/apache/cassandra/streaming/StreamEvent$SessionPreparedEvent;
            7   11     3    sce  Lorg/apache/cassandra/streaming/StreamEvent$SessionCompleteEvent;
           12   22     4     pi  Lorg/apache/cassandra/streaming/ProgressInfo;
    MethodParameters:
       Name  Flags
      event  

  public void onSuccess(org.apache.cassandra.streaming.StreamState);
    descriptor: (Lorg/apache/cassandra/streaming/StreamState;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.apache.cassandra.repair.LocalSyncTask this
        start local 1 // org.apache.cassandra.streaming.StreamState result
         0: .line 120
            ldc "Sync complete using session %s between %s and %s on %s"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.desc:Lorg/apache/cassandra/repair/RepairJobDesc;
            getfield org.apache.cassandra.repair.RepairJobDesc.sessionId:Ljava/util/UUID;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.firstEndpoint:Ljava/net/InetAddress;
            aastore
            dup
            iconst_2
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.secondEndpoint:Ljava/net/InetAddress;
            aastore
            dup
            iconst_3
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.desc:Lorg/apache/cassandra/repair/RepairJobDesc;
            getfield org.apache.cassandra.repair.RepairJobDesc.columnFamily:Ljava/lang/String;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 2 /* message */
        start local 2 // java.lang.String message
         1: .line 121
            getstatic org.apache.cassandra.repair.LocalSyncTask.logger:Lorg/slf4j/Logger;
            ldc "[repair #{}] {}"
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.desc:Lorg/apache/cassandra/repair/RepairJobDesc;
            getfield org.apache.cassandra.repair.RepairJobDesc.sessionId:Ljava/util/UUID;
            aload 2 /* message */
            invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 122
            aload 2 /* message */
            iconst_0
            anewarray java.lang.Object
            invokestatic org.apache.cassandra.tracing.Tracing.traceRepair:(Ljava/lang/String;[Ljava/lang/Object;)V
         3: .line 123
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.cassandra.repair.LocalSyncTask.stat:Lorg/apache/cassandra/repair/SyncStat;
            invokevirtual org.apache.cassandra.repair.LocalSyncTask.set:(Ljava/lang/Object;)Z
            pop
         4: .line 124
            return
        end local 2 // java.lang.String message
        end local 1 // org.apache.cassandra.streaming.StreamState result
        end local 0 // org.apache.cassandra.repair.LocalSyncTask this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/apache/cassandra/repair/LocalSyncTask;
            0    5     1   result  Lorg/apache/cassandra/streaming/StreamState;
            1    5     2  message  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      result  

  public void onFailure(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.repair.LocalSyncTask this
        start local 1 // java.lang.Throwable t
         0: .line 128
            aload 0 /* this */
            aload 1 /* t */
            invokevirtual org.apache.cassandra.repair.LocalSyncTask.setException:(Ljava/lang/Throwable;)Z
            pop
         1: .line 129
            return
        end local 1 // java.lang.Throwable t
        end local 0 // org.apache.cassandra.repair.LocalSyncTask this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/cassandra/repair/LocalSyncTask;
            0    2     1     t  Ljava/lang/Throwable;
    MethodParameters:
      Name  Flags
      t     

  public void onSuccess(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast org.apache.cassandra.streaming.StreamState
            invokevirtual org.apache.cassandra.repair.LocalSyncTask.onSuccess:(Lorg/apache/cassandra/streaming/StreamState;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static int[] $SWITCH_TABLE$org$apache$cassandra$streaming$StreamEvent$Type();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 42
            getstatic org.apache.cassandra.repair.LocalSyncTask.$SWITCH_TABLE$org$apache$cassandra$streaming$StreamEvent$Type:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.apache.cassandra.streaming.StreamEvent$Type.values:()[Lorg/apache/cassandra/streaming/StreamEvent$Type;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.apache.cassandra.streaming.StreamEvent$Type.FILE_PROGRESS:Lorg/apache/cassandra/streaming/StreamEvent$Type;
            invokevirtual org.apache.cassandra.streaming.StreamEvent$Type.ordinal:()I
            iconst_3
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.apache.cassandra.streaming.StreamEvent$Type.STREAM_COMPLETE:Lorg/apache/cassandra/streaming/StreamEvent$Type;
            invokevirtual org.apache.cassandra.streaming.StreamEvent$Type.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.apache.cassandra.streaming.StreamEvent$Type.STREAM_PREPARED:Lorg/apache/cassandra/streaming/StreamEvent$Type;
            invokevirtual org.apache.cassandra.streaming.StreamEvent$Type.ordinal:()I
            iconst_1
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            dup
            putstatic org.apache.cassandra.repair.LocalSyncTask.$SWITCH_TABLE$org$apache$cassandra$streaming$StreamEvent$Type:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
}
SourceFile: "LocalSyncTask.java"
InnerClasses:
  public ParentRepairSession = org.apache.cassandra.service.ActiveRepairService$ParentRepairSession of org.apache.cassandra.service.ActiveRepairService
  public final Direction = org.apache.cassandra.streaming.ProgressInfo$Direction of org.apache.cassandra.streaming.ProgressInfo
  public ProgressEvent = org.apache.cassandra.streaming.StreamEvent$ProgressEvent of org.apache.cassandra.streaming.StreamEvent
  public SessionCompleteEvent = org.apache.cassandra.streaming.StreamEvent$SessionCompleteEvent of org.apache.cassandra.streaming.StreamEvent
  public SessionPreparedEvent = org.apache.cassandra.streaming.StreamEvent$SessionPreparedEvent of org.apache.cassandra.streaming.StreamEvent
  public final Type = org.apache.cassandra.streaming.StreamEvent$Type of org.apache.cassandra.streaming.StreamEvent