]> git.argeo.org Git - gpl/argeo-slc.git/blob - runtime/org.argeo.slc.specs/src/main/java/org/argeo/slc/build/BasicNameVersion.java
Introduce JMX agent
[gpl/argeo-slc.git] / runtime / org.argeo.slc.specs / src / main / java / org / argeo / slc / build / BasicNameVersion.java
1 package org.argeo.slc.build;
2
3 public class BasicNameVersion implements NameVersion, Comparable<NameVersion> {
4 private String name;
5 private String version;
6
7 public BasicNameVersion() {
8 }
9
10 public BasicNameVersion(String name, String version) {
11 this.name = name;
12 this.version = version;
13 }
14
15 public BasicNameVersion(NameVersion nameVersion) {
16 this.name = nameVersion.getName();
17 this.version = nameVersion.getVersion();
18 }
19
20 public String getName() {
21 return name;
22 }
23
24 public void setName(String name) {
25 this.name = name;
26 }
27
28 public String getVersion() {
29 return version;
30 }
31
32 public void setVersion(String version) {
33 this.version = version;
34 }
35
36 @Override
37 public boolean equals(Object obj) {
38 if (obj instanceof NameVersion) {
39 NameVersion nameVersion = (NameVersion) obj;
40 return name.equals(nameVersion.getName())
41 && version.equals(nameVersion.getVersion());
42 } else
43 return false;
44 }
45
46 @Override
47 public int hashCode() {
48 return name.hashCode() + version.hashCode();
49 }
50
51 @Override
52 public String toString() {
53 return name + ":" + version;
54 }
55
56 public int compareTo(NameVersion o) {
57 if (o.getName().equals(name))
58 return version.compareTo(o.getVersion());
59 else
60 return name.compareTo(o.getName());
61 }
62
63 }