1 package org.apache.maven.repository.legacy;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import org.apache.maven.repository.ArtifactTransferResource;
23 import org.apache.maven.wagon.resource.Resource;
24
25 class MavenArtifact
26 implements ArtifactTransferResource
27 {
28
29 private String repositoryUrl;
30
31 private Resource resource;
32
33 private long transferStartTime;
34
35 public MavenArtifact( String repositoryUrl, Resource resource )
36 {
37 if ( repositoryUrl == null )
38 {
39 this.repositoryUrl = "";
40 }
41 else if ( !repositoryUrl.endsWith( "/" ) && repositoryUrl.length() > 0 )
42 {
43 this.repositoryUrl = repositoryUrl + '/';
44 }
45 else
46 {
47 this.repositoryUrl = repositoryUrl;
48 }
49 this.resource = resource;
50
51 this.transferStartTime = System.currentTimeMillis();
52 }
53
54 public String getRepositoryUrl()
55 {
56 return repositoryUrl;
57 }
58
59 public String getName()
60 {
61 String name = resource.getName();
62
63 if ( name == null )
64 {
65 name = "";
66 }
67 else if ( name.startsWith( "/" ) )
68 {
69 name = name.substring( 1 );
70 }
71
72 return name;
73 }
74
75 public String getUrl()
76 {
77 return getRepositoryUrl() + getName();
78 }
79
80 public long getContentLength()
81 {
82 return resource.getContentLength();
83 }
84
85 public long getTransferStartTime()
86 {
87 return transferStartTime;
88 }
89
90 @Override
91 public String toString()
92 {
93 return getUrl();
94 }
95
96 }