Example usage for com.google.common.net MediaType subtype

List of usage examples for com.google.common.net MediaType subtype

Introduction

In this page you can find the example usage for com.google.common.net MediaType subtype.

Prototype

String subtype

To view the source code for com.google.common.net MediaType subtype.

Click Source Link

Usage

From source file:com.andrewreitz.encryptedcamera.externalstoreage.ExternalStorageManagerImpl.java

private String getFileName(MediaType type, File mediaStorageDir, String mediaPrefix, String timeStamp) {
    return String.format(FILE_NAME_FORMAT, mediaStorageDir.getPath(), File.separator, mediaPrefix, timeStamp,
            type.subtype());
}

From source file:com.buildria.mocking.builder.rule.BodyRule.java

@Override
public boolean apply(@Nonnull Call call) {
    Objects.requireNonNull(call);

    byte[] body = call.getBody();
    if (body == null || body.length == 0) {
        return matcher.matches(body);
    }/*from  w  ww. ja v a 2 s.  c o m*/

    MediaType contentType = call.getContentType();
    if (contentType == null) {
        throw new MockingException("No Content-Type header.");
    }
    Charset charset = contentType.charset().or(StandardCharsets.UTF_8);
    String content = new String(body, charset);
    Object obj = convertContent(contentType.subtype(), content, path);
    return matcher.matches(obj);
}

From source file:at.ac.univie.isc.asio.jaxrs.MediaTypeConverter.java

@Override
protected javax.ws.rs.core.MediaType doBackward(@Nonnull final com.google.common.net.MediaType input) {
    final ImmutableMap.Builder<String, String> parameters = ImmutableMap.builder();
    for (Map.Entry<String, Collection<String>> entry : input.parameters().asMap().entrySet()) {
        assert entry.getValue().size() <= 1 : "cannot convert duplicate parameters in " + input;
        parameters.put(entry.getKey(), entry.getValue().iterator().next());
    }//from w  ww  .j  a v  a 2 s .  c  o m
    return new javax.ws.rs.core.MediaType(input.type(), input.subtype(), parameters.build());
}

From source file:org.wikimedia.analytics.kraken.pageview.PageviewFilter.java

/**
 *
 * @param url/*  ww  w .j av a  2s. c  o  m*/
 * @param mimeType
 * @return
 */
public final boolean isValidMimeType(final URL url, final String mimeType) {
    PageviewType pageviewType = PageviewType.determinePageviewType(url);
    MediaType mediaType;
    try {
        mediaType = MediaType.parse(mimeType);
    } catch (java.lang.IllegalArgumentException e) {
        return false;
    }

    switch (pageviewType) {
    case IMAGE:
        return (mediaType.type().contains("image"));

    case API:
        return (mediaType.type().equals("application") && mediaType.subtype().equals("json"));

    case REGULAR:
        return (mediaType.type().equals("text")
                && ((mediaType.subtype().equals("html")) || mediaType.subtype().equals("vnd.wap.wml")));

    default:
        return (mediaType.type().equals("text") && (mediaType.subtype().equals("html")));
    }
}

From source file:org.springframework.boot.context.embedded.netty.NettyHttpServletResponse.java

@Override
public void setContentType(String type) {
    if (isCommitted()) {
        return;/*from  w w  w .  ja v a 2s  . c o m*/
    }
    if (hasWriter()) {
        return;
    }
    if (null == type) {
        contentType = null;
        return;
    }
    MediaType mediaType = MediaType.parse(type);
    Optional<Charset> charset = mediaType.charset();
    if (charset.isPresent()) {
        setCharacterEncoding(charset.get().name());
    }
    contentType = mediaType.type() + '/' + mediaType.subtype();
}

From source file:io.nebo.container.NettyHttpServletResponse.java

@Override
public void setContentType(String type) {
    if (isCommitted()) {
        return;/*from  w  w  w. j  a va  2s.c  o m*/
    }
    //        if (hasWriter()) {
    //            return;
    //        }
    if (null == type) {
        contentType = null;
        return;
    }
    MediaType mediaType = MediaType.parse(type);
    Optional<Charset> charset = mediaType.charset();
    if (charset.isPresent()) {
        setCharacterEncoding(charset.get().name());
    }
    contentType = mediaType.type() + '/' + mediaType.subtype();
}

From source file:keywhiz.FileAssetServlet.java

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    try {//from w ww .j av  a 2  s.c o  m
        ByteSource asset = loadAsset(req.getRequestURI());
        if (asset == null) {
            resp.sendError(HttpServletResponse.SC_NOT_FOUND);
            return;
        }

        final String mimeTypeOfExtension = req.getServletContext().getMimeType(req.getRequestURI());
        MediaType mediaType = DEFAULT_MEDIA_TYPE;

        if (mimeTypeOfExtension != null) {
            try {
                mediaType = MediaType.parse(mimeTypeOfExtension);
                if (mediaType.is(MediaType.ANY_TEXT_TYPE)) {
                    mediaType = mediaType.withCharset(DEFAULT_CHARSET);
                }
            } catch (IllegalArgumentException ignore) {
            }
        }

        resp.setContentType(mediaType.type() + "/" + mediaType.subtype());

        if (mediaType.charset().isPresent()) {
            resp.setCharacterEncoding(mediaType.charset().get().toString());
        }

        try (OutputStream output = resp.getOutputStream()) {
            asset.copyTo(output);
        }
    } catch (RuntimeException ignored) {
        resp.sendError(HttpServletResponse.SC_NOT_FOUND);
    }
}

From source file:com.khannedy.sajikeun.servlet.AssetServlet.java

protected void doHttp(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    try {//  w  w  w  . j a va  2 s  .  com

        final StringBuilder builder = new StringBuilder(req.getServletPath());
        if (req.getPathInfo() != null) {
            builder.append(req.getPathInfo());
        }
        final Asset asset = loadAsset(builder.toString());
        if (asset == null) {
            resp.sendError(HttpServletResponse.SC_NOT_FOUND);
            return;
        }

        if (cache) {
            if (isCachedClientSide(req, asset)) {
                resp.sendError(HttpServletResponse.SC_NOT_MODIFIED);
                return;
            }
        }

        resp.setDateHeader(HttpHeaders.LAST_MODIFIED, asset.getLastModified());
        resp.setHeader(HttpHeaders.ETAG, asset.getETag());

        final String mimeTypeOfExtension = req.getServletContext().getMimeType(req.getRequestURI());
        MediaType mediaType = DEFAULT_MEDIA_TYPE;

        if (mimeTypeOfExtension != null) {
            try {
                mediaType = MediaType.parse(mimeTypeOfExtension);
                if (defaultCharset != null && mediaType.is(MediaType.ANY_TEXT_TYPE)) {
                    mediaType = mediaType.withCharset(defaultCharset);
                }
            } catch (IllegalArgumentException ignore) {
            }
        }

        resp.setContentType(mediaType.type() + '/' + mediaType.subtype());

        if (mediaType.charset().isPresent()) {
            resp.setCharacterEncoding(mediaType.charset().get().toString());
        }

        try (ServletOutputStream output = resp.getOutputStream()) {
            output.write(asset.getResource());
        }
    } catch (RuntimeException | URISyntaxException ignored) {
        resp.sendError(HttpServletResponse.SC_NOT_FOUND);
    }
}

From source file:org.ardverk.dropwizard.assets.AssetsDirectoryServlet.java

@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    String requestURI = request.getRequestURI();

    try {/*from   w  ww. j a v  a 2  s .co  m*/
        AssetsDirectory.Entry entry = directory.getFileEntry(requestURI);

        if (isCurrent(request, entry)) {
            response.sendError(HttpServletResponse.SC_NOT_MODIFIED);
            return;
        }

        response.setDateHeader(HttpHeaders.LAST_MODIFIED, entry.getLastModified());
        response.setHeader(HttpHeaders.ETAG, entry.getETag());

        MediaType mediaType = DEFAULT_MEDIA_TYPE;

        Buffer mimeType = mimeTypes.getMimeByExtension(requestURI);
        if (mimeType != null) {
            try {
                mediaType = MediaType.parse(mimeType.toString());
                if (charset != null && mediaType.is(MediaType.ANY_TEXT_TYPE)) {
                    mediaType = mediaType.withCharset(charset);
                }
            } catch (IllegalArgumentException ignore) {
            }
        }

        response.setContentType(mediaType.type() + "/" + mediaType.subtype());

        if (mediaType.charset().isPresent()) {
            response.setCharacterEncoding(mediaType.charset().get().toString());
        }

        long contentLength = entry.length();
        if (contentLength >= 0L && contentLength < Integer.MAX_VALUE) {
            response.setContentLength((int) contentLength);
        }

        OutputStream out = response.getOutputStream();
        entry.writeTo(out);
        out.flush();

    } catch (FileNotFoundException err) {
        response.sendError(HttpServletResponse.SC_NOT_FOUND);
    }
}

From source file:com.github.dirkraft.dropwizard.fileassets.FileAssetServlet.java

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    try {/*from   w ww .  jav a  2  s  . c  o m*/
        final StringBuilder builder = new StringBuilder(req.getServletPath());
        if (req.getPathInfo() != null) {
            builder.append(req.getPathInfo());
        }
        final CachedAsset cachedAsset = loadAsset(builder.toString());
        if (cachedAsset == null) {
            resp.sendError(HttpServletResponse.SC_NOT_FOUND);
            return;
        }

        if (isCachedClientSide(req, cachedAsset)) {
            resp.sendError(HttpServletResponse.SC_NOT_MODIFIED);
            return;
        }

        resp.setDateHeader(HttpHeaders.LAST_MODIFIED, cachedAsset.getLastModifiedTime());
        resp.setHeader(HttpHeaders.ETAG, cachedAsset.getETag());

        final String mimeTypeOfExtension = req.getServletContext().getMimeType(req.getRequestURI());
        MediaType mediaType = DEFAULT_MEDIA_TYPE;

        if (mimeTypeOfExtension != null) {
            try {
                mediaType = MediaType.parse(mimeTypeOfExtension);
                if (defaultCharset != null && mediaType.is(MediaType.ANY_TEXT_TYPE)) {
                    mediaType = mediaType.withCharset(defaultCharset);
                }
            } catch (IllegalArgumentException ignore) {
            }
        }

        resp.setContentType(mediaType.type() + '/' + mediaType.subtype());

        if (mediaType.charset().isPresent()) {
            resp.setCharacterEncoding(mediaType.charset().get().toString());
        }

        try (ServletOutputStream output = resp.getOutputStream()) {
            output.write(cachedAsset.getResource());
        }
    } catch (RuntimeException | URISyntaxException ignored) {
        resp.sendError(HttpServletResponse.SC_NOT_FOUND);
    }
}