1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.mina.filter.reqres;
21
22
23
24
25
26
27
28 public class Response {
29 private final Request request;
30
31 private final ResponseType type;
32
33 private final Object message;
34
35 public Response(Request request, Object message, ResponseType type) {
36 if (request == null) {
37 throw new NullPointerException("request");
38 }
39
40 if (message == null) {
41 throw new NullPointerException("message");
42 }
43
44 if (type == null) {
45 throw new NullPointerException("type");
46 }
47
48 this.request = request;
49 this.type = type;
50 this.message = message;
51 }
52
53 public Request getRequest() {
54 return request;
55 }
56
57 public ResponseType getType() {
58 return type;
59 }
60
61 public Object getMessage() {
62 return message;
63 }
64
65 @Override
66 public int hashCode() {
67 return getRequest().getId().hashCode();
68 }
69
70 @Override
71 public boolean equals(Object o) {
72 if (o == this) {
73 return true;
74 }
75
76 if (o == null) {
77 return false;
78 }
79
80 if (!(o instanceof Response)) {
81 return false;
82 }
83
84 Response that = (Response) o;
85 if (!this.getRequest().equals(that.getRequest())) {
86 return false;
87 }
88
89 return this.getType().equals(that.getType());
90 }
91
92 @Override
93 public String toString() {
94 return "response: { requestId=" + getRequest().getId() + ", type="
95 + getType() + ", message=" + getMessage() + " }";
96 }
97 }