1 package org.apache.maven.plugin.gpg;
2
3 import org.apache.maven.artifact.Artifact;
4 import org.apache.maven.artifact.handler.ArtifactHandler;
5 import org.apache.maven.artifact.metadata.ArtifactMetadata;
6 import org.apache.maven.artifact.repository.ArtifactRepository;
7 import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
8 import org.apache.maven.artifact.versioning.ArtifactVersion;
9 import org.apache.maven.artifact.versioning.OverConstrainedVersionException;
10 import org.apache.maven.artifact.versioning.VersionRange;
11
12 import java.io.File;
13 import java.util.ArrayList;
14 import java.util.Collection;
15 import java.util.Iterator;
16 import java.util.List;
17
18
19
20
21
22 public class AttachedSignedArtifact
23 implements Artifact
24 {
25 private final Artifact delegate;
26
27 private final AscArtifactMetadata signature;
28
29 public AttachedSignedArtifact( Artifact delegate, AscArtifactMetadata signature )
30 {
31 this.delegate = delegate;
32 this.signature = signature;
33 }
34
35 public void setArtifactId( String artifactId )
36 {
37 delegate.setArtifactId( artifactId );
38 }
39
40 public List getAvailableVersions()
41 {
42 return delegate.getAvailableVersions();
43 }
44
45 public void setAvailableVersions( List availableVersions )
46 {
47 delegate.setAvailableVersions( availableVersions );
48 }
49
50 public String getBaseVersion()
51 {
52 return delegate.getBaseVersion();
53 }
54
55 public void setBaseVersion( String baseVersion )
56 {
57 delegate.setBaseVersion( baseVersion );
58 }
59
60 public String getDownloadUrl()
61 {
62 return delegate.getDownloadUrl();
63 }
64
65 public void setDownloadUrl( String downloadUrl )
66 {
67 delegate.setDownloadUrl( downloadUrl );
68 }
69
70 public void setGroupId( String groupId )
71 {
72 delegate.setGroupId( groupId );
73 }
74
75 public ArtifactRepository getRepository()
76 {
77 return delegate.getRepository();
78 }
79
80 public void setRepository( ArtifactRepository repository )
81 {
82 delegate.setRepository( repository );
83 }
84
85 public String getScope()
86 {
87 return delegate.getScope();
88 }
89
90 public void setScope( String scope )
91 {
92 delegate.setScope( scope );
93 }
94
95 public String getVersion()
96 {
97 return delegate.getVersion();
98 }
99
100 public void setVersion( String version )
101 {
102 delegate.setVersion( version );
103 }
104
105 public VersionRange getVersionRange()
106 {
107 return delegate.getVersionRange();
108 }
109
110 public void setVersionRange( VersionRange range )
111 {
112 delegate.setVersionRange( range );
113 }
114
115 public boolean isRelease()
116 {
117 return delegate.isRelease();
118 }
119
120 public void setRelease( boolean release )
121 {
122 delegate.setRelease( release );
123 }
124
125 public boolean isSnapshot()
126 {
127 return delegate.isSnapshot();
128 }
129
130 public void addMetadata( ArtifactMetadata metadata )
131 {
132 delegate.addMetadata( metadata );
133 }
134
135 public String getClassifier()
136 {
137 return delegate.getClassifier();
138 }
139
140 public boolean hasClassifier()
141 {
142 return delegate.hasClassifier();
143 }
144
145 public String getGroupId()
146 {
147 return delegate.getGroupId();
148 }
149
150 public String getArtifactId()
151 {
152 return delegate.getArtifactId();
153 }
154
155 public String getType()
156 {
157 return delegate.getType();
158 }
159
160 public void setFile( File file )
161 {
162 delegate.setFile( file );
163 }
164
165 public File getFile()
166 {
167 return delegate.getFile();
168 }
169
170 public String getId()
171 {
172 return delegate.getId();
173 }
174
175 public String getDependencyConflictId()
176 {
177 return delegate.getDependencyConflictId();
178 }
179
180 public String toString()
181 {
182 return delegate.toString();
183 }
184
185 public int hashCode()
186 {
187 return delegate.hashCode();
188 }
189
190 public boolean equals( Object o )
191 {
192 return delegate.equals( o );
193 }
194
195 public int compareTo( Object o )
196 {
197 return delegate.compareTo( o );
198 }
199
200 public void updateVersion( String version, ArtifactRepository localRepository )
201 {
202 delegate.updateVersion( version, localRepository );
203 }
204
205 public ArtifactFilter getDependencyFilter()
206 {
207 return delegate.getDependencyFilter();
208 }
209
210 public void setDependencyFilter( ArtifactFilter artifactFilter )
211 {
212 delegate.setDependencyFilter( artifactFilter );
213 }
214
215 public ArtifactHandler getArtifactHandler()
216 {
217 return delegate.getArtifactHandler();
218 }
219
220 public List getDependencyTrail()
221 {
222 return delegate.getDependencyTrail();
223 }
224
225 public void setDependencyTrail( List dependencyTrail )
226 {
227 delegate.setDependencyTrail( dependencyTrail );
228 }
229
230 public void selectVersion( String version )
231 {
232 delegate.selectVersion( version );
233 }
234
235 public void setResolved( boolean resolved )
236 {
237 delegate.setResolved( resolved );
238 }
239
240 public boolean isResolved()
241 {
242 return delegate.isResolved();
243 }
244
245 public void setResolvedVersion( String version )
246 {
247 delegate.setResolvedVersion( version );
248 }
249
250 public void setArtifactHandler( ArtifactHandler artifactHandler )
251 {
252 delegate.setArtifactHandler( artifactHandler );
253 }
254
255 public boolean isOptional()
256 {
257 return delegate.isOptional();
258 }
259
260 public ArtifactVersion getSelectedVersion()
261 throws OverConstrainedVersionException
262 {
263 return delegate.getSelectedVersion();
264 }
265
266 public boolean isSelectedVersionKnown()
267 throws OverConstrainedVersionException
268 {
269 return delegate.isSelectedVersionKnown();
270 }
271
272 public void setOptional( boolean optional )
273 {
274 delegate.setOptional( optional );
275 }
276
277 public Collection getMetadataList()
278 {
279 List result = new ArrayList( delegate.getMetadataList() );
280 boolean alreadySigned = false;
281 for ( Iterator i = result.iterator(); i.hasNext() && !alreadySigned; )
282 {
283 ArtifactMetadata metadata = (ArtifactMetadata) i.next();
284 alreadySigned = alreadySigned | signature.getKey().equals( metadata.getKey() );
285 }
286 if ( !alreadySigned )
287 {
288 result.add( signature );
289 }
290 return result;
291 }
292 }