GZIPReaderInterceptor.java 文件源码

java
阅读 23 收藏 0 点赞 0 评论 0

项目:cloudstore 作者:
@Override
   public Object aroundReadFrom(ReaderInterceptorContext context) throws IOException, WebApplicationException {
    InputStream originalInputStream = context.getInputStream();

       if (!originalInputStream.markSupported())
        originalInputStream = new BufferedInputStream(originalInputStream);

       // Test, if it contains data. We only try to unzip, if it is not empty.
       originalInputStream.mark(5);
       int read = originalInputStream.read();
       originalInputStream.reset();

       if (read > -1)
        context.setInputStream(new GZIPInputStream(originalInputStream));
       else {
        context.setInputStream(originalInputStream); // We might have wrapped it with our BufferedInputStream!
        logger.debug("aroundReadFrom: originalInputStream is empty! Skipping GZIP.");
       }
       return context.proceed();
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号