View Javadoc

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   * A wrapper class for attached artifacts which have a GPG signature. Needed as attached artifacts in general do not
20   * have metadata.
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 }