class org.eclipse.aether.connector.basic.TransferTransportListener<T extends org.eclipse.aether.spi.connector.Transfer> extends org.eclipse.aether.spi.connector.transport.TransportListener
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.eclipse.aether.connector.basic.TransferTransportListener
  super_class: org.eclipse.aether.spi.connector.transport.TransportListener
{
  private final T transfer;
    descriptor: Lorg/eclipse/aether/spi/connector/Transfer;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: TT;

  private final org.eclipse.aether.transfer.TransferListener listener;
    descriptor: Lorg/eclipse/aether/transfer/TransferListener;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.eclipse.aether.transfer.TransferEvent$Builder eventBuilder;
    descriptor: Lorg/eclipse/aether/transfer/TransferEvent$Builder;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private org.eclipse.aether.connector.basic.ChecksumCalculator checksumCalculator;
    descriptor: Lorg/eclipse/aether/connector/basic/ChecksumCalculator;
    flags: (0x0002) ACC_PRIVATE

  protected void <init>(T, org.eclipse.aether.transfer.TransferEvent$Builder);
    descriptor: (Lorg/eclipse/aether/spi/connector/Transfer;Lorg/eclipse/aether/transfer/TransferEvent$Builder;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
        start local 1 // org.eclipse.aether.spi.connector.Transfer transfer
        start local 2 // org.eclipse.aether.transfer.TransferEvent$Builder eventBuilder
         0: .line 45
            aload 0 /* this */
            invokespecial org.eclipse.aether.spi.connector.transport.TransportListener.<init>:()V
         1: .line 47
            aload 0 /* this */
            aload 1 /* transfer */
            putfield org.eclipse.aether.connector.basic.TransferTransportListener.transfer:Lorg/eclipse/aether/spi/connector/Transfer;
         2: .line 48
            aload 0 /* this */
            aload 1 /* transfer */
            invokevirtual org.eclipse.aether.spi.connector.Transfer.getListener:()Lorg/eclipse/aether/transfer/TransferListener;
            putfield org.eclipse.aether.connector.basic.TransferTransportListener.listener:Lorg/eclipse/aether/transfer/TransferListener;
         3: .line 49
            aload 0 /* this */
            aload 2 /* eventBuilder */
            putfield org.eclipse.aether.connector.basic.TransferTransportListener.eventBuilder:Lorg/eclipse/aether/transfer/TransferEvent$Builder;
         4: .line 50
            return
        end local 2 // org.eclipse.aether.transfer.TransferEvent$Builder eventBuilder
        end local 1 // org.eclipse.aether.spi.connector.Transfer transfer
        end local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Lorg/eclipse/aether/connector/basic/TransferTransportListener<TT;>;
            0    5     1      transfer  TT;
            0    5     2  eventBuilder  Lorg/eclipse/aether/transfer/TransferEvent$Builder;
    Signature: (TT;Lorg/eclipse/aether/transfer/TransferEvent$Builder;)V
    MethodParameters:
              Name  Flags
      transfer      
      eventBuilder  

  protected T getTransfer();
    descriptor: ()Lorg/eclipse/aether/spi/connector/Transfer;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
         0: .line 54
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.transfer:Lorg/eclipse/aether/spi/connector/Transfer;
            areturn
        end local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/aether/connector/basic/TransferTransportListener<TT;>;
    Signature: ()TT;

  public void transferInitiated();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
         0: .line 60
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.listener:Lorg/eclipse/aether/transfer/TransferListener;
            ifnull 3
         1: .line 62
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.eventBuilder:Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            getstatic org.eclipse.aether.transfer.TransferEvent$EventType.INITIATED:Lorg/eclipse/aether/transfer/TransferEvent$EventType;
            invokevirtual org.eclipse.aether.transfer.TransferEvent$Builder.resetType:(Lorg/eclipse/aether/transfer/TransferEvent$EventType;)Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            pop
         2: .line 63
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.listener:Lorg/eclipse/aether/transfer/TransferListener;
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.eventBuilder:Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            invokevirtual org.eclipse.aether.transfer.TransferEvent$Builder.build:()Lorg/eclipse/aether/transfer/TransferEvent;
            invokeinterface org.eclipse.aether.transfer.TransferListener.transferInitiated:(Lorg/eclipse/aether/transfer/TransferEvent;)V
         3: .line 65
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/eclipse/aether/connector/basic/TransferTransportListener<TT;>;
    Exceptions:
      throws org.eclipse.aether.transfer.TransferCancelledException

  public void transportStarted(long, long);
    descriptor: (JJ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
        start local 1 // long dataOffset
        start local 3 // long dataLength
         0: .line 71
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.checksumCalculator:Lorg/eclipse/aether/connector/basic/ChecksumCalculator;
            ifnull 2
         1: .line 73
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.checksumCalculator:Lorg/eclipse/aether/connector/basic/ChecksumCalculator;
            lload 1 /* dataOffset */
            invokevirtual org.eclipse.aether.connector.basic.ChecksumCalculator.init:(J)V
         2: .line 75
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.listener:Lorg/eclipse/aether/transfer/TransferListener;
            ifnull 7
         3: .line 77
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.eventBuilder:Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            getstatic org.eclipse.aether.transfer.TransferEvent$EventType.STARTED:Lorg/eclipse/aether/transfer/TransferEvent$EventType;
            invokevirtual org.eclipse.aether.transfer.TransferEvent$Builder.resetType:(Lorg/eclipse/aether/transfer/TransferEvent$EventType;)Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            lload 1 /* dataOffset */
            invokevirtual org.eclipse.aether.transfer.TransferEvent$Builder.setTransferredBytes:(J)Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            pop
         4: .line 78
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.eventBuilder:Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            invokevirtual org.eclipse.aether.transfer.TransferEvent$Builder.build:()Lorg/eclipse/aether/transfer/TransferEvent;
            astore 5 /* event */
        start local 5 // org.eclipse.aether.transfer.TransferEvent event
         5: .line 79
            aload 5 /* event */
            invokevirtual org.eclipse.aether.transfer.TransferEvent.getResource:()Lorg/eclipse/aether/transfer/TransferResource;
            lload 3 /* dataLength */
            invokevirtual org.eclipse.aether.transfer.TransferResource.setContentLength:(J)Lorg/eclipse/aether/transfer/TransferResource;
            lload 1 /* dataOffset */
            invokevirtual org.eclipse.aether.transfer.TransferResource.setResumeOffset:(J)Lorg/eclipse/aether/transfer/TransferResource;
            pop
         6: .line 80
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.listener:Lorg/eclipse/aether/transfer/TransferListener;
            aload 5 /* event */
            invokeinterface org.eclipse.aether.transfer.TransferListener.transferStarted:(Lorg/eclipse/aether/transfer/TransferEvent;)V
        end local 5 // org.eclipse.aether.transfer.TransferEvent event
         7: .line 82
      StackMap locals:
      StackMap stack:
            return
        end local 3 // long dataLength
        end local 1 // long dataOffset
        end local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        this  Lorg/eclipse/aether/connector/basic/TransferTransportListener<TT;>;
            0    8     1  dataOffset  J
            0    8     3  dataLength  J
            5    7     5       event  Lorg/eclipse/aether/transfer/TransferEvent;
    Exceptions:
      throws org.eclipse.aether.transfer.TransferCancelledException
    MethodParameters:
            Name  Flags
      dataOffset  
      dataLength  

  public void transportProgressed(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
        start local 1 // java.nio.ByteBuffer data
         0: .line 88
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.checksumCalculator:Lorg/eclipse/aether/connector/basic/ChecksumCalculator;
            ifnull 2
         1: .line 90
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.checksumCalculator:Lorg/eclipse/aether/connector/basic/ChecksumCalculator;
            aload 1 /* data */
            invokevirtual org.eclipse.aether.connector.basic.ChecksumCalculator.update:(Ljava/nio/ByteBuffer;)V
         2: .line 92
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.listener:Lorg/eclipse/aether/transfer/TransferListener;
            ifnull 6
         3: .line 94
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.eventBuilder:Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            getstatic org.eclipse.aether.transfer.TransferEvent$EventType.PROGRESSED:Lorg/eclipse/aether/transfer/TransferEvent$EventType;
            invokevirtual org.eclipse.aether.transfer.TransferEvent$Builder.resetType:(Lorg/eclipse/aether/transfer/TransferEvent$EventType;)Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            aload 1 /* data */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            i2l
            invokevirtual org.eclipse.aether.transfer.TransferEvent$Builder.addTransferredBytes:(J)Lorg/eclipse/aether/transfer/TransferEvent$Builder;
         4: .line 95
            aload 1 /* data */
            invokevirtual org.eclipse.aether.transfer.TransferEvent$Builder.setDataBuffer:(Ljava/nio/ByteBuffer;)Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            pop
         5: .line 96
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.listener:Lorg/eclipse/aether/transfer/TransferListener;
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.eventBuilder:Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            invokevirtual org.eclipse.aether.transfer.TransferEvent$Builder.build:()Lorg/eclipse/aether/transfer/TransferEvent;
            invokeinterface org.eclipse.aether.transfer.TransferListener.transferProgressed:(Lorg/eclipse/aether/transfer/TransferEvent;)V
         6: .line 98
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.nio.ByteBuffer data
        end local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/eclipse/aether/connector/basic/TransferTransportListener<TT;>;
            0    7     1  data  Ljava/nio/ByteBuffer;
    Exceptions:
      throws org.eclipse.aether.transfer.TransferCancelledException
    MethodParameters:
      Name  Flags
      data  

  public void transferCorrupted(java.lang.Exception);
    descriptor: (Ljava/lang/Exception;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
        start local 1 // java.lang.Exception exception
         0: .line 103
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.listener:Lorg/eclipse/aether/transfer/TransferListener;
            ifnull 3
         1: .line 105
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.eventBuilder:Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            getstatic org.eclipse.aether.transfer.TransferEvent$EventType.CORRUPTED:Lorg/eclipse/aether/transfer/TransferEvent$EventType;
            invokevirtual org.eclipse.aether.transfer.TransferEvent$Builder.resetType:(Lorg/eclipse/aether/transfer/TransferEvent$EventType;)Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            aload 1 /* exception */
            invokevirtual org.eclipse.aether.transfer.TransferEvent$Builder.setException:(Ljava/lang/Exception;)Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            pop
         2: .line 106
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.listener:Lorg/eclipse/aether/transfer/TransferListener;
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.eventBuilder:Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            invokevirtual org.eclipse.aether.transfer.TransferEvent$Builder.build:()Lorg/eclipse/aether/transfer/TransferEvent;
            invokeinterface org.eclipse.aether.transfer.TransferListener.transferCorrupted:(Lorg/eclipse/aether/transfer/TransferEvent;)V
         3: .line 108
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Exception exception
        end local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/eclipse/aether/connector/basic/TransferTransportListener<TT;>;
            0    4     1  exception  Ljava/lang/Exception;
    Exceptions:
      throws org.eclipse.aether.transfer.TransferCancelledException
    MethodParameters:
           Name  Flags
      exception  

  public void transferFailed(java.lang.Exception, int);
    descriptor: (Ljava/lang/Exception;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
        start local 1 // java.lang.Exception exception
        start local 2 // int classification
         0: .line 112
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.listener:Lorg/eclipse/aether/transfer/TransferListener;
            ifnull 3
         1: .line 114
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.eventBuilder:Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            getstatic org.eclipse.aether.transfer.TransferEvent$EventType.FAILED:Lorg/eclipse/aether/transfer/TransferEvent$EventType;
            invokevirtual org.eclipse.aether.transfer.TransferEvent$Builder.resetType:(Lorg/eclipse/aether/transfer/TransferEvent$EventType;)Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            aload 1 /* exception */
            invokevirtual org.eclipse.aether.transfer.TransferEvent$Builder.setException:(Ljava/lang/Exception;)Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            pop
         2: .line 115
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.listener:Lorg/eclipse/aether/transfer/TransferListener;
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.eventBuilder:Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            invokevirtual org.eclipse.aether.transfer.TransferEvent$Builder.build:()Lorg/eclipse/aether/transfer/TransferEvent;
            invokeinterface org.eclipse.aether.transfer.TransferListener.transferFailed:(Lorg/eclipse/aether/transfer/TransferEvent;)V
         3: .line 117
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int classification
        end local 1 // java.lang.Exception exception
        end local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Lorg/eclipse/aether/connector/basic/TransferTransportListener<TT;>;
            0    4     1       exception  Ljava/lang/Exception;
            0    4     2  classification  I
    MethodParameters:
                Name  Flags
      exception       
      classification  

  public void transferSucceeded();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
         0: .line 121
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.listener:Lorg/eclipse/aether/transfer/TransferListener;
            ifnull 3
         1: .line 123
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.eventBuilder:Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            getstatic org.eclipse.aether.transfer.TransferEvent$EventType.SUCCEEDED:Lorg/eclipse/aether/transfer/TransferEvent$EventType;
            invokevirtual org.eclipse.aether.transfer.TransferEvent$Builder.resetType:(Lorg/eclipse/aether/transfer/TransferEvent$EventType;)Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            pop
         2: .line 124
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.listener:Lorg/eclipse/aether/transfer/TransferListener;
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.eventBuilder:Lorg/eclipse/aether/transfer/TransferEvent$Builder;
            invokevirtual org.eclipse.aether.transfer.TransferEvent$Builder.build:()Lorg/eclipse/aether/transfer/TransferEvent;
            invokeinterface org.eclipse.aether.transfer.TransferListener.transferSucceeded:(Lorg/eclipse/aether/transfer/TransferEvent;)V
         3: .line 126
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/eclipse/aether/connector/basic/TransferTransportListener<TT;>;

  public java.util.Map<java.lang.String, java.lang.Object> getChecksums();
    descriptor: ()Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
         0: .line 130
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.checksumCalculator:Lorg/eclipse/aether/connector/basic/ChecksumCalculator;
            ifnonnull 2
         1: .line 132
            invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
            areturn
         2: .line 134
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.aether.connector.basic.TransferTransportListener.checksumCalculator:Lorg/eclipse/aether/connector/basic/ChecksumCalculator;
            invokevirtual org.eclipse.aether.connector.basic.ChecksumCalculator.get:()Ljava/util/Map;
            areturn
        end local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/eclipse/aether/connector/basic/TransferTransportListener<TT;>;
    Signature: ()Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;

  public void setChecksumCalculator(org.eclipse.aether.connector.basic.ChecksumCalculator);
    descriptor: (Lorg/eclipse/aether/connector/basic/ChecksumCalculator;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
        start local 1 // org.eclipse.aether.connector.basic.ChecksumCalculator checksumCalculator
         0: .line 139
            aload 0 /* this */
            aload 1 /* checksumCalculator */
            putfield org.eclipse.aether.connector.basic.TransferTransportListener.checksumCalculator:Lorg/eclipse/aether/connector/basic/ChecksumCalculator;
         1: .line 140
            return
        end local 1 // org.eclipse.aether.connector.basic.ChecksumCalculator checksumCalculator
        end local 0 // org.eclipse.aether.connector.basic.TransferTransportListener this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    2     0                this  Lorg/eclipse/aether/connector/basic/TransferTransportListener<TT;>;
            0    2     1  checksumCalculator  Lorg/eclipse/aether/connector/basic/ChecksumCalculator;
    MethodParameters:
                    Name  Flags
      checksumCalculator  
}
Signature: <T:Lorg/eclipse/aether/spi/connector/Transfer;>Lorg/eclipse/aether/spi/connector/transport/TransportListener;
SourceFile: "TransferTransportListener.java"
InnerClasses:
  public final Builder = org.eclipse.aether.transfer.TransferEvent$Builder of org.eclipse.aether.transfer.TransferEvent
  public final EventType = org.eclipse.aether.transfer.TransferEvent$EventType of org.eclipse.aether.transfer.TransferEvent