private void streamResponseHeaders(RequestDetails theRequestDetails, HttpServletResponse theServletResponse, StringBuilder b) { if (theServletResponse.getHeaderNames().isEmpty() == false) { b.append("<h1>Response Headers</h1>"); b.append("<div class=\"headersDiv\">"); for (String nextHeaderName : theServletResponse.getHeaderNames()) { for (String nextHeaderValue : theServletResponse.getHeaders(nextHeaderName)) { /* * Let's pretend we're returning a FHIR content type even though we're * actually returning an HTML one */ if (nextHeaderName.equalsIgnoreCase(Constants.HEADER_CONTENT_TYPE)) { ResponseEncoding responseEncoding = RestfulServerUtils.determineResponseEncodingNoDefault(theRequestDetails, theRequestDetails.getServer().getDefaultResponseEncoding()); if (responseEncoding != null && isNotBlank(responseEncoding.getResourceContentType())) { nextHeaderValue = responseEncoding.getResourceContentType() + ";charset=utf-8"; } } b.append("<div class=\"headersRow\">"); b.append("<span class=\"headerName\">").append(nextHeaderName).append(": ").append("</span>"); b.append("<span class=\"headerValue\">").append(nextHeaderValue).append("</span>"); b.append("</div>"); } } b.append("</div>"); } }
/** * Determine whether a response should be given in JSON or XML format based on the incoming HttpServletRequest's * <code>"_format"</code> parameter and <code>"Accept:"</code> HTTP header. */ public static ResponseEncoding determineResponseEncodingWithDefault(RequestDetails theReq) { ResponseEncoding retVal = determineResponseEncodingNoDefault(theReq, theReq.getServer().getDefaultResponseEncoding()); if (retVal == null) { retVal = new ResponseEncoding(theReq.getServer().getFhirContext(), theReq.getServer().getDefaultResponseEncoding(), null); } return retVal; }
p = RestfulServerUtils.getNewParser(theRequestDetails.getServer().getFhirContext(), forVersion, theRequestDetails); } else { EncodingEnum defaultResponseEncoding = theRequestDetails.getServer().getDefaultResponseEncoding(); p = defaultResponseEncoding.newParser(theRequestDetails.getServer().getFhirContext()); RestfulServerUtils.configureResponseParser(theRequestDetails, p);
return StringUtils.defaultString(myRequest.getRemoteAddr()); } else if (theKey.equals("responseEncodingNoDefault")) { ResponseEncoding encoding = RestfulServerUtils.determineResponseEncodingNoDefault(myRequestDetails, myRequestDetails.getServer().getDefaultResponseEncoding()); if (encoding != null) { return encoding.getEncoding().name();
ResponseEncoding responseEncoding = RestfulServerUtils.determineResponseEncodingNoDefault(theRequestDetails, theServer.getDefaultResponseEncoding()); responseEncoding = new ResponseEncoding(theServer.getFhirContext(), theServer.getDefaultResponseEncoding(), null);
private void streamResponseHeaders(RequestDetails theRequestDetails, HttpServletResponse theServletResponse, StringBuilder b) { if (theServletResponse.getHeaderNames().isEmpty() == false) { b.append("<h1>Response Headers</h1>"); b.append("<div class=\"headersDiv\">"); for (String nextHeaderName : theServletResponse.getHeaderNames()) { for (String nextHeaderValue : theServletResponse.getHeaders(nextHeaderName)) { /* * Let's pretend we're returning a FHIR content type even though we're * actually returning an HTML one */ if (nextHeaderName.equalsIgnoreCase(Constants.HEADER_CONTENT_TYPE)) { ResponseEncoding responseEncoding = RestfulServerUtils.determineResponseEncodingNoDefault(theRequestDetails, theRequestDetails.getServer().getDefaultResponseEncoding()); if (responseEncoding != null && isNotBlank(responseEncoding.getResourceContentType())) { nextHeaderValue = responseEncoding.getResourceContentType() + ";charset=utf-8"; } } b.append("<div class=\"headersRow\">"); b.append("<span class=\"headerName\">").append(nextHeaderName).append(": ").append("</span>"); b.append("<span class=\"headerValue\">").append(nextHeaderValue).append("</span>"); b.append("</div>"); } } b.append("</div>"); } }
/** * Determine whether a response should be given in JSON or XML format based on the incoming HttpServletRequest's * <code>"_format"</code> parameter and <code>"Accept:"</code> HTTP header. */ public static ResponseEncoding determineResponseEncodingWithDefault(RequestDetails theReq) { ResponseEncoding retVal = determineResponseEncodingNoDefault(theReq, theReq.getServer().getDefaultResponseEncoding()); if (retVal == null) { retVal = new ResponseEncoding(theReq.getServer().getFhirContext(), theReq.getServer().getDefaultResponseEncoding(), null); } return retVal; }
p = RestfulServerUtils.getNewParser(theRequestDetails.getServer().getFhirContext(), forVersion, theRequestDetails); } else { EncodingEnum defaultResponseEncoding = theRequestDetails.getServer().getDefaultResponseEncoding(); p = defaultResponseEncoding.newParser(theRequestDetails.getServer().getFhirContext()); RestfulServerUtils.configureResponseParser(theRequestDetails, p);
return StringUtils.defaultString(myRequest.getRemoteAddr()); } else if (theKey.equals("responseEncodingNoDefault")) { ResponseEncoding encoding = RestfulServerUtils.determineResponseEncodingNoDefault(myRequestDetails, myRequestDetails.getServer().getDefaultResponseEncoding()); if (encoding != null) { return encoding.getEncoding().name();
ResponseEncoding responseEncoding = RestfulServerUtils.determineResponseEncodingNoDefault(theRequestDetails, theServer.getDefaultResponseEncoding()); responseEncoding = new ResponseEncoding(theServer.getFhirContext(), theServer.getDefaultResponseEncoding(), null);