@Override public void write(java.io.Writer writer) throws IOException { writer.write(getCallback()); writer.write("({\"status\":"); writer.write(Integer.toString(getStatus().getCode())); writer.write(",\"body\":"); if (MediaType.APPLICATION_JSON.equals(wrappedRepresentation .getMediaType())) { IoUtils.copy(wrappedRepresentation.getReader(), writer); } else { writer.write("\""); String text = wrappedRepresentation.getText(); if (text.indexOf('\"') >= 0) { text = text.replace("\"", "\\\""); } writer.write(text); writer.write("\""); } writer.write("});"); }
@Override public long getSize() { long result = wrappedRepresentation.getSize(); if (result > 0 && MediaType.APPLICATION_JSON.equals(wrappedRepresentation .getMediaType())) { try { java.io.StringWriter sw = new java.io.StringWriter(); write(sw); sw.flush(); return sw.toString().length(); } catch (IOException e) { return UNKNOWN_SIZE; } } return UNKNOWN_SIZE; }
/** * Assumes that there is a "callback" query parameter available in the URI * query string, containing the name of the JavaScript callback method. */ @Override public void afterHandle(Request request, Response response) { // Check the presence of the callback parameter String callback = request.getResourceRef().getQueryAsForm() .getFirstValue("callback"); if (callback != null) { Representation entity = response.getEntity(); if (entity != null && ("text".equals(entity.getMediaType().getMainType()) || MediaType.APPLICATION_JSON .equals(entity.getMediaType()))) { response.setEntity(new JsonpRepresentation(callback, response .getStatus(), response.getEntity())); response.setStatus(Status.SUCCESS_OK); } } }
/** * Assumes that there is a "callback" query parameter available in the URI * query string, containing the name of the JavaScript callback method. */ @Override public void afterHandle(Request request, Response response) { // Check the presence of the callback parameter String callback = request.getResourceRef().getQueryAsForm() .getFirstValue("callback"); if (callback != null) { Representation entity = response.getEntity(); if (entity != null && ("text".equals(entity.getMediaType().getMainType()) || MediaType.APPLICATION_JSON .equals(entity.getMediaType()))) { response.setEntity(new JsonpRepresentation(callback, response .getStatus(), response.getEntity())); response.setStatus(Status.SUCCESS_OK); } } }
@Override public void write(java.io.Writer writer) throws IOException { writer.write(getCallback()); writer.write("({\"status\":"); writer.write(Integer.toString(getStatus().getCode())); writer.write(",\"body\":"); if (MediaType.APPLICATION_JSON.equals(wrappedRepresentation .getMediaType())) { IoUtils.copy(wrappedRepresentation.getReader(), writer); } else { writer.write("\""); String text = wrappedRepresentation.getText(); if (text.indexOf('\"') >= 0) { text = text.replace("\"", "\\\""); } writer.write(text); writer.write("\""); } writer.write("});"); }
@Override public long getSize() { long result = wrappedRepresentation.getSize(); if (result > 0 && MediaType.APPLICATION_JSON.equals(wrappedRepresentation .getMediaType())) { try { java.io.StringWriter sw = new java.io.StringWriter(); write(sw); sw.flush(); return sw.toString().length(); } catch (IOException e) { return UNKNOWN_SIZE; } } return UNKNOWN_SIZE; }