import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
+import java.util.Collection;
import java.util.Date;
import java.util.Locale;
import javax.servlet.ServletOutputStream;
return locale;
}
+ @Override
+ public int getStatus() {
+ Integer status = response.getStatus();
+ log.trace("{} -- status: {}", no, status);
+ return status;
+ }
+
+ @Override
+ public String getHeader(String name) {
+ String value = response.getHeader(name);
+ log.trace("{} -- header \"{}\": {}", new Object[] { no, name, value });
+ return value;
+ }
+
+ @Override
+ public Collection<String> getHeaders(String name) {
+ Collection<String> values = response.getHeaders(name);
+ if (log.isTraceEnabled()) {
+ StringBuilder builder = new StringBuilder();
+ builder.append(no);
+ builder.append(" -- headers \"");
+ builder.append(name);
+ builder.append("\":");
+ for (String value : values) {
+ builder.append(' ');
+ builder.append(value);
+ }
+ log.trace(builder.toString());
+ }
+ return values;
+ }
+
+ @Override
+ public Collection<String> getHeaderNames() {
+ Collection<String> values = response.getHeaderNames();
+ if (log.isTraceEnabled()) {
+ StringBuilder builder = new StringBuilder();
+ builder.append(no);
+ builder.append(" -- header-names:");
+ for (String value : values) {
+ builder.append(' ');
+ builder.append(value);
+ }
+ log.trace(builder.toString());
+ }
+ return values;
+ }
+
class CountingServletOutputStream extends ServletOutputStream {