1
2
3
4
5
6 package org.repoweb.pom;
7 /***
8 * Represent information of a maven's artifact.
9 */
10 public interface ArtifactInfo {
11 /***
12 * Retrieve the Group Id.
13 *
14 * @return id (e.g. 'struts')
15 */
16 public String getGroupId();
17
18
19 /***
20 * Retrieve the Artifact Id.
21 *
22 * @return id (e.g. 'junit')
23 */
24 public String getArtifactId();
25
26
27 /***
28 * Retrieve the artifact type. This is determined by the folder containing the
29 * artifact.
30 *
31 * @return the artifact type (e.g. 'jar' for 'jars' folder)
32 */
33 public String getType();
34
35
36 /***
37 * Retrieve the version of this artifact. Returns an empty string when no version has
38 * been given.
39 *
40 * @return version label (e.g. '3.8.1-SNAPSHOT').
41 */
42 public String getVersion();
43
44
45 /***
46 * Retrieve the file name of the artifact.
47 *
48 * @return file name (e.g. 'junit-3.8.1.jar')
49 */
50 public String getFileName();
51
52
53 /***
54 * Indicates if the fileName is conform to the standard maven's naming schema.
55 *
56 * <P>
57 * [maven]/[groupId]/[type]s/[artifactId]-[version].[type]
58 * </p>
59 *
60 * @return true if this artifact does not follow the default naming schema.
61 */
62 public boolean isOverridden();
63 }