private static boolean mediaTypeMatches(String value, MediaType range) { try { return MediaType.parse(value).is(range); } catch (IllegalArgumentException | IllegalStateException e) { return false; } } }
private static boolean isText(final String type) { try { MediaType mediaType = MediaType.parse(type); return mediaType.is(MediaType.ANY_TEXT_TYPE) || mediaType.subtype().endsWith("javascript") || mediaType.subtype().endsWith("json") || mediaType.subtype().endsWith("xml") || mediaType.is(MediaType.FORM_DATA) || mediaType.subtype().endsWith("form-data"); } catch (Exception e) { return false; } }
public void testIs() { assertTrue(PLAIN_TEXT_UTF_8.is(ANY_TYPE)); assertTrue(JPEG.is(ANY_TYPE)); assertTrue(ANY_TEXT_TYPE.is(ANY_TYPE)); assertTrue(PLAIN_TEXT_UTF_8.is(ANY_TEXT_TYPE)); assertTrue(PLAIN_TEXT_UTF_8.withoutParameters().is(ANY_TEXT_TYPE)); assertFalse(JPEG.is(ANY_TEXT_TYPE)); assertTrue(PLAIN_TEXT_UTF_8.is(PLAIN_TEXT_UTF_8)); assertTrue(PLAIN_TEXT_UTF_8.is(PLAIN_TEXT_UTF_8.withoutParameters())); assertFalse(PLAIN_TEXT_UTF_8.withoutParameters().is(PLAIN_TEXT_UTF_8)); assertFalse(PLAIN_TEXT_UTF_8.is(HTML_UTF_8)); assertFalse(PLAIN_TEXT_UTF_8.withParameter("charset", "UTF-16").is(PLAIN_TEXT_UTF_8)); assertFalse(PLAIN_TEXT_UTF_8.is(PLAIN_TEXT_UTF_8.withParameter("charset", "UTF-16"))); }
@Override public ProxyResponse handle(Request request, Response response) { if (response.getStatusCode() == NO_CONTENT.code()) { return new ProxyResponse(response.getHeaders(), new byte[0]); } if (response.getStatusCode() != OK.code()) { throw new ProxyException(format("Bad status code from remote Presto server: %s: %s", response.getStatusCode(), readBody(response))); } String contentType = response.getHeader(CONTENT_TYPE); if (contentType == null) { throw new ProxyException("No Content-Type set in response from remote Presto server"); } if (!MediaType.parse(contentType).is(MEDIA_TYPE_JSON)) { throw new ProxyException("Bad Content-Type from remote Presto server:" + contentType); } try { return new ProxyResponse(response.getHeaders(), toByteArray(response.getInputStream())); } catch (IOException e) { throw new ProxyException("Failed reading response from remote Presto server", e); } }
private static boolean mediaTypeMatches(String value, MediaType range) { try { return MediaType.parse(value).is(range); } catch (IllegalArgumentException | IllegalStateException e) { return false; } } }
private static boolean mediaTypeMatches(String value, MediaType range) { try { return MediaType.parse(value).is(range); } catch (IllegalArgumentException | IllegalStateException e) { return false; } } }
private void decideMimeAndEncoding(HttpServletRequest req, HttpServletResponse resp) { //Decide mimetype String mime = req.getServletContext().getMimeType(req.getRequestURI()); MediaType mediaType = (mime == null) ? DEFAULT_MEDIA_TYPE : MediaType.parse(mime); if (defaultCharset != null && mediaType.is(MediaType.ANY_TEXT_TYPE)) { mediaType = mediaType.withCharset(defaultCharset); } resp.setContentType(mediaType.type() + '/' + mediaType.subtype()); if (mediaType.charset().isPresent()) { resp.setCharacterEncoding(mediaType.charset().get().toString()); } }
private void decideMimeAndEncoding(HttpServletRequest req, HttpServletResponse resp) { //Decide mimetype String mime = req.getServletContext().getMimeType(req.getRequestURI()); MediaType mediaType = (mime == null) ? DEFAULT_MEDIA_TYPE : MediaType.parse(mime); if (defaultCharset != null && mediaType.is(MediaType.ANY_TEXT_TYPE)) { mediaType = mediaType.withCharset(defaultCharset); } resp.setContentType(mediaType.type() + '/' + mediaType.subtype()); if (mediaType.charset().isPresent()) { resp.setCharacterEncoding(mediaType.charset().get().toString()); } }
private void decideMimeAndEncoding(HttpServletRequest req, HttpServletResponse resp) { //Decide mimetype String mime = req.getServletContext().getMimeType(req.getRequestURI()); MediaType mediaType = (mime == null) ? DEFAULT_MEDIA_TYPE : MediaType.parse(mime); if (defaultCharset != null && mediaType.is(MediaType.ANY_TEXT_TYPE)) { mediaType = mediaType.withCharset(defaultCharset); } resp.setContentType(mediaType.type() + '/' + mediaType.subtype()); if (mediaType.charset().isPresent()) { resp.setCharacterEncoding(mediaType.charset().get().toString()); } }
public static boolean matches(@Nullable final String contentType, final MediaType expected) { if (contentType == null) { return false; } try { final MediaType mediaType = MediaType.parse(contentType); return expected.withoutParameters().is(mediaType.withoutParameters()); } catch (final IllegalArgumentException e) { return false; } }
/** * @return true if the current asset is an image, false otherwise. */ public boolean isImage() { return getMimeType() != null && MediaType.parse(getMimeType()).is(MediaType.ANY_IMAGE_TYPE); }
/** * Checks whether mime types is supported by this serializer implementation */ @Override public boolean canRead(String mimeType) { return MediaType.JSON_UTF_8.withoutParameters().is(MediaType.parse(mimeType).withoutParameters()); }
public boolean isJsonBody() { final MediaType type = getRequest().getContentType(); return type != null && type.withoutParameters().is( MediaType.JSON_UTF_8.withoutParameters() ); }
private static void assertContentType(StringResponse response, MediaType type) { String contentType = response.getHeader(CONTENT_TYPE); assertTrue(MediaType.parse(contentType).is(type.withoutParameters()), contentType); } }
private String getIcon(Node node) throws RepositoryException { String mimeType = getMimeType(node); if (definition.isThumbnails() && isImage(mimeType) && !MediaType.SVG_UTF_8.is(MediaType.parse(mimeType))) { return getThumbnail(JcrItemUtil.getItemId(node)); } if (isAssetNode(node)) { return String.format(ICON_TAG, MIMEMapping.getMIMETypeIconStyle(mimeType)); } return EMPTY; }
private static void assertContentType(StringResponse response, MediaType type) { String contentType = response.getHeader(CONTENT_TYPE); assertTrue(MediaType.parse(contentType).is(type.withoutParameters()), contentType); } }
private static void assertResource(URI baseUri, HttpClient client, String path, String contents) { HttpUriBuilder uriBuilder = uriBuilderFrom(baseUri); StringResponseHandler.StringResponse data = client.execute(prepareGet().setUri(uriBuilder.appendPath(path).build()).build(), createStringResponseHandler()); assertEquals(data.getStatusCode(), HttpStatus.OK.code()); MediaType contentType = MediaType.parse(data.getHeader(HttpHeaders.CONTENT_TYPE)); assertTrue(PLAIN_TEXT_UTF_8.is(contentType), "Expected text/plain but got " + contentType); assertEquals(data.getBody().trim(), contents); }
private static void assertResource(URI baseUri, HttpClient client, String path, String contents) { HttpUriBuilder uriBuilder = uriBuilderFrom(baseUri); StringResponseHandler.StringResponse data = client.execute(prepareGet().setUri(uriBuilder.appendPath(path).build()).build(), createStringResponseHandler()); assertEquals(data.getStatusCode(), HttpStatus.OK.code()); MediaType contentType = MediaType.parse(data.getHeader(HttpHeaders.CONTENT_TYPE)); assertTrue(PLAIN_TEXT_UTF_8.is(contentType), "Expected text/plain but got " + contentType); assertEquals(data.getBody().trim(), contents); }
@Override public JsonResponse<T> handle(Request request, Response response) { byte[] bytes = readResponseBytes(response); String contentType = response.getHeader(CONTENT_TYPE); if ((contentType == null) || !MediaType.parse(contentType).is(MEDIA_TYPE_JSON)) { return new JsonResponse<>(response.getStatusCode(), response.getStatusMessage(), response.getHeaders(), bytes); } return new JsonResponse<>(response.getStatusCode(), response.getStatusMessage(), response.getHeaders(), jsonCodec, bytes); }
private void assertResource(URI baseUri, HttpClient client, String path, String contents) { HttpUriBuilder uriBuilder = uriBuilderFrom(baseUri); StringResponse data = client.execute(prepareGet().setUri(uriBuilder.appendPath(path).build()).build(), createStringResponseHandler()); assertEquals(data.getStatusCode(), HttpStatus.OK.code()); MediaType contentType = MediaType.parse(data.getHeader(HttpHeaders.CONTENT_TYPE)); assertTrue(PLAIN_TEXT_UTF_8.is(contentType), "Expected text/plain but got " + contentType); assertEquals(data.getBody().trim(), contents); }