Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in / Register
Toggle navigation
S
spring-boot
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
DEMO
spring-boot
Commits
df088636
Commit
df088636
authored
Feb 09, 2017
by
Andy Wilkinson
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Make ServletRegistrationBean and FilterRegistration bean generic
Closes gh-7666
parent
a8daed81
Changes
28
Hide whitespace changes
Inline
Side-by-side
Showing
28 changed files
with
222 additions
and
185 deletions
+222
-185
SkipSslVerificationHttpRequestFactoryTests.java
...udfoundry/SkipSslVerificationHttpRequestFactoryTests.java
+3
-2
H2ConsoleAutoConfiguration.java
...ork/boot/autoconfigure/h2/H2ConsoleAutoConfiguration.java
+2
-2
JerseyAutoConfiguration.java
...rk/boot/autoconfigure/jersey/JerseyAutoConfiguration.java
+6
-6
OAuth2RestOperationsConfiguration.java
...rity/oauth2/client/OAuth2RestOperationsConfiguration.java
+2
-2
DispatcherServletAutoConfiguration.java
...autoconfigure/web/DispatcherServletAutoConfiguration.java
+4
-3
WebServicesAutoConfiguration.java
...toconfigure/webservices/WebServicesAutoConfiguration.java
+3
-3
H2ConsoleAutoConfigurationTests.java
...oot/autoconfigure/h2/H2ConsoleAutoConfigurationTests.java
+9
-7
DispatcherServletAutoConfigurationTests.java
...onfigure/web/DispatcherServletAutoConfigurationTests.java
+8
-8
EmbeddedServletContainerAutoConfigurationTests.java
...e/web/EmbeddedServletContainerAutoConfigurationTests.java
+4
-3
WebServicesAutoConfigurationTests.java
...figure/webservices/WebServicesAutoConfigurationTests.java
+9
-7
SampleAtmosphereApplication.java
...n/java/sample/atmosphere/SampleAtmosphereApplication.java
+3
-3
SampleJersey1Application.java
...rc/main/java/sample/jersey1/SampleJersey1Application.java
+2
-2
SpringBootMockMvcBuilderCustomizer.java
...igure/web/servlet/SpringBootMockMvcBuilderCustomizer.java
+3
-3
AbstractFilterRegistrationBean.java
...work/boot/web/servlet/AbstractFilterRegistrationBean.java
+12
-10
DelegatingFilterProxyRegistrationBean.java
...ot/web/servlet/DelegatingFilterProxyRegistrationBean.java
+5
-4
FilterRegistrationBean.java
...ingframework/boot/web/servlet/FilterRegistrationBean.java
+9
-7
ServletContextInitializerBeans.java
...work/boot/web/servlet/ServletContextInitializerBeans.java
+5
-4
ServletRegistrationBean.java
...ngframework/boot/web/servlet/ServletRegistrationBean.java
+8
-7
AbstractEmbeddedServletContainerFactoryTests.java
...mbedded/AbstractEmbeddedServletContainerFactoryTests.java
+46
-35
EmbeddedServletContainerMvcIntegrationTests.java
...embedded/EmbeddedServletContainerMvcIntegrationTests.java
+5
-5
EmbeddedWebApplicationContextTests.java
.../context/embedded/EmbeddedWebApplicationContextTests.java
+6
-5
JettyEmbeddedServletContainerFactoryTests.java
...dded/jetty/JettyEmbeddedServletContainerFactoryTests.java
+1
-1
UndertowEmbeddedServletContainerFactoryTests.java
...ndertow/UndertowEmbeddedServletContainerFactoryTests.java
+5
-3
AbstractFilterRegistrationBeanTests.java
...boot/web/servlet/AbstractFilterRegistrationBeanTests.java
+22
-21
DelegatingFilterProxyRegistrationBeanTests.java
...b/servlet/DelegatingFilterProxyRegistrationBeanTests.java
+5
-5
FilterRegistrationBeanTests.java
...amework/boot/web/servlet/FilterRegistrationBeanTests.java
+10
-8
ServletComponentScanIntegrationTests.java
...oot/web/servlet/ServletComponentScanIntegrationTests.java
+3
-2
ServletRegistrationBeanTests.java
...mework/boot/web/servlet/ServletRegistrationBeanTests.java
+22
-17
No files found.
spring-boot-actuator/src/test/java/org/springframework/boot/actuate/cloudfoundry/SkipSslVerificationHttpRequestFactoryTests.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -67,7 +67,8 @@ public class SkipSslVerificationHttpRequestFactoryTests {
0
);
factory
.
setSsl
(
getSsl
(
"password"
,
"classpath:test.jks"
));
EmbeddedWebServer
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
(
new
ExampleServlet
(),
"/hello"
));
new
ServletRegistrationBean
<
ExampleServlet
>(
new
ExampleServlet
(),
"/hello"
));
container
.
start
();
return
"https://localhost:"
+
container
.
getPort
()
+
"/hello"
;
}
...
...
spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/h2/H2ConsoleAutoConfiguration.java
View file @
df088636
...
...
@@ -61,10 +61,10 @@ public class H2ConsoleAutoConfiguration {
}
@Bean
public
ServletRegistrationBean
h2Console
()
{
public
ServletRegistrationBean
<
WebServlet
>
h2Console
()
{
String
path
=
this
.
properties
.
getPath
();
String
urlMapping
=
(
path
.
endsWith
(
"/"
)
?
path
+
"*"
:
path
+
"/*"
);
ServletRegistrationBean
registration
=
new
ServletRegistrationBean
(
ServletRegistrationBean
<
WebServlet
>
registration
=
new
ServletRegistrationBean
<
WebServlet
>
(
new
WebServlet
(),
urlMapping
);
H2ConsoleProperties
.
Settings
settings
=
this
.
properties
.
getSettings
();
if
(
settings
.
isTrace
())
{
...
...
spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jersey/JerseyAutoConfiguration.java
View file @
df088636
...
...
@@ -134,8 +134,8 @@ public class JerseyAutoConfiguration implements ServletContextAware {
@Bean
@ConditionalOnMissingBean
public
FilterRegistrationBean
requestContextFilter
()
{
FilterRegistrationBean
registration
=
new
FilterRegistrationBean
();
public
FilterRegistrationBean
<
RequestContextFilter
>
requestContextFilter
()
{
FilterRegistrationBean
<
RequestContextFilter
>
registration
=
new
FilterRegistrationBean
<
RequestContextFilter
>
();
registration
.
setFilter
(
new
RequestContextFilter
());
registration
.
setOrder
(
this
.
jersey
.
getFilter
().
getOrder
()
-
1
);
registration
.
setName
(
"requestContextFilter"
);
...
...
@@ -145,8 +145,8 @@ public class JerseyAutoConfiguration implements ServletContextAware {
@Bean
@ConditionalOnMissingBean
(
name
=
"jerseyFilterRegistration"
)
@ConditionalOnProperty
(
prefix
=
"spring.jersey"
,
name
=
"type"
,
havingValue
=
"filter"
)
public
FilterRegistrationBean
jerseyFilterRegistration
()
{
FilterRegistrationBean
registration
=
new
FilterRegistrationBean
();
public
FilterRegistrationBean
<
ServletContainer
>
jerseyFilterRegistration
()
{
FilterRegistrationBean
<
ServletContainer
>
registration
=
new
FilterRegistrationBean
<
ServletContainer
>
();
registration
.
setFilter
(
new
ServletContainer
(
this
.
config
));
registration
.
setUrlPatterns
(
Arrays
.
asList
(
this
.
path
));
registration
.
setOrder
(
this
.
jersey
.
getFilter
().
getOrder
());
...
...
@@ -168,8 +168,8 @@ public class JerseyAutoConfiguration implements ServletContextAware {
@Bean
@ConditionalOnMissingBean
(
name
=
"jerseyServletRegistration"
)
@ConditionalOnProperty
(
prefix
=
"spring.jersey"
,
name
=
"type"
,
havingValue
=
"servlet"
,
matchIfMissing
=
true
)
public
ServletRegistrationBean
jerseyServletRegistration
()
{
ServletRegistrationBean
registration
=
new
ServletRegistrationBean
(
public
ServletRegistrationBean
<
ServletContainer
>
jerseyServletRegistration
()
{
ServletRegistrationBean
<
ServletContainer
>
registration
=
new
ServletRegistrationBean
<
ServletContainer
>
(
new
ServletContainer
(
this
.
config
),
this
.
path
);
addInitParameters
(
registration
);
registration
.
setName
(
getServletRegistrationName
());
...
...
spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/security/oauth2/client/OAuth2RestOperationsConfiguration.java
View file @
df088636
...
...
@@ -95,9 +95,9 @@ public class OAuth2RestOperationsConfiguration {
protected
static
class
SessionScopedConfiguration
{
@Bean
public
FilterRegistrationBean
oauth2ClientFilterRegistration
(
public
FilterRegistrationBean
<
OAuth2ClientContextFilter
>
oauth2ClientFilterRegistration
(
OAuth2ClientContextFilter
filter
,
SecurityProperties
security
)
{
FilterRegistrationBean
registration
=
new
FilterRegistrationBean
();
FilterRegistrationBean
<
OAuth2ClientContextFilter
>
registration
=
new
FilterRegistrationBean
<
OAuth2ClientContextFilter
>
();
registration
.
setFilter
(
filter
);
registration
.
setOrder
(
security
.
getFilterOrder
()
-
10
);
return
registration
;
...
...
spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/DispatcherServletAutoConfiguration.java
View file @
df088636
...
...
@@ -136,10 +136,11 @@ public class DispatcherServletAutoConfiguration {
@Bean
(
name
=
DEFAULT_DISPATCHER_SERVLET_REGISTRATION_BEAN_NAME
)
@ConditionalOnBean
(
value
=
DispatcherServlet
.
class
,
name
=
DEFAULT_DISPATCHER_SERVLET_BEAN_NAME
)
public
ServletRegistrationBean
dispatcherServletRegistration
(
public
ServletRegistrationBean
<
DispatcherServlet
>
dispatcherServletRegistration
(
DispatcherServlet
dispatcherServlet
)
{
ServletRegistrationBean
registration
=
new
ServletRegistrationBean
(
dispatcherServlet
,
this
.
serverProperties
.
getServlet
().
getServletMapping
());
ServletRegistrationBean
<
DispatcherServlet
>
registration
=
new
ServletRegistrationBean
<
DispatcherServlet
>(
dispatcherServlet
,
this
.
serverProperties
.
getServlet
().
getServletMapping
());
registration
.
setName
(
DEFAULT_DISPATCHER_SERVLET_BEAN_NAME
);
registration
.
setLoadOnStartup
(
this
.
webMvcProperties
.
getServlet
().
getLoadOnStartup
());
...
...
spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/webservices/WebServicesAutoConfiguration.java
View file @
df088636
...
...
@@ -56,14 +56,14 @@ public class WebServicesAutoConfiguration {
}
@Bean
public
ServletRegistrationBean
messageDispatcherServlet
(
public
ServletRegistrationBean
<
MessageDispatcherServlet
>
messageDispatcherServlet
(
ApplicationContext
applicationContext
)
{
MessageDispatcherServlet
servlet
=
new
MessageDispatcherServlet
();
servlet
.
setApplicationContext
(
applicationContext
);
String
path
=
this
.
properties
.
getPath
();
String
urlMapping
=
(
path
.
endsWith
(
"/"
)
?
path
+
"*"
:
path
+
"/*"
);
ServletRegistrationBean
registration
=
new
ServletRegistrationBean
(
servlet
,
urlMapping
);
ServletRegistrationBean
<
MessageDispatcherServlet
>
registration
=
new
ServletRegistrationBean
<
MessageDispatcherServlet
>(
servlet
,
urlMapping
);
WebServicesProperties
.
Servlet
servletProperties
=
this
.
properties
.
getServlet
();
registration
.
setLoadOnStartup
(
servletProperties
.
getLoadOnStartup
());
for
(
Map
.
Entry
<
String
,
String
>
entry
:
servletProperties
.
getInit
().
entrySet
())
{
...
...
spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/h2/H2ConsoleAutoConfigurationTests.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -70,7 +70,7 @@ public class H2ConsoleAutoConfigurationTests {
"spring.h2.console.enabled:true"
);
this
.
context
.
refresh
();
assertThat
(
this
.
context
.
getBeansOfType
(
ServletRegistrationBean
.
class
)).
hasSize
(
1
);
ServletRegistrationBean
registrationBean
=
this
.
context
ServletRegistrationBean
<?>
registrationBean
=
this
.
context
.
getBean
(
ServletRegistrationBean
.
class
);
assertThat
(
registrationBean
.
getUrlMappings
()).
contains
(
"/h2-console/*"
);
assertThat
(
registrationBean
.
getInitParameters
()).
doesNotContainKey
(
"trace"
);
...
...
@@ -95,8 +95,9 @@ public class H2ConsoleAutoConfigurationTests {
"spring.h2.console.enabled:true"
,
"spring.h2.console.path:/custom/"
);
this
.
context
.
refresh
();
assertThat
(
this
.
context
.
getBeansOfType
(
ServletRegistrationBean
.
class
)).
hasSize
(
1
);
assertThat
(
this
.
context
.
getBean
(
ServletRegistrationBean
.
class
).
getUrlMappings
())
.
contains
(
"/custom/*"
);
ServletRegistrationBean
<?>
servletRegistrationBean
=
this
.
context
.
getBean
(
ServletRegistrationBean
.
class
);
assertThat
(
servletRegistrationBean
.
getUrlMappings
()).
contains
(
"/custom/*"
);
}
@Test
...
...
@@ -106,8 +107,9 @@ public class H2ConsoleAutoConfigurationTests {
"spring.h2.console.enabled:true"
,
"spring.h2.console.path:/custom"
);
this
.
context
.
refresh
();
assertThat
(
this
.
context
.
getBeansOfType
(
ServletRegistrationBean
.
class
)).
hasSize
(
1
);
assertThat
(
this
.
context
.
getBean
(
ServletRegistrationBean
.
class
).
getUrlMappings
())
.
contains
(
"/custom/*"
);
ServletRegistrationBean
<?>
servletRegistrationBean
=
this
.
context
.
getBean
(
ServletRegistrationBean
.
class
);
assertThat
(
servletRegistrationBean
.
getUrlMappings
()).
contains
(
"/custom/*"
);
}
@Test
...
...
@@ -118,7 +120,7 @@ public class H2ConsoleAutoConfigurationTests {
"spring.h2.console.settings.webAllowOthers=true"
);
this
.
context
.
refresh
();
assertThat
(
this
.
context
.
getBeansOfType
(
ServletRegistrationBean
.
class
)).
hasSize
(
1
);
ServletRegistrationBean
registrationBean
=
this
.
context
ServletRegistrationBean
<?>
registrationBean
=
this
.
context
.
getBean
(
ServletRegistrationBean
.
class
);
assertThat
(
registrationBean
.
getUrlMappings
()).
contains
(
"/h2-console/*"
);
assertThat
(
registrationBean
.
getInitParameters
()).
containsEntry
(
"trace"
,
""
);
...
...
spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/web/DispatcherServletAutoConfigurationTests.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -63,7 +63,7 @@ public class DispatcherServletAutoConfigurationTests {
this
.
context
.
setServletContext
(
new
MockServletContext
());
this
.
context
.
refresh
();
assertThat
(
this
.
context
.
getBean
(
DispatcherServlet
.
class
)).
isNotNull
();
ServletRegistrationBean
registration
=
this
.
context
ServletRegistrationBean
<?>
registration
=
this
.
context
.
getBean
(
ServletRegistrationBean
.
class
);
assertThat
(
registration
.
getUrlMappings
().
toString
()).
isEqualTo
(
"[/]"
);
}
...
...
@@ -90,7 +90,7 @@ public class DispatcherServletAutoConfigurationTests {
DispatcherServletAutoConfiguration
.
class
);
this
.
context
.
setServletContext
(
new
MockServletContext
());
this
.
context
.
refresh
();
ServletRegistrationBean
registration
=
this
.
context
ServletRegistrationBean
<?>
registration
=
this
.
context
.
getBean
(
ServletRegistrationBean
.
class
);
assertThat
(
registration
.
getUrlMappings
().
toString
()).
isEqualTo
(
"[/]"
);
assertThat
(
registration
.
getServletName
()).
isEqualTo
(
"dispatcherServlet"
);
...
...
@@ -105,7 +105,7 @@ public class DispatcherServletAutoConfigurationTests {
DispatcherServletAutoConfiguration
.
class
);
this
.
context
.
setServletContext
(
new
MockServletContext
());
this
.
context
.
refresh
();
ServletRegistrationBean
registration
=
this
.
context
ServletRegistrationBean
<?>
registration
=
this
.
context
.
getBean
(
ServletRegistrationBean
.
class
);
assertThat
(
registration
.
getUrlMappings
().
toString
()).
isEqualTo
(
"[/foo]"
);
assertThat
(
registration
.
getServletName
()).
isEqualTo
(
"customDispatcher"
);
...
...
@@ -121,7 +121,7 @@ public class DispatcherServletAutoConfigurationTests {
EnvironmentTestUtils
.
addEnvironment
(
this
.
context
,
"server.servlet_path:/spring"
);
this
.
context
.
refresh
();
assertThat
(
this
.
context
.
getBean
(
DispatcherServlet
.
class
)).
isNotNull
();
ServletRegistrationBean
registration
=
this
.
context
ServletRegistrationBean
<?>
registration
=
this
.
context
.
getBean
(
ServletRegistrationBean
.
class
);
assertThat
(
registration
.
getUrlMappings
().
toString
()).
isEqualTo
(
"[/spring/*]"
);
assertThat
(
registration
.
getMultipartConfig
()).
isNull
();
...
...
@@ -134,7 +134,7 @@ public class DispatcherServletAutoConfigurationTests {
this
.
context
.
register
(
MultipartConfiguration
.
class
,
DispatcherServletAutoConfiguration
.
class
);
this
.
context
.
refresh
();
ServletRegistrationBean
registration
=
this
.
context
ServletRegistrationBean
<?>
registration
=
this
.
context
.
getBean
(
ServletRegistrationBean
.
class
);
assertThat
(
registration
.
getMultipartConfig
()).
isNotNull
();
}
...
...
@@ -217,9 +217,9 @@ public class DispatcherServletAutoConfigurationTests {
protected
static
class
CustomAutowiredRegistration
{
@Bean
public
ServletRegistrationBean
dispatcherServletRegistration
(
public
ServletRegistrationBean
<?>
dispatcherServletRegistration
(
DispatcherServlet
dispatcherServlet
)
{
ServletRegistrationBean
registration
=
new
ServletRegistrationBean
(
ServletRegistrationBean
<
DispatcherServlet
>
registration
=
new
ServletRegistrationBean
<
DispatcherServlet
>
(
dispatcherServlet
,
"/foo"
);
registration
.
setName
(
"customDispatcher"
);
return
registration
;
...
...
spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/web/EmbeddedServletContainerAutoConfigurationTests.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -218,8 +218,9 @@ public class EmbeddedServletContainerAutoConfigurationTests {
}
@Bean
(
name
=
DispatcherServletAutoConfiguration
.
DEFAULT_DISPATCHER_SERVLET_REGISTRATION_BEAN_NAME
)
public
ServletRegistrationBean
dispatcherRegistration
()
{
return
new
ServletRegistrationBean
(
dispatcherServlet
(),
"/app/*"
);
public
ServletRegistrationBean
<
DispatcherServlet
>
dispatcherRegistration
()
{
return
new
ServletRegistrationBean
<
DispatcherServlet
>(
dispatcherServlet
(),
"/app/*"
);
}
}
...
...
spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/webservices/WebServicesAutoConfigurationTests.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -66,23 +66,25 @@ public class WebServicesAutoConfigurationTests {
@Test
public
void
customPathWithTrailingSlash
()
{
load
(
WebServicesAutoConfiguration
.
class
,
"spring.webservices.path=/valid/"
);
assertThat
(
this
.
context
.
getBean
(
ServletRegistrationBean
.
class
).
getUrlMappings
())
.
contains
(
"/valid/*"
);
ServletRegistrationBean
<?>
servletRegistrationBean
=
this
.
context
.
getBean
(
ServletRegistrationBean
.
class
);
assertThat
(
servletRegistrationBean
.
getUrlMappings
()).
contains
(
"/valid/*"
);
}
@Test
public
void
customPath
()
{
load
(
WebServicesAutoConfiguration
.
class
,
"spring.webservices.path=/valid"
);
assertThat
(
this
.
context
.
getBeansOfType
(
ServletRegistrationBean
.
class
)).
hasSize
(
1
);
assertThat
(
this
.
context
.
getBean
(
ServletRegistrationBean
.
class
).
getUrlMappings
())
.
contains
(
"/valid/*"
);
ServletRegistrationBean
<?>
servletRegistrationBean
=
this
.
context
.
getBean
(
ServletRegistrationBean
.
class
);
assertThat
(
servletRegistrationBean
.
getUrlMappings
()).
contains
(
"/valid/*"
);
}
@Test
public
void
customLoadOnStartup
()
{
load
(
WebServicesAutoConfiguration
.
class
,
"spring.webservices.servlet.load-on-startup=1"
);
ServletRegistrationBean
registrationBean
=
this
.
context
ServletRegistrationBean
<?>
registrationBean
=
this
.
context
.
getBean
(
ServletRegistrationBean
.
class
);
assertThat
(
ReflectionTestUtils
.
getField
(
registrationBean
,
"loadOnStartup"
))
.
isEqualTo
(
1
);
...
...
@@ -93,7 +95,7 @@ public class WebServicesAutoConfigurationTests {
load
(
WebServicesAutoConfiguration
.
class
,
"spring.webservices.servlet.init.key1=value1"
,
"spring.webservices.servlet.init.key2=value2"
);
ServletRegistrationBean
registrationBean
=
this
.
context
ServletRegistrationBean
<?>
registrationBean
=
this
.
context
.
getBean
(
ServletRegistrationBean
.
class
);
assertThat
(
registrationBean
.
getInitParameters
()).
containsEntry
(
"key1"
,
"value1"
);
assertThat
(
registrationBean
.
getInitParameters
()).
containsEntry
(
"key2"
,
"value2"
);
...
...
spring-boot-samples/spring-boot-sample-atmosphere/src/main/java/sample/atmosphere/SampleAtmosphereApplication.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -45,10 +45,10 @@ public class SampleAtmosphereApplication {
}
@Bean
public
ServletRegistrationBean
atmosphereServlet
()
{
public
ServletRegistrationBean
<
AtmosphereServlet
>
atmosphereServlet
()
{
// Dispatcher servlet is mapped to '/home' to allow the AtmosphereServlet
// to be mapped to '/chat'
ServletRegistrationBean
registration
=
new
ServletRegistrationBean
(
ServletRegistrationBean
<
AtmosphereServlet
>
registration
=
new
ServletRegistrationBean
<
AtmosphereServlet
>
(
new
AtmosphereServlet
(),
"/chat/*"
);
registration
.
addInitParameter
(
"org.atmosphere.cpr.packages"
,
"sample"
);
registration
.
addInitParameter
(
"org.atmosphere.interceptor.HeartbeatInterceptor"
...
...
spring-boot-samples/spring-boot-sample-jersey1/src/main/java/sample/jersey1/SampleJersey1Application.java
View file @
df088636
...
...
@@ -46,8 +46,8 @@ public class SampleJersey1Application {
}
@Bean
public
FilterRegistrationBean
jersey
()
{
FilterRegistrationBean
bean
=
new
FilterRegistrationBean
();
public
FilterRegistrationBean
<
ServletContainer
>
jersey
()
{
FilterRegistrationBean
<
ServletContainer
>
bean
=
new
FilterRegistrationBean
<
ServletContainer
>
();
bean
.
setFilter
(
new
ServletContainer
());
bean
.
addInitParameter
(
"com.sun.jersey.config.property.packages"
,
"com.sun.jersey;sample.jersey1"
);
...
...
spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/web/servlet/SpringBootMockMvcBuilderCustomizer.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -109,7 +109,7 @@ public class SpringBootMockMvcBuilderCustomizer implements MockMvcBuilderCustomi
this
.
context
);
for
(
ServletContextInitializer
initializer
:
Initializers
)
{
if
(
initializer
instanceof
FilterRegistrationBean
)
{
addFilter
(
builder
,
(
FilterRegistrationBean
)
initializer
);
addFilter
(
builder
,
(
FilterRegistrationBean
<?>
)
initializer
);
}
if
(
initializer
instanceof
DelegatingFilterProxyRegistrationBean
)
{
addFilter
(
builder
,
(
DelegatingFilterProxyRegistrationBean
)
initializer
);
...
...
@@ -118,7 +118,7 @@ public class SpringBootMockMvcBuilderCustomizer implements MockMvcBuilderCustomi
}
private
void
addFilter
(
ConfigurableMockMvcBuilder
<?>
builder
,
FilterRegistrationBean
registration
)
{
FilterRegistrationBean
<?>
registration
)
{
addFilter
(
builder
,
registration
.
getFilter
(),
registration
.
getUrlPatterns
());
}
...
...
spring-boot/src/main/java/org/springframework/boot/web/servlet/AbstractFilterRegistrationBean.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -38,9 +38,10 @@ import org.springframework.util.Assert;
* Abstract base {@link ServletContextInitializer} to register {@link Filter}s in a
* Servlet 3.0+ container.
*
* @param <T> the type of {@link Filter} to register
* @author Phillip Webb
*/
abstract
class
AbstractFilterRegistrationBean
extends
RegistrationBean
{
abstract
class
AbstractFilterRegistrationBean
<
T
extends
Filter
>
extends
RegistrationBean
{
/**
* Filters that wrap the servlet request should be ordered less than or equal to this.
...
...
@@ -58,7 +59,7 @@ abstract class AbstractFilterRegistrationBean extends RegistrationBean {
private
static
final
String
[]
DEFAULT_URL_MAPPINGS
=
{
"/*"
};
private
Set
<
ServletRegistrationBean
>
servletRegistrationBeans
=
new
LinkedHashSet
<
ServletRegistrationBean
>();
private
Set
<
ServletRegistrationBean
<?>>
servletRegistrationBeans
=
new
LinkedHashSet
<
ServletRegistrationBean
<?>
>();
private
Set
<
String
>
servletNames
=
new
LinkedHashSet
<
String
>();
...
...
@@ -73,7 +74,8 @@ abstract class AbstractFilterRegistrationBean extends RegistrationBean {
* {@link ServletRegistrationBean}s.
* @param servletRegistrationBeans associate {@link ServletRegistrationBean}s
*/
AbstractFilterRegistrationBean
(
ServletRegistrationBean
...
servletRegistrationBeans
)
{
AbstractFilterRegistrationBean
(
ServletRegistrationBean
<?>...
servletRegistrationBeans
)
{
Assert
.
notNull
(
servletRegistrationBeans
,
"ServletRegistrationBeans must not be null"
);
Collections
.
addAll
(
this
.
servletRegistrationBeans
,
servletRegistrationBeans
);
...
...
@@ -84,10 +86,10 @@ abstract class AbstractFilterRegistrationBean extends RegistrationBean {
* @param servletRegistrationBeans the Servlet registration beans
*/
public
void
setServletRegistrationBeans
(
Collection
<?
extends
ServletRegistrationBean
>
servletRegistrationBeans
)
{
Collection
<?
extends
ServletRegistrationBean
<?>
>
servletRegistrationBeans
)
{
Assert
.
notNull
(
servletRegistrationBeans
,
"ServletRegistrationBeans must not be null"
);
this
.
servletRegistrationBeans
=
new
LinkedHashSet
<
ServletRegistrationBean
>(
this
.
servletRegistrationBeans
=
new
LinkedHashSet
<
ServletRegistrationBean
<?>
>(
servletRegistrationBeans
);
}
...
...
@@ -98,7 +100,7 @@ abstract class AbstractFilterRegistrationBean extends RegistrationBean {
* @see #setServletNames
* @see #setUrlPatterns
*/
public
Collection
<
ServletRegistrationBean
>
getServletRegistrationBeans
()
{
public
Collection
<
ServletRegistrationBean
<?>
>
getServletRegistrationBeans
()
{
return
this
.
servletRegistrationBeans
;
}
...
...
@@ -108,7 +110,7 @@ abstract class AbstractFilterRegistrationBean extends RegistrationBean {
* @see #setServletRegistrationBeans
*/
public
void
addServletRegistrationBeans
(
ServletRegistrationBean
...
servletRegistrationBeans
)
{
ServletRegistrationBean
<?>
...
servletRegistrationBeans
)
{
Assert
.
notNull
(
servletRegistrationBeans
,
"ServletRegistrationBeans must not be null"
);
Collections
.
addAll
(
this
.
servletRegistrationBeans
,
servletRegistrationBeans
);
...
...
@@ -235,7 +237,7 @@ abstract class AbstractFilterRegistrationBean extends RegistrationBean {
* Return the {@link Filter} to be registered.
* @return the filter
*/
public
abstract
Filter
getFilter
();
public
abstract
T
getFilter
();
/**
* Configure registration settings. Subclasses can override this method to perform
...
...
@@ -250,7 +252,7 @@ abstract class AbstractFilterRegistrationBean extends RegistrationBean {
:
NON_ASYNC_DISPATCHER_TYPES
);
}
Set
<
String
>
servletNames
=
new
LinkedHashSet
<
String
>();
for
(
ServletRegistrationBean
servletRegistrationBean
:
this
.
servletRegistrationBeans
)
{
for
(
ServletRegistrationBean
<?>
servletRegistrationBean
:
this
.
servletRegistrationBeans
)
{
servletNames
.
add
(
servletRegistrationBean
.
getServletName
());
}
servletNames
.
addAll
(
this
.
servletNames
);
...
...
spring-boot/src/main/java/org/springframework/boot/web/servlet/DelegatingFilterProxyRegistrationBean.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -51,7 +51,8 @@ import org.springframework.web.filter.DelegatingFilterProxy;
* @see FilterRegistrationBean
* @see DelegatingFilterProxy
*/
public
class
DelegatingFilterProxyRegistrationBean
extends
AbstractFilterRegistrationBean
public
class
DelegatingFilterProxyRegistrationBean
extends
AbstractFilterRegistrationBean
<
DelegatingFilterProxy
>
implements
ApplicationContextAware
{
private
ApplicationContext
applicationContext
;
...
...
@@ -66,7 +67,7 @@ public class DelegatingFilterProxyRegistrationBean extends AbstractFilterRegistr
* @param servletRegistrationBeans associate {@link ServletRegistrationBean}s
*/
public
DelegatingFilterProxyRegistrationBean
(
String
targetBeanName
,
ServletRegistrationBean
...
servletRegistrationBeans
)
{
ServletRegistrationBean
<?>
...
servletRegistrationBeans
)
{
super
(
servletRegistrationBeans
);
Assert
.
hasLength
(
targetBeanName
,
"TargetBeanName must not be null or empty"
);
this
.
targetBeanName
=
targetBeanName
;
...
...
@@ -84,7 +85,7 @@ public class DelegatingFilterProxyRegistrationBean extends AbstractFilterRegistr
}
@Override
public
Filter
getFilter
()
{
public
DelegatingFilterProxy
getFilter
()
{
return
new
DelegatingFilterProxy
(
this
.
targetBeanName
,
getWebApplicationContext
())
{
...
...
spring-boot/src/main/java/org/springframework/boot/web/servlet/FilterRegistrationBean.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -33,20 +33,22 @@ import org.springframework.util.Assert;
* URL pattern or servlets are specified the filter will be associated to '/*'. The filter
* name will be deduced if not specified.
*
* @param <T> the type of {@link Filter} to register
* @author Phillip Webb
* @since 1.4.0
* @see ServletContextInitializer
* @see ServletContext#addFilter(String, Filter)
* @see DelegatingFilterProxyRegistrationBean
*/
public
class
FilterRegistrationBean
extends
AbstractFilterRegistrationBean
{
public
class
FilterRegistrationBean
<
T
extends
Filter
>
extends
AbstractFilterRegistrationBean
<
T
>
{
/**
* Filters that wrap the servlet request should be ordered less than or equal to this.
*/
public
static
final
int
REQUEST_WRAPPER_FILTER_MAX_ORDER
=
AbstractFilterRegistrationBean
.
REQUEST_WRAPPER_FILTER_MAX_ORDER
;
private
Filter
filter
;
private
T
filter
;
/**
* Create a new {@link FilterRegistrationBean} instance.
...
...
@@ -60,15 +62,15 @@ public class FilterRegistrationBean extends AbstractFilterRegistrationBean {
* @param filter the filter to register
* @param servletRegistrationBeans associate {@link ServletRegistrationBean}s
*/
public
FilterRegistrationBean
(
Filter
filter
,
ServletRegistrationBean
...
servletRegistrationBeans
)
{
public
FilterRegistrationBean
(
T
filter
,
ServletRegistrationBean
<?>
...
servletRegistrationBeans
)
{
super
(
servletRegistrationBeans
);
Assert
.
notNull
(
filter
,
"Filter must not be null"
);
this
.
filter
=
filter
;
}
@Override
public
Filter
getFilter
()
{
public
T
getFilter
()
{
return
this
.
filter
;
}
...
...
@@ -76,7 +78,7 @@ public class FilterRegistrationBean extends AbstractFilterRegistrationBean {
* Set the filter to be registered.
* @param filter the filter
*/
public
void
setFilter
(
Filter
filter
)
{
public
void
setFilter
(
T
filter
)
{
Assert
.
notNull
(
filter
,
"Filter must not be null"
);
this
.
filter
=
filter
;
}
...
...
spring-boot/src/main/java/org/springframework/boot/web/servlet/ServletContextInitializerBeans.java
View file @
df088636
...
...
@@ -98,12 +98,12 @@ public class ServletContextInitializerBeans
private
void
addServletContextInitializerBean
(
String
beanName
,
ServletContextInitializer
initializer
,
ListableBeanFactory
beanFactory
)
{
if
(
initializer
instanceof
ServletRegistrationBean
)
{
Servlet
source
=
((
ServletRegistrationBean
)
initializer
).
getServlet
();
Servlet
source
=
((
ServletRegistrationBean
<?>
)
initializer
).
getServlet
();
addServletContextInitializerBean
(
Servlet
.
class
,
beanName
,
initializer
,
beanFactory
,
source
);
}
else
if
(
initializer
instanceof
FilterRegistrationBean
)
{
Filter
source
=
((
FilterRegistrationBean
)
initializer
).
getFilter
();
Filter
source
=
((
FilterRegistrationBean
<?>
)
initializer
).
getFilter
();
addServletContextInitializerBean
(
Filter
.
class
,
beanName
,
initializer
,
beanFactory
,
source
);
}
...
...
@@ -282,7 +282,8 @@ public class ServletContextInitializerBeans
if
(
name
.
equals
(
DISPATCHER_SERVLET_NAME
))
{
url
=
"/"
;
// always map the main dispatcherServlet to "/"
}
ServletRegistrationBean
bean
=
new
ServletRegistrationBean
(
source
,
url
);
ServletRegistrationBean
<
Servlet
>
bean
=
new
ServletRegistrationBean
<
Servlet
>(
source
,
url
);
bean
.
setMultipartConfig
(
this
.
multipartConfig
);
return
bean
;
}
...
...
@@ -298,7 +299,7 @@ public class ServletContextInitializerBeans
@Override
public
RegistrationBean
createRegistrationBean
(
String
name
,
Filter
source
,
int
totalNumberOfSourceBeans
)
{
return
new
FilterRegistrationBean
(
source
);
return
new
FilterRegistrationBean
<
Filter
>
(
source
);
}
}
...
...
spring-boot/src/main/java/org/springframework/boot/web/servlet/ServletRegistrationBean.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -46,18 +46,19 @@ import org.springframework.util.ObjectUtils;
* {@link #ServletRegistrationBean(Servlet, boolean, String...) alwaysMapUrl} is set to
* {@code false}). The servlet name will be deduced if not specified.
*
* @param <T> the type of the {@link Servlet} to register
* @author Phillip Webb
* @since 1.4.0
* @see ServletContextInitializer
* @see ServletContext#addServlet(String, Servlet)
*/
public
class
ServletRegistrationBean
extends
RegistrationBean
{
public
class
ServletRegistrationBean
<
T
extends
Servlet
>
extends
RegistrationBean
{
private
static
final
Log
logger
=
LogFactory
.
getLog
(
ServletRegistrationBean
.
class
);
private
static
final
String
[]
DEFAULT_MAPPINGS
=
{
"/*"
};
private
Servlet
servlet
;
private
T
servlet
;
private
Set
<
String
>
urlMappings
=
new
LinkedHashSet
<
String
>();
...
...
@@ -79,7 +80,7 @@ public class ServletRegistrationBean extends RegistrationBean {
* @param servlet the servlet being mapped
* @param urlMappings the URLs being mapped
*/
public
ServletRegistrationBean
(
Servlet
servlet
,
String
...
urlMappings
)
{
public
ServletRegistrationBean
(
T
servlet
,
String
...
urlMappings
)
{
this
(
servlet
,
true
,
urlMappings
);
}
...
...
@@ -90,7 +91,7 @@ public class ServletRegistrationBean extends RegistrationBean {
* @param alwaysMapUrl if omitted URL mappings should be replaced with '/*'
* @param urlMappings the URLs being mapped
*/
public
ServletRegistrationBean
(
Servlet
servlet
,
boolean
alwaysMapUrl
,
public
ServletRegistrationBean
(
T
servlet
,
boolean
alwaysMapUrl
,
String
...
urlMappings
)
{
Assert
.
notNull
(
servlet
,
"Servlet must not be null"
);
Assert
.
notNull
(
urlMappings
,
"UrlMappings must not be null"
);
...
...
@@ -103,7 +104,7 @@ public class ServletRegistrationBean extends RegistrationBean {
* Returns the servlet being registered.
* @return the servlet
*/
protected
Servlet
getServlet
()
{
protected
T
getServlet
()
{
return
this
.
servlet
;
}
...
...
@@ -111,7 +112,7 @@ public class ServletRegistrationBean extends RegistrationBean {
* Sets the servlet to be registered.
* @param servlet the servlet
*/
public
void
setServlet
(
Servlet
servlet
)
{
public
void
setServlet
(
T
servlet
)
{
Assert
.
notNull
(
servlet
,
"Servlet must not be null"
);
this
.
servlet
=
servlet
;
}
...
...
spring-boot/src/test/java/org/springframework/boot/context/embedded/AbstractEmbeddedServletContainerFactoryTests.java
View file @
df088636
...
...
@@ -226,7 +226,7 @@ public abstract class AbstractEmbeddedServletContainerFactoryTests {
public
void
startServletAndFilter
()
throws
Exception
{
AbstractEmbeddedServletContainerFactory
factory
=
getFactory
();
this
.
container
=
factory
.
getEmbeddedServletContainer
(
exampleServletRegistration
(),
new
FilterRegistrationBean
(
new
ExampleFilter
()));
new
FilterRegistrationBean
<
ExampleFilter
>
(
new
ExampleFilter
()));
this
.
container
.
start
();
assertThat
(
getResponse
(
getLocalUrl
(
"/hello"
))).
isEqualTo
(
"[Hello World]"
);
}
...
...
@@ -409,8 +409,9 @@ public abstract class AbstractEmbeddedServletContainerFactoryTests {
Ssl
ssl
=
getSsl
(
null
,
"password"
,
"classpath:test.jks"
);
ssl
.
setEnabled
(
false
);
factory
.
setSsl
(
ssl
);
this
.
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
(
new
ExampleServlet
(
true
,
false
),
"/hello"
));
this
.
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
<
ExampleServlet
>(
new
ExampleServlet
(
true
,
false
),
"/hello"
));
this
.
container
.
start
();
SSLConnectionSocketFactory
socketFactory
=
new
SSLConnectionSocketFactory
(
new
SSLContextBuilder
()
...
...
@@ -427,8 +428,9 @@ public abstract class AbstractEmbeddedServletContainerFactoryTests {
public
void
sslGetScheme
()
throws
Exception
{
// gh-2232
AbstractEmbeddedServletContainerFactory
factory
=
getFactory
();
factory
.
setSsl
(
getSsl
(
null
,
"password"
,
"src/test/resources/test.jks"
));
this
.
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
(
new
ExampleServlet
(
true
,
false
),
"/hello"
));
this
.
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
<
ExampleServlet
>(
new
ExampleServlet
(
true
,
false
),
"/hello"
));
this
.
container
.
start
();
SSLConnectionSocketFactory
socketFactory
=
new
SSLConnectionSocketFactory
(
new
SSLContextBuilder
()
...
...
@@ -445,8 +447,9 @@ public abstract class AbstractEmbeddedServletContainerFactoryTests {
public
void
serverHeaderIsDisabledByDefaultWhenUsingSsl
()
throws
Exception
{
AbstractEmbeddedServletContainerFactory
factory
=
getFactory
();
factory
.
setSsl
(
getSsl
(
null
,
"password"
,
"src/test/resources/test.jks"
));
this
.
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
(
new
ExampleServlet
(
true
,
false
),
"/hello"
));
this
.
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
<
ExampleServlet
>(
new
ExampleServlet
(
true
,
false
),
"/hello"
));
this
.
container
.
start
();
SSLConnectionSocketFactory
socketFactory
=
new
SSLConnectionSocketFactory
(
new
SSLContextBuilder
()
...
...
@@ -463,8 +466,9 @@ public abstract class AbstractEmbeddedServletContainerFactoryTests {
AbstractEmbeddedServletContainerFactory
factory
=
getFactory
();
factory
.
setServerHeader
(
"MyServer"
);
factory
.
setSsl
(
getSsl
(
null
,
"password"
,
"src/test/resources/test.jks"
));
this
.
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
(
new
ExampleServlet
(
true
,
false
),
"/hello"
));
this
.
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
<
ExampleServlet
>(
new
ExampleServlet
(
true
,
false
),
"/hello"
));
this
.
container
.
start
();
SSLConnectionSocketFactory
socketFactory
=
new
SSLConnectionSocketFactory
(
new
SSLContextBuilder
()
...
...
@@ -685,8 +689,9 @@ public abstract class AbstractEmbeddedServletContainerFactoryTests {
AbstractEmbeddedServletContainerFactory
factory
=
getFactory
();
factory
.
setSsl
(
getSsl
(
null
,
"password"
,
"src/test/resources/test.jks"
,
null
,
protocols
,
ciphers
));
this
.
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
(
new
ExampleServlet
(
true
,
false
),
"/hello"
));
this
.
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
<
ExampleServlet
>(
new
ExampleServlet
(
true
,
false
),
"/hello"
));
this
.
container
.
start
();
SSLConnectionSocketFactory
socketFactory
=
new
SSLConnectionSocketFactory
(
...
...
@@ -806,8 +811,9 @@ public abstract class AbstractEmbeddedServletContainerFactoryTests {
Compression
compression
=
new
Compression
();
compression
.
setEnabled
(
true
);
factory
.
setCompression
(
compression
);
this
.
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
(
new
ExampleServlet
(
false
,
true
),
"/hello"
));
this
.
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
<
ExampleServlet
>(
new
ExampleServlet
(
false
,
true
),
"/hello"
));
this
.
container
.
start
();
TestGzipInputStreamFactory
inputStreamFactory
=
new
TestGzipInputStreamFactory
();
Map
<
String
,
InputStreamFactory
>
contentDecoderMap
=
Collections
...
...
@@ -1117,8 +1123,9 @@ public abstract class AbstractEmbeddedServletContainerFactoryTests {
protected
void
assertForwardHeaderIsUsed
(
EmbeddedServletContainerFactory
factory
)
throws
IOException
,
URISyntaxException
{
this
.
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
(
new
ExampleServlet
(
true
,
false
),
"/hello"
));
this
.
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
<
ExampleServlet
>(
new
ExampleServlet
(
true
,
false
),
"/hello"
));
this
.
container
.
start
();
assertThat
(
getResponse
(
getLocalUrl
(
"/hello"
),
"X-Forwarded-For:140.211.11.130"
))
.
contains
(
"remoteaddr=140.211.11.130"
);
...
...
@@ -1130,39 +1137,43 @@ public abstract class AbstractEmbeddedServletContainerFactoryTests {
throws
Exception
;
protected
ServletContextInitializer
exampleServletRegistration
()
{
return
new
ServletRegistrationBean
(
new
ExampleServlet
(),
"/hello"
);
return
new
ServletRegistrationBean
<
ExampleServlet
>(
new
ExampleServlet
(),
"/hello"
);
}
@SuppressWarnings
(
"serial"
)
private
ServletContextInitializer
errorServletRegistration
()
{
ServletRegistrationBean
bean
=
new
ServletRegistrationBean
(
new
ExampleServlet
()
{
ServletRegistrationBean
<
ExampleServlet
>
bean
=
new
ServletRegistrationBean
<
ExampleServlet
>(
new
ExampleServlet
()
{
@Override
public
void
service
(
ServletRequest
request
,
ServletResponse
response
)
throws
ServletException
,
IOException
{
throw
new
RuntimeException
(
"Planned"
);
}
@Override
public
void
service
(
ServletRequest
request
,
ServletResponse
response
)
throws
ServletException
,
IOException
{
throw
new
RuntimeException
(
"Planned"
);
}
},
"/bang"
);
},
"/bang"
);
bean
.
setName
(
"error"
);
return
bean
;
}
protected
final
ServletContextInitializer
sessionServletRegistration
()
{
ServletRegistrationBean
bean
=
new
ServletRegistrationBean
(
new
ExampleServlet
()
{
ServletRegistrationBean
<
ExampleServlet
>
bean
=
new
ServletRegistrationBean
<
ExampleServlet
>(
new
ExampleServlet
()
{
@Override
public
void
service
(
ServletRequest
request
,
ServletResponse
response
)
throws
ServletException
,
IOException
{
HttpSession
session
=
((
HttpServletRequest
)
request
).
getSession
(
true
);
long
value
=
System
.
currentTimeMillis
();
Object
existing
=
session
.
getAttribute
(
"boot"
);
session
.
setAttribute
(
"boot"
,
value
);
PrintWriter
writer
=
response
.
getWriter
();
writer
.
append
(
String
.
valueOf
(
existing
)
+
":"
+
value
);
}
@Override
public
void
service
(
ServletRequest
request
,
ServletResponse
response
)
throws
ServletException
,
IOException
{
HttpSession
session
=
((
HttpServletRequest
)
request
)
.
getSession
(
true
);
long
value
=
System
.
currentTimeMillis
();
Object
existing
=
session
.
getAttribute
(
"boot"
);
session
.
setAttribute
(
"boot"
,
value
);
PrintWriter
writer
=
response
.
getWriter
();
writer
.
append
(
String
.
valueOf
(
existing
)
+
":"
+
value
);
}
},
"/session"
);
},
"/session"
);
bean
.
setName
(
"session"
);
return
bean
;
}
...
...
spring-boot/src/test/java/org/springframework/boot/context/embedded/EmbeddedServletContainerMvcIntegrationTests.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -97,8 +97,8 @@ public class EmbeddedServletContainerMvcIntegrationTests {
String
resourcePath
)
throws
Exception
{
SimpleClientHttpRequestFactory
clientHttpRequestFactory
=
new
SimpleClientHttpRequestFactory
();
ClientHttpRequest
request
=
clientHttpRequestFactory
.
createRequest
(
new
URI
(
"http://localhost:"
+
context
.
getEmbeddedWebServer
().
getPort
()
+
resourcePath
),
new
URI
(
"http://localhost:"
+
context
.
getEmbeddedWebServer
().
getPort
()
+
resourcePath
),
HttpMethod
.
GET
);
ClientHttpResponse
response
=
request
.
execute
();
try
{
...
...
@@ -190,8 +190,8 @@ public class EmbeddedServletContainerMvcIntegrationTests {
}
@Bean
public
ServletRegistrationBean
dispatcherRegistration
()
{
ServletRegistrationBean
registration
=
new
ServletRegistrationBean
(
public
ServletRegistrationBean
<
DispatcherServlet
>
dispatcherRegistration
()
{
ServletRegistrationBean
<
DispatcherServlet
>
registration
=
new
ServletRegistrationBean
<
DispatcherServlet
>
(
dispatcherServlet
());
registration
.
addUrlMappings
(
"/spring/*"
);
return
registration
;
...
...
spring-boot/src/test/java/org/springframework/boot/context/embedded/EmbeddedWebApplicationContextTests.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -232,7 +232,7 @@ public class EmbeddedWebApplicationContextTests {
addEmbeddedServletContainerFactoryBean
();
OrderedFilter
filter
=
new
OrderedFilter
();
this
.
context
.
registerBeanDefinition
(
"filterBean"
,
beanDefinition
(
filter
));
FilterRegistrationBean
registration
=
new
FilterRegistrationBean
();
FilterRegistrationBean
<
Filter
>
registration
=
new
FilterRegistrationBean
<
Filter
>
();
registration
.
setFilter
(
mock
(
Filter
.
class
));
registration
.
setOrder
(
100
);
this
.
context
.
registerBeanDefinition
(
"filterRegistrationBean"
,
...
...
@@ -391,8 +391,8 @@ public class EmbeddedWebApplicationContextTests {
addEmbeddedServletContainerFactoryBean
();
Servlet
servlet
=
mock
(
Servlet
.
class
);
Filter
filter
=
mock
(
Filter
.
class
);
ServletRegistrationBean
initializer
=
new
ServletRegistrationBean
(
servlet
,
"/foo"
);
ServletRegistrationBean
<
Servlet
>
initializer
=
new
ServletRegistrationBean
<
Servlet
>(
servlet
,
"/foo"
);
this
.
context
.
registerBeanDefinition
(
"initializerBean"
,
beanDefinition
(
initializer
));
this
.
context
.
registerBeanDefinition
(
"servletBean"
,
beanDefinition
(
servlet
));
...
...
@@ -408,7 +408,8 @@ public class EmbeddedWebApplicationContextTests {
public
void
filterRegistrationBeansSkipsRegisteredFilters
()
throws
Exception
{
addEmbeddedServletContainerFactoryBean
();
Filter
filter
=
mock
(
Filter
.
class
);
FilterRegistrationBean
initializer
=
new
FilterRegistrationBean
(
filter
);
FilterRegistrationBean
<
Filter
>
initializer
=
new
FilterRegistrationBean
<
Filter
>(
filter
);
this
.
context
.
registerBeanDefinition
(
"initializerBean"
,
beanDefinition
(
initializer
));
this
.
context
.
registerBeanDefinition
(
"filterBean"
,
beanDefinition
(
filter
));
...
...
spring-boot/src/test/java/org/springframework/boot/context/embedded/jetty/JettyEmbeddedServletContainerFactoryTests.java
View file @
df088636
...
...
@@ -291,7 +291,7 @@ public class JettyEmbeddedServletContainerFactoryTests
}
factory
.
setCompression
(
compression
);
this
.
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
(
new
HttpServlet
()
{
new
ServletRegistrationBean
<
HttpServlet
>
(
new
HttpServlet
()
{
@Override
protected
void
doGet
(
HttpServletRequest
req
,
HttpServletResponse
resp
)
throws
ServletException
,
IOException
{
...
...
spring-boot/src/test/java/org/springframework/boot/context/embedded/undertow/UndertowEmbeddedServletContainerFactoryTests.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -73,7 +73,8 @@ public class UndertowEmbeddedServletContainerFactoryTests
AbstractEmbeddedServletContainerFactory
factory
=
getFactory
();
factory
.
addErrorPages
(
new
ErrorPage
(
HttpStatus
.
NOT_FOUND
,
"/hello"
));
this
.
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
(
new
ExampleServlet
(),
"/hello"
));
new
ServletRegistrationBean
<
ExampleServlet
>(
new
ExampleServlet
(),
"/hello"
));
this
.
container
.
start
();
assertThat
(
getResponse
(
getLocalUrl
(
"/hello"
))).
isEqualTo
(
"Hello World"
);
assertThat
(
getResponse
(
getLocalUrl
(
"/not-found"
))).
isEqualTo
(
"Hello World"
);
...
...
@@ -199,7 +200,8 @@ public class UndertowEmbeddedServletContainerFactoryTests
factory
.
setAccessLogDirectory
(
accessLogDirectory
);
assertThat
(
accessLogDirectory
.
listFiles
()).
isEmpty
();
this
.
container
=
factory
.
getEmbeddedServletContainer
(
new
ServletRegistrationBean
(
new
ExampleServlet
(),
"/hello"
));
new
ServletRegistrationBean
<
ExampleServlet
>(
new
ExampleServlet
(),
"/hello"
));
this
.
container
.
start
();
assertThat
(
getResponse
(
getLocalUrl
(
"/hello"
))).
isEqualTo
(
"Hello World"
);
File
accessLog
=
new
File
(
accessLogDirectory
,
expectedFile
);
...
...
spring-boot/src/test/java/org/springframework/boot/web/servlet/AbstractFilterRegistrationBeanTests.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -26,6 +26,7 @@ import java.util.Map;
import
javax.servlet.DispatcherType
;
import
javax.servlet.Filter
;
import
javax.servlet.FilterRegistration
;
import
javax.servlet.Servlet
;
import
javax.servlet.ServletContext
;
import
org.junit.Before
;
...
...
@@ -74,7 +75,7 @@ public abstract class AbstractFilterRegistrationBeanTests {
@Test
public
void
startupWithDefaults
()
throws
Exception
{
AbstractFilterRegistrationBean
bean
=
createFilterRegistrationBean
();
AbstractFilterRegistrationBean
<?>
bean
=
createFilterRegistrationBean
();
bean
.
onStartup
(
this
.
servletContext
);
verify
(
this
.
servletContext
).
addFilter
(
eq
(
"mockFilter"
),
getExpectedFilter
());
verify
(
this
.
registration
).
setAsyncSupported
(
true
);
...
...
@@ -84,7 +85,7 @@ public abstract class AbstractFilterRegistrationBeanTests {
@Test
public
void
startupWithSpecifiedValues
()
throws
Exception
{
AbstractFilterRegistrationBean
bean
=
createFilterRegistrationBean
();
AbstractFilterRegistrationBean
<?>
bean
=
createFilterRegistrationBean
();
bean
.
setName
(
"test"
);
bean
.
setAsyncSupported
(
false
);
bean
.
setInitParameters
(
Collections
.
singletonMap
(
"a"
,
"b"
));
...
...
@@ -112,7 +113,7 @@ public abstract class AbstractFilterRegistrationBeanTests {
@Test
public
void
specificName
()
throws
Exception
{
AbstractFilterRegistrationBean
bean
=
createFilterRegistrationBean
();
AbstractFilterRegistrationBean
<?>
bean
=
createFilterRegistrationBean
();
bean
.
setName
(
"specificName"
);
bean
.
onStartup
(
this
.
servletContext
);
verify
(
this
.
servletContext
).
addFilter
(
eq
(
"specificName"
),
getExpectedFilter
());
...
...
@@ -120,14 +121,14 @@ public abstract class AbstractFilterRegistrationBeanTests {
@Test
public
void
deducedName
()
throws
Exception
{
AbstractFilterRegistrationBean
bean
=
createFilterRegistrationBean
();
AbstractFilterRegistrationBean
<?>
bean
=
createFilterRegistrationBean
();
bean
.
onStartup
(
this
.
servletContext
);
verify
(
this
.
servletContext
).
addFilter
(
eq
(
"mockFilter"
),
getExpectedFilter
());
}
@Test
public
void
disable
()
throws
Exception
{
AbstractFilterRegistrationBean
bean
=
createFilterRegistrationBean
();
AbstractFilterRegistrationBean
<?>
bean
=
createFilterRegistrationBean
();
bean
.
setEnabled
(
false
);
bean
.
onStartup
(
this
.
servletContext
);
verify
(
this
.
servletContext
,
times
(
0
)).
addFilter
(
eq
(
"mockFilter"
),
...
...
@@ -136,7 +137,7 @@ public abstract class AbstractFilterRegistrationBeanTests {
@Test
public
void
setServletRegistrationBeanMustNotBeNull
()
throws
Exception
{
AbstractFilterRegistrationBean
bean
=
createFilterRegistrationBean
();
AbstractFilterRegistrationBean
<?>
bean
=
createFilterRegistrationBean
();
this
.
thrown
.
expect
(
IllegalArgumentException
.
class
);
this
.
thrown
.
expectMessage
(
"ServletRegistrationBeans must not be null"
);
bean
.
setServletRegistrationBeans
(
null
);
...
...
@@ -144,7 +145,7 @@ public abstract class AbstractFilterRegistrationBeanTests {
@Test
public
void
addServletRegistrationBeanMustNotBeNull
()
throws
Exception
{
AbstractFilterRegistrationBean
bean
=
createFilterRegistrationBean
();
AbstractFilterRegistrationBean
<?>
bean
=
createFilterRegistrationBean
();
this
.
thrown
.
expect
(
IllegalArgumentException
.
class
);
this
.
thrown
.
expectMessage
(
"ServletRegistrationBeans must not be null"
);
bean
.
addServletRegistrationBeans
((
ServletRegistrationBean
[])
null
);
...
...
@@ -152,9 +153,9 @@ public abstract class AbstractFilterRegistrationBeanTests {
@Test
public
void
setServletRegistrationBeanReplacesValue
()
throws
Exception
{
AbstractFilterRegistrationBean
bean
=
createFilterRegistrationBean
(
AbstractFilterRegistrationBean
<?>
bean
=
createFilterRegistrationBean
(
mockServletRegistration
(
"a"
));
bean
.
setServletRegistrationBeans
(
new
LinkedHashSet
<
ServletRegistrationBean
>(
bean
.
setServletRegistrationBeans
(
new
LinkedHashSet
<
ServletRegistrationBean
<?>
>(
Arrays
.
asList
(
mockServletRegistration
(
"b"
))));
bean
.
onStartup
(
this
.
servletContext
);
verify
(
this
.
registration
).
addMappingForServletNames
(
ASYNC_DISPATCHER_TYPES
,
false
,
...
...
@@ -163,7 +164,7 @@ public abstract class AbstractFilterRegistrationBeanTests {
@Test
public
void
modifyInitParameters
()
throws
Exception
{
AbstractFilterRegistrationBean
bean
=
createFilterRegistrationBean
();
AbstractFilterRegistrationBean
<?>
bean
=
createFilterRegistrationBean
();
bean
.
addInitParameter
(
"a"
,
"b"
);
bean
.
getInitParameters
().
put
(
"a"
,
"c"
);
bean
.
onStartup
(
this
.
servletContext
);
...
...
@@ -172,7 +173,7 @@ public abstract class AbstractFilterRegistrationBeanTests {
@Test
public
void
setUrlPatternMustNotBeNull
()
throws
Exception
{
AbstractFilterRegistrationBean
bean
=
createFilterRegistrationBean
();
AbstractFilterRegistrationBean
<?>
bean
=
createFilterRegistrationBean
();
this
.
thrown
.
expect
(
IllegalArgumentException
.
class
);
this
.
thrown
.
expectMessage
(
"UrlPatterns must not be null"
);
bean
.
setUrlPatterns
(
null
);
...
...
@@ -180,7 +181,7 @@ public abstract class AbstractFilterRegistrationBeanTests {
@Test
public
void
addUrlPatternMustNotBeNull
()
throws
Exception
{
AbstractFilterRegistrationBean
bean
=
createFilterRegistrationBean
();
AbstractFilterRegistrationBean
<?>
bean
=
createFilterRegistrationBean
();
this
.
thrown
.
expect
(
IllegalArgumentException
.
class
);
this
.
thrown
.
expectMessage
(
"UrlPatterns must not be null"
);
bean
.
addUrlPatterns
((
String
[])
null
);
...
...
@@ -188,7 +189,7 @@ public abstract class AbstractFilterRegistrationBeanTests {
@Test
public
void
setServletNameMustNotBeNull
()
throws
Exception
{
AbstractFilterRegistrationBean
bean
=
createFilterRegistrationBean
();
AbstractFilterRegistrationBean
<?>
bean
=
createFilterRegistrationBean
();
this
.
thrown
.
expect
(
IllegalArgumentException
.
class
);
this
.
thrown
.
expectMessage
(
"ServletNames must not be null"
);
bean
.
setServletNames
(
null
);
...
...
@@ -196,7 +197,7 @@ public abstract class AbstractFilterRegistrationBeanTests {
@Test
public
void
addServletNameMustNotBeNull
()
throws
Exception
{
AbstractFilterRegistrationBean
bean
=
createFilterRegistrationBean
();
AbstractFilterRegistrationBean
<?>
bean
=
createFilterRegistrationBean
();
this
.
thrown
.
expect
(
IllegalArgumentException
.
class
);
this
.
thrown
.
expectMessage
(
"ServletNames must not be null"
);
bean
.
addServletNames
((
String
[])
null
);
...
...
@@ -204,7 +205,7 @@ public abstract class AbstractFilterRegistrationBeanTests {
@Test
public
void
withSpecificDispatcherTypes
()
throws
Exception
{
AbstractFilterRegistrationBean
bean
=
createFilterRegistrationBean
();
AbstractFilterRegistrationBean
<?>
bean
=
createFilterRegistrationBean
();
bean
.
setDispatcherTypes
(
DispatcherType
.
INCLUDE
,
DispatcherType
.
FORWARD
);
bean
.
onStartup
(
this
.
servletContext
);
verify
(
this
.
registration
).
addMappingForUrlPatterns
(
...
...
@@ -213,7 +214,7 @@ public abstract class AbstractFilterRegistrationBeanTests {
@Test
public
void
withSpecificDispatcherTypesEnumSet
()
throws
Exception
{
AbstractFilterRegistrationBean
bean
=
createFilterRegistrationBean
();
AbstractFilterRegistrationBean
<?>
bean
=
createFilterRegistrationBean
();
EnumSet
<
DispatcherType
>
types
=
EnumSet
.
of
(
DispatcherType
.
INCLUDE
,
DispatcherType
.
FORWARD
);
bean
.
setDispatcherTypes
(
types
);
...
...
@@ -223,11 +224,11 @@ public abstract class AbstractFilterRegistrationBeanTests {
protected
abstract
Filter
getExpectedFilter
();
protected
abstract
AbstractFilterRegistrationBean
createFilterRegistrationBean
(
ServletRegistrationBean
...
servletRegistrationBeans
);
protected
abstract
AbstractFilterRegistrationBean
<?>
createFilterRegistrationBean
(
ServletRegistrationBean
<?>
...
servletRegistrationBeans
);
protected
final
ServletRegistrationBean
mockServletRegistration
(
String
name
)
{
ServletRegistrationBean
bean
=
new
ServletRegistrationBean
();
protected
final
ServletRegistrationBean
<?>
mockServletRegistration
(
String
name
)
{
ServletRegistrationBean
<?>
bean
=
new
ServletRegistrationBean
<
Servlet
>
();
bean
.
setName
(
name
);
return
bean
;
}
...
...
spring-boot/src/test/java/org/springframework/boot/web/servlet/DelegatingFilterProxyRegistrationBeanTests.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -75,7 +75,7 @@ public class DelegatingFilterProxyRegistrationBeanTests
@Test
public
void
getFilterUsesDelegatingFilterProxy
()
throws
Exception
{
AbstractFilter
RegistrationBean
registrationBean
=
createFilterRegistrationBean
();
DelegatingFilterProxy
RegistrationBean
registrationBean
=
createFilterRegistrationBean
();
Filter
filter
=
registrationBean
.
getFilter
();
assertThat
(
filter
).
isInstanceOf
(
DelegatingFilterProxy
.
class
);
assertThat
(
ReflectionTestUtils
.
getField
(
filter
,
"webApplicationContext"
))
...
...
@@ -88,7 +88,7 @@ public class DelegatingFilterProxyRegistrationBeanTests
public
void
initShouldNotCauseEarlyInitialization
()
throws
Exception
{
this
.
applicationContext
.
registerBeanDefinition
(
"mockFilter"
,
new
RootBeanDefinition
(
MockFilter
.
class
));
AbstractFilter
RegistrationBean
registrationBean
=
createFilterRegistrationBean
();
DelegatingFilterProxy
RegistrationBean
registrationBean
=
createFilterRegistrationBean
();
Filter
filter
=
registrationBean
.
getFilter
();
filter
.
init
(
new
MockFilterConfig
());
assertThat
(
mockFilterInitialized
.
get
()).
isNull
();
...
...
@@ -106,8 +106,8 @@ public class DelegatingFilterProxyRegistrationBeanTests
}
@Override
protected
AbstractFilter
RegistrationBean
createFilterRegistrationBean
(
ServletRegistrationBean
...
servletRegistrationBeans
)
{
protected
DelegatingFilterProxy
RegistrationBean
createFilterRegistrationBean
(
ServletRegistrationBean
<?>
...
servletRegistrationBeans
)
{
DelegatingFilterProxyRegistrationBean
bean
=
new
DelegatingFilterProxyRegistrationBean
(
"mockFilter"
,
servletRegistrationBeans
);
bean
.
setApplicationContext
(
this
.
applicationContext
);
...
...
spring-boot/src/test/java/org/springframework/boot/web/servlet/FilterRegistrationBeanTests.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -36,7 +36,7 @@ public class FilterRegistrationBeanTests extends AbstractFilterRegistrationBeanT
@Test
public
void
setFilter
()
throws
Exception
{
FilterRegistrationBean
bean
=
new
FilterRegistrationBean
();
FilterRegistrationBean
<
Filter
>
bean
=
new
FilterRegistrationBean
<
Filter
>
();
bean
.
setFilter
(
this
.
filter
);
bean
.
onStartup
(
this
.
servletContext
);
verify
(
this
.
servletContext
).
addFilter
(
"mockFilter"
,
this
.
filter
);
...
...
@@ -44,7 +44,7 @@ public class FilterRegistrationBeanTests extends AbstractFilterRegistrationBeanT
@Test
public
void
setFilterMustNotBeNull
()
throws
Exception
{
FilterRegistrationBean
bean
=
new
FilterRegistrationBean
();
FilterRegistrationBean
<
Filter
>
bean
=
new
FilterRegistrationBean
<
Filter
>
();
this
.
thrown
.
expect
(
IllegalArgumentException
.
class
);
this
.
thrown
.
expectMessage
(
"Filter must not be null"
);
bean
.
onStartup
(
this
.
servletContext
);
...
...
@@ -54,20 +54,22 @@ public class FilterRegistrationBeanTests extends AbstractFilterRegistrationBeanT
public
void
constructFilterMustNotBeNull
()
throws
Exception
{
this
.
thrown
.
expect
(
IllegalArgumentException
.
class
);
this
.
thrown
.
expectMessage
(
"Filter must not be null"
);
new
FilterRegistrationBean
(
null
);
new
FilterRegistrationBean
<
Filter
>
(
null
);
}
@Test
public
void
createServletRegistrationBeanMustNotBeNull
()
throws
Exception
{
this
.
thrown
.
expect
(
IllegalArgumentException
.
class
);
this
.
thrown
.
expectMessage
(
"ServletRegistrationBeans must not be null"
);
new
FilterRegistrationBean
(
this
.
filter
,
(
ServletRegistrationBean
[])
null
);
new
FilterRegistrationBean
<
MockFilter
>(
this
.
filter
,
(
ServletRegistrationBean
[])
null
);
}
@Override
protected
AbstractFilterRegistrationBean
createFilterRegistrationBean
(
ServletRegistrationBean
...
servletRegistrationBeans
)
{
return
new
FilterRegistrationBean
(
this
.
filter
,
servletRegistrationBeans
);
protected
AbstractFilterRegistrationBean
<
MockFilter
>
createFilterRegistrationBean
(
ServletRegistrationBean
<?>...
servletRegistrationBeans
)
{
return
new
FilterRegistrationBean
<
MockFilter
>(
this
.
filter
,
servletRegistrationBeans
);
}
@Override
...
...
spring-boot/src/test/java/org/springframework/boot/web/servlet/ServletComponentScanIntegrationTests.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -67,9 +67,10 @@ public class ServletComponentScanIntegrationTests {
this
.
context
.
register
(
TestConfiguration
.
class
);
new
ServerPortInfoApplicationContextInitializer
().
initialize
(
this
.
context
);
this
.
context
.
refresh
();
@SuppressWarnings
(
"rawtypes"
)
Map
<
String
,
ServletRegistrationBean
>
beans
=
this
.
context
.
getBeansOfType
(
ServletRegistrationBean
.
class
);
ServletRegistrationBean
servletRegistrationBean
=
beans
ServletRegistrationBean
<?>
servletRegistrationBean
=
beans
.
get
(
TestMultipartServlet
.
class
.
getName
());
assertThat
(
servletRegistrationBean
).
isNotNull
();
MultipartConfigElement
multipartConfig
=
servletRegistrationBean
...
...
spring-boot/src/test/java/org/springframework/boot/web/servlet/ServletRegistrationBeanTests.java
View file @
df088636
/*
* Copyright 2012-201
6
the original author or authors.
* Copyright 2012-201
7
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.
...
...
@@ -76,7 +76,8 @@ public class ServletRegistrationBeanTests {
@Test
public
void
startupWithDefaults
()
throws
Exception
{
ServletRegistrationBean
bean
=
new
ServletRegistrationBean
(
this
.
servlet
);
ServletRegistrationBean
<
MockServlet
>
bean
=
new
ServletRegistrationBean
<
MockServlet
>(
this
.
servlet
);
bean
.
onStartup
(
this
.
servletContext
);
verify
(
this
.
servletContext
).
addServlet
(
"mockServlet"
,
this
.
servlet
);
verify
(
this
.
registration
).
setAsyncSupported
(
true
);
...
...
@@ -85,7 +86,8 @@ public class ServletRegistrationBeanTests {
@Test
public
void
startupWithDoubleRegistration
()
throws
Exception
{
ServletRegistrationBean
bean
=
new
ServletRegistrationBean
(
this
.
servlet
);
ServletRegistrationBean
<
MockServlet
>
bean
=
new
ServletRegistrationBean
<
MockServlet
>(
this
.
servlet
);
given
(
this
.
servletContext
.
addServlet
(
anyString
(),
(
Servlet
)
any
()))
.
willReturn
(
null
);
bean
.
onStartup
(
this
.
servletContext
);
...
...
@@ -95,7 +97,7 @@ public class ServletRegistrationBeanTests {
@Test
public
void
startupWithSpecifiedValues
()
throws
Exception
{
ServletRegistrationBean
bean
=
new
ServletRegistrationBean
();
ServletRegistrationBean
<
MockServlet
>
bean
=
new
ServletRegistrationBean
<
MockServlet
>
();
bean
.
setName
(
"test"
);
bean
.
setServlet
(
this
.
servlet
);
bean
.
setAsyncSupported
(
false
);
...
...
@@ -117,7 +119,7 @@ public class ServletRegistrationBeanTests {
@Test
public
void
specificName
()
throws
Exception
{
ServletRegistrationBean
bean
=
new
ServletRegistrationBean
();
ServletRegistrationBean
<
MockServlet
>
bean
=
new
ServletRegistrationBean
<
MockServlet
>
();
bean
.
setName
(
"specificName"
);
bean
.
setServlet
(
this
.
servlet
);
bean
.
onStartup
(
this
.
servletContext
);
...
...
@@ -126,7 +128,7 @@ public class ServletRegistrationBeanTests {
@Test
public
void
deducedName
()
throws
Exception
{
ServletRegistrationBean
bean
=
new
ServletRegistrationBean
();
ServletRegistrationBean
<
MockServlet
>
bean
=
new
ServletRegistrationBean
<
MockServlet
>
();
bean
.
setServlet
(
this
.
servlet
);
bean
.
onStartup
(
this
.
servletContext
);
verify
(
this
.
servletContext
).
addServlet
(
"mockServlet"
,
this
.
servlet
);
...
...
@@ -134,7 +136,7 @@ public class ServletRegistrationBeanTests {
@Test
public
void
disable
()
throws
Exception
{
ServletRegistrationBean
bean
=
new
ServletRegistrationBean
();
ServletRegistrationBean
<
MockServlet
>
bean
=
new
ServletRegistrationBean
<
MockServlet
>
();
bean
.
setServlet
(
this
.
servlet
);
bean
.
setEnabled
(
false
);
bean
.
onStartup
(
this
.
servletContext
);
...
...
@@ -143,7 +145,7 @@ public class ServletRegistrationBeanTests {
@Test
public
void
setServletMustNotBeNull
()
throws
Exception
{
ServletRegistrationBean
bean
=
new
ServletRegistrationBean
();
ServletRegistrationBean
<
MockServlet
>
bean
=
new
ServletRegistrationBean
<
MockServlet
>
();
this
.
thrown
.
expect
(
IllegalArgumentException
.
class
);
this
.
thrown
.
expectMessage
(
"Servlet must not be null"
);
bean
.
onStartup
(
this
.
servletContext
);
...
...
@@ -153,12 +155,13 @@ public class ServletRegistrationBeanTests {
public
void
createServletMustNotBeNull
()
throws
Exception
{
this
.
thrown
.
expect
(
IllegalArgumentException
.
class
);
this
.
thrown
.
expectMessage
(
"Servlet must not be null"
);
new
ServletRegistrationBean
(
null
);
new
ServletRegistrationBean
<
MockServlet
>
(
null
);
}
@Test
public
void
setMappingMustNotBeNull
()
throws
Exception
{
ServletRegistrationBean
bean
=
new
ServletRegistrationBean
(
this
.
servlet
);
ServletRegistrationBean
<
MockServlet
>
bean
=
new
ServletRegistrationBean
<
MockServlet
>(
this
.
servlet
);
this
.
thrown
.
expect
(
IllegalArgumentException
.
class
);
this
.
thrown
.
expectMessage
(
"UrlMappings must not be null"
);
bean
.
setUrlMappings
(
null
);
...
...
@@ -168,12 +171,13 @@ public class ServletRegistrationBeanTests {
public
void
createMappingMustNotBeNull
()
throws
Exception
{
this
.
thrown
.
expect
(
IllegalArgumentException
.
class
);
this
.
thrown
.
expectMessage
(
"UrlMappings must not be null"
);
new
ServletRegistrationBean
(
this
.
servlet
,
(
String
[])
null
);
new
ServletRegistrationBean
<
MockServlet
>
(
this
.
servlet
,
(
String
[])
null
);
}
@Test
public
void
addMappingMustNotBeNull
()
throws
Exception
{
ServletRegistrationBean
bean
=
new
ServletRegistrationBean
(
this
.
servlet
);
ServletRegistrationBean
<
MockServlet
>
bean
=
new
ServletRegistrationBean
<
MockServlet
>(
this
.
servlet
);
this
.
thrown
.
expect
(
IllegalArgumentException
.
class
);
this
.
thrown
.
expectMessage
(
"UrlMappings must not be null"
);
bean
.
addUrlMappings
((
String
[])
null
);
...
...
@@ -181,8 +185,8 @@ public class ServletRegistrationBeanTests {
@Test
public
void
setMappingReplacesValue
()
throws
Exception
{
ServletRegistrationBean
bean
=
new
ServletRegistrationBean
(
this
.
servlet
,
"/a"
,
"/b"
);
ServletRegistrationBean
<
MockServlet
>
bean
=
new
ServletRegistrationBean
<
MockServlet
>(
this
.
servlet
,
"/a"
,
"/b"
);
bean
.
setUrlMappings
(
new
LinkedHashSet
<
String
>(
Arrays
.
asList
(
"/c"
,
"/d"
)));
bean
.
onStartup
(
this
.
servletContext
);
verify
(
this
.
registration
).
addMapping
(
"/c"
,
"/d"
);
...
...
@@ -190,8 +194,8 @@ public class ServletRegistrationBeanTests {
@Test
public
void
modifyInitParameters
()
throws
Exception
{
ServletRegistrationBean
bean
=
new
ServletRegistrationBean
(
this
.
servlet
,
"/a"
,
"/b"
);
ServletRegistrationBean
<
MockServlet
>
bean
=
new
ServletRegistrationBean
<
MockServlet
>(
this
.
servlet
,
"/a"
,
"/b"
);
bean
.
addInitParameter
(
"a"
,
"b"
);
bean
.
getInitParameters
().
put
(
"a"
,
"c"
);
bean
.
onStartup
(
this
.
servletContext
);
...
...
@@ -200,7 +204,8 @@ public class ServletRegistrationBeanTests {
@Test
public
void
withoutDefaultMappings
()
throws
Exception
{
ServletRegistrationBean
bean
=
new
ServletRegistrationBean
(
this
.
servlet
,
false
);
ServletRegistrationBean
<
MockServlet
>
bean
=
new
ServletRegistrationBean
<
MockServlet
>(
this
.
servlet
,
false
);
bean
.
onStartup
(
this
.
servletContext
);
verify
(
this
.
registration
,
never
()).
addMapping
((
String
[])
any
());
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment