Implement gzip encoding filter.

This commit is contained in:
Marko Zivanovic
2014-12-01 01:18:32 +01:00
parent 9ccbab8ffd
commit f412516382
2 changed files with 29 additions and 9 deletions
+6 -6
View File
@@ -12,7 +12,7 @@
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.1.9.RELEASE</version>
</parent>
<licenses>
<license>
<name>MIT license</name>
@@ -20,7 +20,7 @@
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>marko</id>
@@ -33,19 +33,19 @@
<timezone>+1</timezone>
</developer>
</developers>
<organization>
<name>Marko Zivanovic</name>
<url>http://marko.zivanovic.in.rs</url>
</organization>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
@@ -57,6 +57,6 @@
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>1.8</java.version>
<java.version>1.8</java.version>
</properties>
</project>
@@ -23,19 +23,39 @@
*/
package rs.in.zivanovic.share.a.secret.api;
import org.apache.catalina.connector.Connector;
import org.apache.coyote.http11.AbstractHttp11Protocol;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.context.embedded.ConfigurableEmbeddedServletContainer;
import org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer;
import org.springframework.boot.context.embedded.tomcat.TomcatConnectorCustomizer;
import org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.MediaType;
/**
*
*/
@Configuration
@EnableAutoConfiguration
@ComponentScan
public class Application {
@Bean
public EmbeddedServletContainerCustomizer servletContainerCustomizer() {
return (ConfigurableEmbeddedServletContainer servletContainer) -> {
((TomcatEmbeddedServletContainerFactory) servletContainer).addConnectorCustomizers(
(TomcatConnectorCustomizer) (Connector connector) -> {
AbstractHttp11Protocol httpProtocol = (AbstractHttp11Protocol) connector.getProtocolHandler();
httpProtocol.setCompression("on");
httpProtocol.setCompressionMinSize(256);
String mimeTypes = httpProtocol.getCompressableMimeTypes();
String mimeTypesWithJson = mimeTypes + "," + MediaType.APPLICATION_JSON_VALUE;
httpProtocol.setCompressableMimeTypes(mimeTypesWithJson);
});
};
}
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}