]> git.argeo.org Git - gpl/argeo-slc.git/blob - runtime/org.argeo.slc.specs/src/main/java/org/argeo/slc/BasicNameVersion.java
Remove runtime packages
[gpl/argeo-slc.git] / runtime / org.argeo.slc.specs / src / main / java / org / argeo / slc / BasicNameVersion.java
1 /*
2 * Copyright (C) 2007-2012 Argeo GmbH
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16 package org.argeo.slc;
17
18 import java.io.Serializable;
19
20
21 public class BasicNameVersion implements NameVersion, Comparable<NameVersion>,
22 Serializable {
23 private static final long serialVersionUID = -5127304279136195127L;
24 private String name;
25 private String version;
26
27 public BasicNameVersion() {
28 }
29
30 public BasicNameVersion(String name, String version) {
31 this.name = name;
32 this.version = version;
33 }
34
35 public BasicNameVersion(NameVersion nameVersion) {
36 this.name = nameVersion.getName();
37 this.version = nameVersion.getVersion();
38 }
39
40 public String getName() {
41 return name;
42 }
43
44 public void setName(String name) {
45 this.name = name;
46 }
47
48 public String getVersion() {
49 return version;
50 }
51
52 public void setVersion(String version) {
53 this.version = version;
54 }
55
56 @Override
57 public boolean equals(Object obj) {
58 if (obj instanceof NameVersion) {
59 NameVersion nameVersion = (NameVersion) obj;
60 return name.equals(nameVersion.getName())
61 && version.equals(nameVersion.getVersion());
62 } else
63 return false;
64 }
65
66 @Override
67 public int hashCode() {
68 return name.hashCode() + version.hashCode();
69 }
70
71 @Override
72 public String toString() {
73 return name + ":" + version;
74 }
75
76 public int compareTo(NameVersion o) {
77 if (o.getName().equals(name))
78 return version.compareTo(o.getVersion());
79 else
80 return name.compareTo(o.getName());
81 }
82
83 }