Commit c40e61c1 authored by Brian Clozel's avatar Brian Clozel

Merge branch '2.0.x' into 2.1.x

parents c6b42c8e 0e13fd03
/*
* Copyright 2012-2018 the original author or authors.
* Copyright 2012-2019 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
......@@ -18,7 +18,9 @@ package org.springframework.boot.web.embedded.tomcat;
import org.apache.catalina.connector.Connector;
import org.apache.coyote.ProtocolHandler;
import org.apache.coyote.UpgradeProtocol;
import org.apache.coyote.http11.AbstractHttp11Protocol;
import org.apache.coyote.http2.Http2Protocol;
import org.springframework.boot.web.server.Compression;
import org.springframework.util.StringUtils;
......@@ -44,6 +46,25 @@ class CompressionConnectorCustomizer implements TomcatConnectorCustomizer {
if (handler instanceof AbstractHttp11Protocol) {
customize((AbstractHttp11Protocol<?>) handler);
}
for (UpgradeProtocol upgradeProtocol : connector.findUpgradeProtocols()) {
if (upgradeProtocol instanceof Http2Protocol) {
customize((Http2Protocol) upgradeProtocol);
}
}
}
}
private void customize(Http2Protocol upgradeProtocol) {
Compression compression = this.compression;
upgradeProtocol.setCompression("on");
upgradeProtocol
.setCompressionMinSize((int) compression.getMinResponseSize().toBytes());
upgradeProtocol.setCompressibleMimeType(
StringUtils.arrayToCommaDelimitedString(compression.getMimeTypes()));
if (this.compression.getExcludedUserAgents() != null) {
upgradeProtocol
.setNoCompressionUserAgents(StringUtils.arrayToCommaDelimitedString(
this.compression.getExcludedUserAgents()));
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment