]> source.dussan.org Git - archiva.git/blob
ce4ac95c02cbd3023bdc5c91e855e52b654ed34b
[archiva.git] /
1 package org.apache.archiva.rest.api.model;
2 /*
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  */
20
21 import javax.xml.bind.annotation.XmlRootElement;
22 import java.io.Serializable;
23
24 /**
25  * @author Olivier Lamy
26  * @since 1.4
27  */
28 @XmlRootElement( name = "legacyArtifactPath" )
29 public class LegacyArtifactPath
30     implements Serializable
31 {
32     /**
33      * The legacy path.
34      */
35     private String path;
36
37     /**
38      * The artifact reference, as " [groupId] :
39      * [artifactId] : [version] : [classifier] : [type] ".
40      */
41     private String artifact;
42
43     public LegacyArtifactPath()
44     {
45         // no op
46     }
47
48     public LegacyArtifactPath( String path, String artifact )
49     {
50         this.path = path;
51         this.artifact = artifact;
52     }
53
54     public String getPath()
55     {
56         return path;
57     }
58
59     public void setPath( String path )
60     {
61         this.path = path;
62     }
63
64     public String getArtifact()
65     {
66         return artifact;
67     }
68
69     public void setArtifact( String artifact )
70     {
71         this.artifact = artifact;
72     }
73
74     public boolean match( String path )
75     {
76         return path.equals( this.path );
77     }
78
79     public String getGroupId()
80     {
81         return artifact.split( ":" )[0];
82     }
83
84     public String getArtifactId()
85     {
86         return artifact.split( ":" )[1];
87     }
88
89     public String getVersion()
90     {
91         return artifact.split( ":" )[2];
92     }
93
94     public String getClassifier()
95     {
96         String classifier = artifact.split( ":" )[3];
97         return classifier.length() > 0 ? classifier : null;
98     }
99
100     public String getType()
101     {
102         return artifact.split( ":" )[4];
103     }
104 }