1 package org.eclipse.aether.connector.basic;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import org.eclipse.aether.repository.RemoteRepository;
23 import org.eclipse.aether.spi.connector.ArtifactTransfer;
24 import org.eclipse.aether.spi.connector.transport.Transporter;
25 import org.eclipse.aether.transfer.ArtifactNotFoundException;
26 import org.eclipse.aether.transfer.ArtifactTransferException;
27 import org.eclipse.aether.transfer.TransferEvent;
28
29 final class ArtifactTransportListener
30 extends TransferTransportListener<ArtifactTransfer>
31 {
32
33 private final RemoteRepository repository;
34
35 ArtifactTransportListener( ArtifactTransfer transfer, RemoteRepository repository,
36 TransferEvent.Builder eventBuilder )
37 {
38 super( transfer, eventBuilder );
39 this.repository = repository;
40 }
41
42 @Override
43 public void transferFailed( Exception exception, int classification )
44 {
45 ArtifactTransferException e;
46 if ( classification == Transporter.ERROR_NOT_FOUND )
47 {
48 e = new ArtifactNotFoundException( getTransfer().getArtifact(), repository );
49 }
50 else
51 {
52 e = new ArtifactTransferException( getTransfer().getArtifact(), repository, exception );
53 }
54 getTransfer().setException( e );
55 super.transferFailed( e, classification );
56 }
57
58 }