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 public class Response {
28 private final Request request;
29
30 private final ResponseType type;
31
32 private final Object message;
33
34 public Response(Request request, Object message, ResponseType type) {
35 if (request == null) {
36 throw new NullPointerException("request");
37 }
38
39 if (message == null) {
40 throw new NullPointerException("message");
41 }
42
43 if (type == null) {
44 throw new NullPointerException("type");
45 }
46
47 this.request = request;
48 this.type = type;
49 this.message = message;
50 }
51
52 public Request getRequest() {
53 return request;
54 }
55
56 public ResponseType getType() {
57 return type;
58 }
59
60 public Object getMessage() {
61 return message;
62 }
63
64 @Override
65 public int hashCode() {
66 return getRequest().getId().hashCode();
67 }
68
69 @Override
70 public boolean equals(Object o) {
71 if (o == this) {
72 return true;
73 }
74
75 if (o == null) {
76 return false;
77 }
78
79 if (!(o instanceof Response)) {
80 return false;
81 }
82
83 Response that = (Response) o;
84 if (!this.getRequest().equals(that.getRequest())) {
85 return false;
86 }
87
88 return this.getType().equals(that.getType());
89 }
90
91 @Override
92 public String toString() {
93 return "response: { requestId=" + getRequest().getId() + ", type="
94 + getType() + ", message=" + getMessage() + " }";
95 }
96 }