1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 package org.opencastproject.kernel.bundleinfo;
23
24 import static org.opencastproject.util.EqualsUtil.eq;
25 import static org.opencastproject.util.EqualsUtil.hash;
26
27 import org.opencastproject.util.data.Option;
28
29 public final class BundleVersion {
30 private final String bundleVersion;
31 private final Option<String> buildNumber;
32
33 public BundleVersion(String bundleVersion, Option<String> buildNumber) {
34 this.bundleVersion = bundleVersion;
35 this.buildNumber = buildNumber;
36 }
37
38 public String getBundleVersion() {
39 return bundleVersion;
40 }
41
42 public Option<String> getBuildNumber() {
43 return buildNumber;
44 }
45
46 @Override public boolean equals(Object that) {
47 return (this == that) || (that instanceof BundleVersion && eqFields((BundleVersion) that));
48 }
49
50 private boolean eqFields(BundleVersion that) {
51 return eq(this.bundleVersion, that.bundleVersion) && eq(this.buildNumber, that.buildNumber);
52 }
53
54 @Override public int hashCode() {
55 return hash(bundleVersion, buildNumber);
56 }
57 }