1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 package info.magnolia.module.cache;
35
36 import java.io.Serializable;
37 import java.util.Map;
38
39
40
41
42
43
44
45 public class DefaultCacheKey implements Serializable {
46
47
48 private static final long serialVersionUID = 2699497852929596651L;
49
50 private String uri;
51 private String serverName;
52 private String locale;
53 private Map<String, String> params;
54
55 public DefaultCacheKey(String uri, String serverName, String locale, Map<String, String> params) {
56 this.uri = uri;
57 this.serverName = serverName;
58 this.locale = locale;
59 this.params = params;
60 }
61
62 @Override
63 public int hashCode() {
64 return (uri == null ? 13 : uri.hashCode())
65 + (serverName == null ? 17 : serverName.hashCode())
66 + (locale == null ? 23 : locale.hashCode())
67 + (params == null ? 27 : params.hashCode());
68 }
69
70 @Override
71 public boolean equals(Object obj) {
72 if (this == obj) {
73 return true;
74 }
75 if (obj == null || !(obj instanceof DefaultCacheKey)) {
76 return false;
77 }
78 DefaultCacheKey that = (DefaultCacheKey) obj;
79 return (this.uri == null) ? that.uri == null : this.uri.equals(that.uri)
80 && (this.serverName == null ? that.serverName == null : this.serverName.equals(that.serverName))
81 && (this.locale == null ? that.locale == null : this.locale.equals(that.locale))
82 && (this.params == null ? that.params == null : this.params.equals(that.params));
83 }
84
85 public String getUri() {
86 return this.uri;
87 }
88
89 public String getDomain() {
90 return this.serverName;
91 }
92
93
94 public String toString() {
95 return "DefaultCacheKey{" +
96 "uri='" + uri + '\'' +
97 ", serverName='" + serverName + '\'' +
98 ", locale='" + locale + '\'' +
99 ", params=" + params +
100 '}';
101 }
102
103 }