List of usage examples for org.springframework.http HttpOutputMessage HttpOutputMessage
HttpOutputMessage
From source file:org.geoserver.importer.rest.ImportTaskControllerTest.java
private Integer putZipAsURL(String zip) throws Exception { MockHttpServletResponse resp = postAsServletResponse(RestBaseController.ROOT_PATH + "/imports", ""); assertEquals(201, resp.getStatus()); assertNotNull(resp.getHeader("Location")); String[] split = resp.getHeader("Location").split("/"); Integer id = Integer.parseInt(split[split.length - 1]); ImportContext context = importer.getContext(id); MockHttpServletRequest req = createRequest(RestBaseController.ROOT_PATH + "/imports/" + id + "/tasks/"); MultiValueMap<String, Object> form = new LinkedMultiValueMap<String, Object>(1); form.add("url", new File(zip).getAbsoluteFile().toURI().toString()); final ByteArrayOutputStream stream = new ByteArrayOutputStream(); final HttpHeaders headers = new HttpHeaders(); new FormHttpMessageConverter().write(form, MediaType.APPLICATION_FORM_URLENCODED, new HttpOutputMessage() { @Override/*w ww . j a v a2 s . c o m*/ public OutputStream getBody() throws IOException { return stream; } @Override public HttpHeaders getHeaders() { return headers; } }); req.setContent(stream.toByteArray()); req.setMethod("POST"); req.setContentType(MediaType.APPLICATION_FORM_URLENCODED_VALUE); req.addHeader("Content-Type", MediaType.APPLICATION_FORM_URLENCODED_VALUE); resp = dispatch(req); assertEquals(201, resp.getStatus()); context = importer.getContext(context.getId()); assertNull(context.getData()); assertEquals(1, context.getTasks().size()); ImportTask task = context.getTasks().get(0); assertTrue(task.getData() instanceof SpatialFile); return id; }
From source file:org.springframework.http.converter.AbstractHttpMessageConverter.java
/** * This implementation sets the default headers by calling {@link #addDefaultHeaders}, * and then calls {@link #writeInternal}. *//* w w w . j a v a 2 s. c o m*/ @Override public final void write(final T t, @Nullable MediaType contentType, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException { final HttpHeaders headers = outputMessage.getHeaders(); addDefaultHeaders(headers, t, contentType); if (outputMessage instanceof StreamingHttpOutputMessage) { StreamingHttpOutputMessage streamingOutputMessage = (StreamingHttpOutputMessage) outputMessage; streamingOutputMessage.setBody(new StreamingHttpOutputMessage.Body() { @Override public void writeTo(final OutputStream outputStream) throws IOException { writeInternal(t, new HttpOutputMessage() { @Override public OutputStream getBody() throws IOException { return outputStream; } @Override public HttpHeaders getHeaders() { return headers; } }); } }); } else { writeInternal(t, outputMessage); outputMessage.getBody().flush(); } }