1
2
3
4
5
6
7
8
9
10
11
12
13
14 package ch.qos.logback.classic.spi;
15
16 import java.io.Serializable;
17
18 public class ClassPackagingData implements Serializable {
19
20 private static final long serialVersionUID = -804643281218337001L;
21 final String codeLocation;
22 final String version;
23 private final boolean exact;
24
25 public ClassPackagingData(String codeLocation, String version) {
26 this.codeLocation = codeLocation;
27 this.version = version;
28 this.exact = true;
29 }
30
31 public ClassPackagingData(String classLocation, String version, boolean exact) {
32 this.codeLocation = classLocation;
33 this.version = version;
34 this.exact = exact;
35 }
36
37 public String getCodeLocation() {
38 return codeLocation;
39 }
40
41 public String getVersion() {
42 return version;
43 }
44
45 public boolean isExact() {
46 return exact;
47 }
48
49 @Override
50 public int hashCode() {
51 final int PRIME = 31;
52 int result = 1;
53 result = PRIME * result + ((codeLocation == null) ? 0 : codeLocation.hashCode());
54 return result;
55 }
56
57 @Override
58 public boolean equals(Object obj) {
59 if (this == obj)
60 return true;
61 if (obj == null)
62 return false;
63 if (getClass() != obj.getClass())
64 return false;
65 final ClassPackagingData other = (ClassPackagingData) obj;
66 if (codeLocation == null) {
67 if (other.codeLocation != null)
68 return false;
69 } else if (!codeLocation.equals(other.codeLocation))
70 return false;
71 if (exact != other.exact)
72 return false;
73 if (version == null) {
74 if (other.version != null)
75 return false;
76 } else if (!version.equals(other.version))
77 return false;
78 return true;
79 }
80
81 }