package co.codewizards.cloudstore.rest.shared.filter; import java.io.IOException; import javax.ws.rs.container.ContainerRequestContext; import javax.ws.rs.container.ContainerRequestFilter; import co.codewizards.cloudstore.rest.shared.GZIPUtil; /** * Filter that sets property Cloudstore-Content-Encoding if request contains a header of the same name. * <p> * Property can be accessed by interceptors in request/response scope, which is needed in this case. * @see GZIPClientRequestFilter * @author Wojtek Wilk - wilk.wojtek at gmail.com */ public class GZIPContainerRequestFilter implements ContainerRequestFilter { @Override public void filter(ContainerRequestContext requestContext) throws IOException { if(GZIPUtil.isRequestCompressedWithGzip(requestContext)){ requestContext.setProperty(GZIPUtil.CLOUDSTORE_ENCODING_HEADER, GZIPUtil.CLOUDSTORE_ENCODING_HEADER_VALUE); } } }