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.debug;
35
36 import java.io.IOException;
37 import java.util.HashMap;
38 import java.util.Map;
39
40 import javax.servlet.http.HttpServletResponse;
41 import javax.servlet.http.HttpServletResponseWrapper;
42
43
44
45
46
47
48 class LoggingResponse extends HttpServletResponseWrapper {
49
50 private Map headers = new HashMap();
51
52 private int length;
53
54 private int status = HttpServletResponse.SC_OK;
55
56 LoggingResponse(HttpServletResponse response) {
57 super(response);
58 }
59
60 public Map getHeaders() {
61 return this.headers;
62 }
63
64
65 public int getLength() {
66 return this.length;
67 }
68
69
70 public int getStatus() {
71 return this.status;
72 }
73
74
75 public void setDateHeader(String name, long date) {
76 super.setDateHeader(name, date);
77 headers.put(name, String.valueOf(date));
78 }
79
80 public void setIntHeader(String name, int value) {
81 super.setIntHeader(name, value);
82 headers.put(name, String.valueOf(value));
83 }
84
85 public void setContentLength(int len) {
86 this.length = len;
87 super.setContentLength(len);
88 }
89
90 public void setHeader(String name, String value) {
91 super.setHeader(name, value);
92 headers.put(name, value);
93 }
94
95 public void sendRedirect(String location) throws IOException {
96 this.status = HttpServletResponse.SC_MOVED_TEMPORARILY;
97 super.sendRedirect(location);
98 }
99
100 public void sendError(int sc) throws IOException {
101 this.status = sc;
102 super.sendError(sc);
103 }
104
105 public void sendError(int sc, String msg) throws IOException {
106 this.status = sc;
107 super.sendError(sc, msg);
108 }
109
110 public void setStatus(int sc) {
111 this.status = sc;
112 super.setStatus(sc);
113 }
114
115 public void setStatus(int sc, String sm) {
116 this.status = sc;
117 super.setStatus(sc, sm);
118 }
119
120 }