1 package org.sonatype.aether.transfer;
2
3
4
5
6
7
8
9
10
11 import org.sonatype.aether.RepositoryException;
12 import org.sonatype.aether.metadata.Metadata;
13 import org.sonatype.aether.repository.RemoteRepository;
14
15
16
17
18
19
20 public class MetadataTransferException
21 extends RepositoryException
22 {
23
24 private final Metadata metadata;
25
26 private final RemoteRepository repository;
27
28 static String getString( String prefix, RemoteRepository repository )
29 {
30 if ( repository == null )
31 {
32 return "";
33 }
34 else
35 {
36 return prefix + repository.getId() + " (" + repository.getUrl() + ")";
37 }
38 }
39
40 public MetadataTransferException( Metadata metadata, RemoteRepository repository, String message )
41 {
42 super( message );
43
44 this.metadata = metadata;
45 this.repository = repository;
46 }
47
48 public MetadataTransferException( Metadata metadata, RemoteRepository repository, Throwable cause )
49 {
50 super( "Could not transfer metadata " + metadata + getString( " from/to ", repository )
51 + getMessage( ": ", cause ), cause );
52
53 this.metadata = metadata;
54 this.repository = repository;
55 }
56
57 public MetadataTransferException( Metadata metadata, RemoteRepository repository, String message, Throwable cause )
58 {
59 super( message, cause );
60
61 this.metadata = metadata;
62 this.repository = repository;
63 }
64
65 public Metadata getMetadata()
66 {
67 return metadata;
68 }
69
70 public RemoteRepository getRepository()
71 {
72 return repository;
73 }
74
75 }