1 /**
2 * Logback: the reliable, generic, fast and flexible logging framework.
3 * Copyright (C) 1999-2015, QOS.ch. All rights reserved.
4 *
5 * This program and the accompanying materials are dual-licensed under
6 * either the terms of the Eclipse Public License v1.0 as published by
7 * the Eclipse Foundation
8 *
9 * or (per the licensee's choosing)
10 *
11 * under the terms of the GNU Lesser General Public License version 2.1
12 * as published by the Free Software Foundation.
13 */
14 package ch.qos.logback.access.common.pattern;
15
16 import ch.qos.logback.access.common.spi.IAccessEvent;
17 import ch.qos.logback.core.util.OptionHelper;
18
19 public class ResponseHeaderConverter extends AccessConverter {
20
21 String key;
22
23 @Override
24 public void start() {
25 key = getFirstOption();
26 if (OptionHelper.isNullOrEmpty(key)) {
27 addWarn("Missing key for the response header");
28 } else {
29 super.start();
30 }
31 }
32
33 @Override
34 public String convert(IAccessEvent accessEvent) {
35 if (!isStarted()) {
36 return "INACTIVE_REPONSE_HEADER_CONV";
37 }
38
39 return accessEvent.getResponseHeader(key);
40 // return null;
41
42 // HttpServletResponse response = accessEvent.getHttpResponse();
43 //
44 // Object value = null; // = response.getHeader(key);
45 // if (value == null) {
46 // return AccessConverter.NA;
47 // } else {
48 // return value.toString();
49 // }
50 }
51
52 }