public OutputStream writeStatusAndHeaders(long contentLength, ContainerResponse cResponse) throws IOException { Headers eh = exchange.getResponseHeaders(); for (Map.Entry<String, List<Object>> e : cResponse.getHttpHeaders().entrySet()) { List<String> values = new ArrayList<String>(); for (Object v : e.getValue()) values.add(ContainerResponse.getHeaderValue(v)); eh.put(e.getKey(), values); } if (cResponse.getStatus() == 204) { // Work around bug in LW HTTP server // http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6886436 exchange.sendResponseHeaders(cResponse.getStatus(), -1); } else { exchange.sendResponseHeaders(cResponse.getStatus(), getResponseLength(contentLength)); } return exchange.getResponseBody(); }
public List<String> put(String key, List<String> value) { return map.put (key, value); }
Headers headers = httpExchange.getResponseHeaders(); headers.put(key, values);
/** * sets the given value as the sole header value * for the given key. If the mapping does not * already exist, then it is created * @param key the header name * @param value the header value to set. */ public void set (String key, String value) { LinkedList<String> l = new LinkedList<String>(); l.add (value); put (key, l); }
@Override public void setResponseHeader(String key, List<String> value) { httpExchange.getResponseHeaders().put(key, value); }
@Override public void setResponseHeader(String key, List<String> value) { httpExchange.getResponseHeaders().put(key, value); }
@Override public void setResponseHeader(String key, List<String> value) { httpExchange.getResponseHeaders().put(key, value); }
@Override public void setResponseHeaders(Map<String,List<String>> headers) { Headers r = httpExchange.getResponseHeaders(); r.clear(); for(Map.Entry <String, List<String>> entry : headers.entrySet()) { String name = entry.getKey(); List<String> values = entry.getValue(); // ignore headers that interfere with our correct operations if (!"Content-Length".equalsIgnoreCase(name) && !"Content-Type".equalsIgnoreCase(name)) { r.put(name,new ArrayList<String>(values)); } } }
@Override public void setResponseHeaders(Map<String,List<String>> headers) { Headers r = httpExchange.getResponseHeaders(); r.clear(); for(Map.Entry <String, List<String>> entry : headers.entrySet()) { String name = entry.getKey(); List<String> values = entry.getValue(); // ignore headers that interfere with our correct operations if (!"Content-Length".equalsIgnoreCase(name) && !"Content-Type".equalsIgnoreCase(name)) { r.put(name,new ArrayList<String>(values)); } } }
@Override public void setResponseHeaders(Map<String,List<String>> headers) { Headers r = httpExchange.getResponseHeaders(); r.clear(); for(Map.Entry <String, List<String>> entry : headers.entrySet()) { String name = entry.getKey(); List<String> values = entry.getValue(); // ignore headers that interfere with our correct operations if (!"Content-Length".equalsIgnoreCase(name) && !"Content-Type".equalsIgnoreCase(name)) { r.put(name,new ArrayList<String>(values)); } } }
private static void respondWithString(HttpExchange httpExchange, String response) throws IOException { httpExchange.getResponseHeaders().put("Content-Type", Arrays.asList("application/json")); httpExchange.sendResponseHeaders(OK.getStatusCode(), response.length()); OutputStream os = httpExchange.getResponseBody(); os.write(response.getBytes()); os.close(); }
private static void respondWithString(HttpExchange httpExchange, String response) throws IOException { httpExchange.getResponseHeaders().put("Content-Type", Arrays.asList("application/json")); httpExchange.sendResponseHeaders(OK.getStatusCode(), response.length()); OutputStream os = httpExchange.getResponseBody(); os.write(response.getBytes()); os.close(); }
private static void respondMetrics(CollectorRegistry registry, HttpExchange httpExchange) throws IOException { StringWriter respBodyWriter = new StringWriter(); respBodyWriter.write("# Metrics will become visible when they are updated for the first time.\n"); TextFormat.write004(respBodyWriter, registry.metricFamilySamples()); byte[] respBody = respBodyWriter.toString().getBytes("UTF-8"); httpExchange.getResponseHeaders().put("Context-Type", Collections.singletonList("text/plain; charset=UTF-8")); httpExchange.sendResponseHeaders(200, respBody.length); httpExchange.getResponseBody().write(respBody); httpExchange.getResponseBody().close(); }
private static void respondRedirect(HttpExchange httpExchange) throws IOException { byte[] respBody = "Metrics are provided on the /metrics endpoint.".getBytes("UTF-8"); httpExchange.getResponseHeaders().add("Location", "/metrics"); httpExchange.getResponseHeaders().put("Context-Type", Collections.singletonList("text/plain; charset=UTF-8")); httpExchange.sendResponseHeaders(302, respBody.length); httpExchange.getResponseBody().write(respBody); httpExchange.getResponseBody().close(); } }
public OutputStream writeStatusAndHeaders(long contentLength, ContainerResponse cResponse) throws IOException { Headers eh = exchange.getResponseHeaders(); for (Map.Entry<String, List<Object>> e : cResponse.getHttpHeaders().entrySet()) { List<String> values = new ArrayList<String>(); for (Object v : e.getValue()) values.add(ContainerResponse.getHeaderValue(v)); eh.put(e.getKey(), values); } if (cResponse.getStatus() == 204) { // Work around bug in LW HTTP server // http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6886436 exchange.sendResponseHeaders(cResponse.getStatus(), -1); } else { exchange.sendResponseHeaders(cResponse.getStatus(), getResponseLength(contentLength)); } return exchange.getResponseBody(); }
public OutputStream writeStatusAndHeaders(long contentLength, ContainerResponse cResponse) throws IOException { Headers eh = exchange.getResponseHeaders(); for (Map.Entry<String, List<Object>> e : cResponse.getHttpHeaders().entrySet()) { List<String> values = new ArrayList<String>(); for (Object v : e.getValue()) values.add(ContainerResponse.getHeaderValue(v)); eh.put(e.getKey(), values); } if (cResponse.getStatus() == 204) { // Work around bug in LW HTTP server // http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6886436 exchange.sendResponseHeaders(cResponse.getStatus(), -1); } else { exchange.sendResponseHeaders(cResponse.getStatus(), getResponseLength(contentLength)); } return exchange.getResponseBody(); }
private void binaryResponse( HttpExchange t ) throws IOException { int boonSize = -1; final List<String> strings = t.getRequestHeaders().get( "Boon-Size" ); if ( strings != null && strings.size() > 0 ) { boonSize = Integer.parseInt( strings.get( 0 ) ); } boonSize = boonSize == -1 ? 19 : boonSize; t.getResponseHeaders().put( "Content-Type", Lists.list( "application/java-archive" ) ); t.sendResponseHeaders( 200, boonSize ); OutputStream os = t.getResponseBody(); byte[] buffer = new byte[ boonSize ]; int value = 0; for ( int index = 0; index < boonSize; index++, value++ ) { buffer[ index ] = ( byte ) value; if ( value == Byte.MAX_VALUE ) { value = 0; } } os.write( buffer ); os.close(); }
Headers theResponseHeaders = aHttpExchange.getResponseHeaders(); for ( String eKey : aHttpServerResponse.getHeaderFields().keySet() ) { theResponseHeaders.put( eKey, aHttpServerResponse.getHeaderFields().get( eKey ) );