@Override public String convert(IAccessEvent accessEvent) { if (!isStarted()) { return "INACTIVE_REPONSE_HEADER_CONV"; } return accessEvent.getResponseHeader(key); // return null; // HttpServletResponse response = accessEvent.getHttpResponse(); // // Object value = null; // = response.getHeader(key); // if (value == null) { // return AccessConverter.NA; // } else { // return value.toString(); // } }
@Override public String convert(IAccessEvent ae) { StringBuilder buf = new StringBuilder(); buf.append("HTTP/1.1 "); int statusCode = ae.getStatusCode(); buf.append(statusCode); buf.append(" "); buf.append(getStatusCodeDescription(statusCode)); buf.append(CoreConstants.LINE_SEPARATOR); List<String> hnList = ae.getResponseHeaderNameList(); for (String headerName : hnList) { buf.append(headerName); buf.append(": "); buf.append(ae.getResponseHeader(headerName)); buf.append(CoreConstants.LINE_SEPARATOR); } buf.append(CoreConstants.LINE_SEPARATOR); buf.append(ae.getResponseContent()); buf.append(CoreConstants.LINE_SEPARATOR); return buf.toString(); }
@Test public void testSerialization() throws IOException, ClassNotFoundException { Object o = buildSerializedAccessEvent(); assertNotNull(o); IAccessEvent aeBack = (IAccessEvent) o; assertEquals(DummyResponse.DUMMY_DEFAULT_HDEADER_MAP, aeBack.getResponseHeaderMap()); assertEquals(DummyResponse.DUMMY_DEFAULT_HDEADER_MAP.get("x"), aeBack.getResponseHeader("x")); assertEquals(DummyResponse.DUMMY_DEFAULT_HDEADER_MAP.get("headerName1"), aeBack.getResponseHeader("headerName1")); assertEquals(DummyResponse.DUMMY_DEFAULT_HDEADER_MAP.size(), aeBack.getResponseHeaderNameList().size()); assertEquals(DummyResponse.DUMMY_DEFAULT_CONTENT_COUNT, aeBack.getContentLength()); assertEquals(DummyResponse.DUMMY_DEFAULT_STATUS, aeBack.getStatusCode()); assertEquals(DummyRequest.DUMMY_CONTENT_STRING, aeBack.getRequestContent()); assertEquals(DummyRequest.DUMMY_RESPONSE_CONTENT_STRING, aeBack.getResponseContent()); assertEquals(DummyRequest.DUMMY_DEFAULT_ATTR_MAP.get("testKey"), aeBack.getAttribute("testKey")); }
/** * Verifies that the response headers contains the given one. * * @param name the response header name. * @param value the response header value. * @return this instance. * @see IAccessEvent#getResponseHeader(String) */ public S hasResponseHeader(String name, String value) { String actualResponseHeader = actual.getResponseHeader(name); Assertions.assertThat(actualResponseHeader).isEqualTo(value); return myself; }
/** * Verifies that the response headers does not have contain the given one. * * @param name the response header name. * @return this instance. * @see IAccessEvent#getResponseHeader(String) */ public S doesNotHaveResponseHeader(String name) { String actualResponseHeader = actual.getResponseHeader(name); Assertions.assertThat(actualResponseHeader).isNull(); return myself; }