From 9a5ed3522bf2061dbf076c283a5d6909ecfb3f98 Mon Sep 17 00:00:00 2001 From: spencergibb Date: Mon, 2 Nov 2020 14:49:33 -0500 Subject: [PATCH] formatting --- .../SecureHeadersGatewayFilterFactory.java | 19 ++++++--- .../route/builder/GatewayFilterSpec.java | 9 +++-- ...ReactiveLoadBalancerClientFilterTests.java | 9 +++-- ...eHeadersGatewayFilterFactoryUnitTests.java | 39 ++++++++++++------- 4 files changed, 50 insertions(+), 26 deletions(-) diff --git a/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/filter/factory/SecureHeadersGatewayFilterFactory.java b/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/filter/factory/SecureHeadersGatewayFilterFactory.java index 1a05a8b9..3f755b11 100644 --- a/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/filter/factory/SecureHeadersGatewayFilterFactory.java +++ b/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/filter/factory/SecureHeadersGatewayFilterFactory.java @@ -32,7 +32,8 @@ import static org.springframework.cloud.gateway.support.GatewayToStringStyler.fi * * @author Spencer Gibb, Thirunavukkarasu Ravichandran */ -public class SecureHeadersGatewayFilterFactory extends AbstractGatewayFilterFactory { +public class SecureHeadersGatewayFilterFactory + extends AbstractGatewayFilterFactory { /** * Xss-Protection header name. @@ -97,7 +98,8 @@ public class SecureHeadersGatewayFilterFactory extends AbstractGatewayFilterFact } if (isEnabled(disabled, STRICT_TRANSPORT_SECURITY_HEADER)) { - headers.add(STRICT_TRANSPORT_SECURITY_HEADER, config.getStrictTransportSecurity()); + headers.add(STRICT_TRANSPORT_SECURITY_HEADER, + config.getStrictTransportSecurity()); } if (isEnabled(disabled, X_FRAME_OPTIONS_HEADER)) { @@ -105,7 +107,8 @@ public class SecureHeadersGatewayFilterFactory extends AbstractGatewayFilterFact } if (isEnabled(disabled, X_CONTENT_TYPE_OPTIONS_HEADER)) { - headers.add(X_CONTENT_TYPE_OPTIONS_HEADER, config.getContentTypeOptions()); + headers.add(X_CONTENT_TYPE_OPTIONS_HEADER, + config.getContentTypeOptions()); } if (isEnabled(disabled, REFERRER_POLICY_HEADER)) { @@ -113,7 +116,8 @@ public class SecureHeadersGatewayFilterFactory extends AbstractGatewayFilterFact } if (isEnabled(disabled, CONTENT_SECURITY_POLICY_HEADER)) { - headers.add(CONTENT_SECURITY_POLICY_HEADER, config.getContentSecurityPolicy()); + headers.add(CONTENT_SECURITY_POLICY_HEADER, + config.getContentSecurityPolicy()); } if (isEnabled(disabled, X_DOWNLOAD_OPTIONS_HEADER)) { @@ -121,7 +125,8 @@ public class SecureHeadersGatewayFilterFactory extends AbstractGatewayFilterFact } if (isEnabled(disabled, X_PERMITTED_CROSS_DOMAIN_POLICIES_HEADER)) { - headers.add(X_PERMITTED_CROSS_DOMAIN_POLICIES_HEADER, config.getPermittedCrossDomainPolicies()); + headers.add(X_PERMITTED_CROSS_DOMAIN_POLICIES_HEADER, + config.getPermittedCrossDomainPolicies()); } return chain.filter(exchange); @@ -197,7 +202,8 @@ public class SecureHeadersGatewayFilterFactory extends AbstractGatewayFilterFact } if (config.permittedCrossDomainPolicies == null) { - config.permittedCrossDomainPolicies = properties.getPermittedCrossDomainPolicies(); + config.permittedCrossDomainPolicies = properties + .getPermittedCrossDomainPolicies(); } return config; } @@ -267,4 +273,5 @@ public class SecureHeadersGatewayFilterFactory extends AbstractGatewayFilterFact } } + } diff --git a/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/route/builder/GatewayFilterSpec.java b/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/route/builder/GatewayFilterSpec.java index 426e404c..dd061467 100644 --- a/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/route/builder/GatewayFilterSpec.java +++ b/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/route/builder/GatewayFilterSpec.java @@ -566,7 +566,8 @@ public class GatewayFilterSpec extends UriSpec { * @return a {@link GatewayFilterSpec} that can be used to apply additional filters */ public GatewayFilterSpec secureHeaders() { - return filter(getBean(SecureHeadersGatewayFilterFactory.class).apply(config -> {})); + return filter(getBean(SecureHeadersGatewayFilterFactory.class).apply(config -> { + })); } /** @@ -576,8 +577,10 @@ public class GatewayFilterSpec extends UriSpec { * @param configConsumer self define headers * @return a {@link GatewayFilterSpec} that can be used to apply additional filters */ - public GatewayFilterSpec secureHeaders(Consumer configConsumer) { - return filter(getBean(SecureHeadersGatewayFilterFactory.class).apply(configConsumer)); + public GatewayFilterSpec secureHeaders( + Consumer configConsumer) { + return filter( + getBean(SecureHeadersGatewayFilterFactory.class).apply(configConsumer)); } /** diff --git a/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/filter/ReactiveLoadBalancerClientFilterTests.java b/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/filter/ReactiveLoadBalancerClientFilterTests.java index 49a8441c..1f1b7048 100644 --- a/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/filter/ReactiveLoadBalancerClientFilterTests.java +++ b/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/filter/ReactiveLoadBalancerClientFilterTests.java @@ -273,9 +273,12 @@ public class ReactiveLoadBalancerClientFilterTests { ServiceInstance serviceInstance = new DefaultServiceInstance("myservice1", "myservice", "localhost", 8080, false); when(clientFactory.getInstance("myservice", - ReactorServiceInstanceLoadBalancer.class)).thenReturn( - new RoundRobinLoadBalancer(ServiceInstanceListSuppliers - .toProvider("myservice", serviceInstance), "myservice", -1)); + ReactorServiceInstanceLoadBalancer.class)) + .thenReturn( + new RoundRobinLoadBalancer( + ServiceInstanceListSuppliers + .toProvider("myservice", serviceInstance), + "myservice", -1)); when(chain.filter(exchange)).thenReturn(Mono.empty()); filter.filter(exchange, chain).block(); diff --git a/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/filter/factory/SecureHeadersGatewayFilterFactoryUnitTests.java b/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/filter/factory/SecureHeadersGatewayFilterFactoryUnitTests.java index 4e3fe555..41cbf7ad 100644 --- a/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/filter/factory/SecureHeadersGatewayFilterFactoryUnitTests.java +++ b/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/filter/factory/SecureHeadersGatewayFilterFactoryUnitTests.java @@ -91,7 +91,8 @@ public class SecureHeadersGatewayFilterFactoryUnitTests { "content-security-policy", "x-download-options", "x-permitted-cross-domain-policies")); - SecureHeadersGatewayFilterFactory filterFactory = new SecureHeadersGatewayFilterFactory(properties); + SecureHeadersGatewayFilterFactory filterFactory = new SecureHeadersGatewayFilterFactory( + properties); filter = filterFactory.apply(new Config()); filter.filter(exchange, filterChain); @@ -118,26 +119,36 @@ public class SecureHeadersGatewayFilterFactoryUnitTests { filter.filter(exchange, filterChain); ServerHttpResponse response = captor.getValue().getResponse(); - assertThat(response.getHeaders()).containsKeys(X_XSS_PROTECTION_HEADER, STRICT_TRANSPORT_SECURITY_HEADER, - X_FRAME_OPTIONS_HEADER, X_CONTENT_TYPE_OPTIONS_HEADER, REFERRER_POLICY_HEADER, - CONTENT_SECURITY_POLICY_HEADER, X_DOWNLOAD_OPTIONS_HEADER, X_PERMITTED_CROSS_DOMAIN_POLICIES_HEADER); + assertThat(response.getHeaders()).containsKeys(X_XSS_PROTECTION_HEADER, + STRICT_TRANSPORT_SECURITY_HEADER, X_FRAME_OPTIONS_HEADER, + X_CONTENT_TYPE_OPTIONS_HEADER, REFERRER_POLICY_HEADER, + CONTENT_SECURITY_POLICY_HEADER, X_DOWNLOAD_OPTIONS_HEADER, + X_PERMITTED_CROSS_DOMAIN_POLICIES_HEADER); - assertThat(response.getHeaders().get(STRICT_TRANSPORT_SECURITY_HEADER)).containsOnly("max-age=65535"); - assertThat(response.getHeaders().get(REFERRER_POLICY_HEADER)).containsOnly("referrer"); - - assertThat(response.getHeaders().get(X_XSS_PROTECTION_HEADER)).containsOnly(properties.getXssProtectionHeader()); - assertThat(response.getHeaders().get(X_FRAME_OPTIONS_HEADER)).containsOnly(properties.getFrameOptions()); - assertThat(response.getHeaders().get(X_CONTENT_TYPE_OPTIONS_HEADER)).containsOnly(properties.getContentTypeOptions()); - assertThat(response.getHeaders().get(CONTENT_SECURITY_POLICY_HEADER)).containsOnly(properties.getContentSecurityPolicy()); - assertThat(response.getHeaders().get(X_DOWNLOAD_OPTIONS_HEADER)).containsOnly(properties.getDownloadOptions()); - assertThat(response.getHeaders().get(X_PERMITTED_CROSS_DOMAIN_POLICIES_HEADER)).containsOnly(properties.getPermittedCrossDomainPolicies()); + assertThat(response.getHeaders().get(STRICT_TRANSPORT_SECURITY_HEADER)) + .containsOnly("max-age=65535"); + assertThat(response.getHeaders().get(REFERRER_POLICY_HEADER)) + .containsOnly("referrer"); + assertThat(response.getHeaders().get(X_XSS_PROTECTION_HEADER)) + .containsOnly(properties.getXssProtectionHeader()); + assertThat(response.getHeaders().get(X_FRAME_OPTIONS_HEADER)) + .containsOnly(properties.getFrameOptions()); + assertThat(response.getHeaders().get(X_CONTENT_TYPE_OPTIONS_HEADER)) + .containsOnly(properties.getContentTypeOptions()); + assertThat(response.getHeaders().get(CONTENT_SECURITY_POLICY_HEADER)) + .containsOnly(properties.getContentSecurityPolicy()); + assertThat(response.getHeaders().get(X_DOWNLOAD_OPTIONS_HEADER)) + .containsOnly(properties.getDownloadOptions()); + assertThat(response.getHeaders().get(X_PERMITTED_CROSS_DOMAIN_POLICIES_HEADER)) + .containsOnly(properties.getPermittedCrossDomainPolicies()); } @Test public void toStringFormat() { - GatewayFilter filter = new SecureHeadersGatewayFilterFactory(new SecureHeadersProperties()).apply(new Config()); + GatewayFilter filter = new SecureHeadersGatewayFilterFactory( + new SecureHeadersProperties()).apply(new Config()); Assertions.assertThat(filter.toString()).contains("SecureHeaders"); }