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 public class DefaultCacheKey implements Serializable {
44
45
46 private static final long serialVersionUID = 2699497852929596651L;
47
48 private String uri;
49 private String serverName;
50 private String locale;
51 private Map<String, String> params;
52
53 public DefaultCacheKey(String uri, String serverName, String locale, Map<String, String> params) {
54 this.uri = uri;
55 this.serverName = serverName;
56 this.locale = locale;
57 this.params = params;
58 }
59
60 @Override
61 public int hashCode() {
62 return (uri == null ? 13 : uri.hashCode())
63 + (serverName == null ? 17 : serverName.hashCode())
64 + (locale == null ? 23 : locale.hashCode())
65 + (params == null ? 27 : params.hashCode());
66 }
67
68 @Override
69 public boolean equals(Object obj) {
70 if (this == obj) {
71 return true;
72 }
73 if (obj == null || !(obj instanceof DefaultCacheKey)) {
74 return false;
75 }
76 DefaultCacheKey that = (DefaultCacheKey) obj;
77 return (this.uri == null) ? that.uri == null : this.uri.equals(that.uri)
78 && (this.serverName == null ? that.serverName == null : this.serverName.equals(that.serverName))
79 && (this.locale == null ? that.locale == null : this.locale.equals(that.locale))
80 && (this.params == null ? that.params == null : this.params.equals(that.params));
81 }
82
83 public String getUri() {
84 return this.uri;
85 }
86
87 public String getDomain() {
88 return this.serverName;
89 }
90
91
92 public String toString() {
93 return "DefaultCacheKey{" +
94 "uri='" + uri + '\'' +
95 ", serverName='" + serverName + '\'' +
96 ", locale='" + locale + '\'' +
97 ", params=" + params +
98 '}';
99 }
100
101 }