Skip to content

Commit 3f9ca68

Browse files
author
Phillip Webb
committed
Tweak ConfigurableEmbeddedServletContainerFactory
Update ConfigurableEmbeddedServletContainerFactory to no longer directly extend EmbeddedServletContainerFactory.
1 parent 9c4dc0c commit 3f9ca68

File tree

5 files changed

+26
-24
lines changed

5 files changed

+26
-24
lines changed

spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/ServerPropertiesAutoConfiguration.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,8 @@ public void setApplicationContext(ApplicationContext applicationContext)
6060

6161
@Override
6262
public void customize(ConfigurableEmbeddedServletContainerFactory factory) {
63+
// ServerProperties handles customization, this just checks we only have
64+
// a single bean
6365
String[] serverPropertiesBeans = this.applicationContext
6466
.getBeanNamesForType(ServerProperties.class);
6567
Assert.state(

spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/web/ServerPropertiesAutoConfigurationTests.java

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
*/
4949
public class ServerPropertiesAutoConfigurationTests {
5050

51-
private static ConfigurableEmbeddedServletContainerFactory containerFactory;
51+
private static AbstractEmbeddedServletContainerFactory containerFactory;
5252

5353
@Rule
5454
public ExpectedException thrown = ExpectedException.none();
@@ -57,8 +57,7 @@ public class ServerPropertiesAutoConfigurationTests {
5757

5858
@Before
5959
public void init() {
60-
containerFactory = Mockito
61-
.mock(ConfigurableEmbeddedServletContainerFactory.class);
60+
containerFactory = Mockito.mock(AbstractEmbeddedServletContainerFactory.class);
6261
}
6362

6463
@After
@@ -104,13 +103,12 @@ public void customizeWithContainerFactory() throws Exception {
104103
PropertyPlaceholderAutoConfiguration.class);
105104
this.context.refresh();
106105
containerFactory = this.context
107-
.getBean(ConfigurableEmbeddedServletContainerFactory.class);
106+
.getBean(AbstractEmbeddedServletContainerFactory.class);
108107
ServerProperties server = this.context.getBean(ServerProperties.class);
109108
assertNotNull(server);
110109
// The server.port environment property was not explicitly set so the container
111110
// factory should take precedence...
112-
assertEquals(3000,
113-
((AbstractEmbeddedServletContainerFactory) containerFactory).getPort());
111+
assertEquals(3000, containerFactory.getPort());
114112
}
115113

116114
@Test

spring-boot/src/main/java/org/springframework/boot/context/embedded/AbstractEmbeddedServletContainerFactory.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
* @author Dave Syer
4242
*/
4343
public abstract class AbstractEmbeddedServletContainerFactory implements
44-
ConfigurableEmbeddedServletContainerFactory {
44+
EmbeddedServletContainerFactory, ConfigurableEmbeddedServletContainerFactory {
4545

4646
private static final String[] COMMON_DOC_ROOTS = { "src/main/webapp", "public",
4747
"static" };

spring-boot/src/main/java/org/springframework/boot/context/embedded/ConfigurableEmbeddedServletContainerFactory.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,9 @@
2828
*
2929
* @author Dave Syer
3030
* @see EmbeddedServletContainerFactory
31+
* @see EmbeddedServletContainerCustomizer
3132
*/
32-
public interface ConfigurableEmbeddedServletContainerFactory extends
33-
EmbeddedServletContainerFactory {
33+
public interface ConfigurableEmbeddedServletContainerFactory {
3434

3535
/**
3636
* Sets the context path for the embedded servlet container. The context should start
@@ -122,16 +122,18 @@ public interface ConfigurableEmbeddedServletContainerFactory extends
122122

123123
/**
124124
* Sets {@link ServletContextInitializer} that should be applied in addition to
125-
* {@link #getEmbeddedServletContainer(ServletContextInitializer...)} parameters. This
126-
* method will replace any previously set or added initializers.
125+
* {@link EmbeddedServletContainerFactory#getEmbeddedServletContainer(ServletContextInitializer...)}
126+
* parameters. This method will replace any previously set or added initializers.
127127
* @param initializers the initializers to set
128128
* @see #addInitializers
129129
*/
130130
void setInitializers(List<? extends ServletContextInitializer> initializers);
131131

132132
/**
133133
* Add {@link ServletContextInitializer}s to those that should be applied in addition
134-
* to {@link #getEmbeddedServletContainer(ServletContextInitializer...)} parameters.
134+
* to
135+
* {@link EmbeddedServletContainerFactory#getEmbeddedServletContainer(ServletContextInitializer...)}
136+
* parameters.
135137
* @param initializers the initializers to add
136138
* @see #setInitializers
137139
*/

spring-boot/src/test/java/org/springframework/boot/context/embedded/AbstractEmbeddedServletContainerFactoryTests.java

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ public void teardown() {
8484

8585
@Test
8686
public void startServlet() throws Exception {
87-
ConfigurableEmbeddedServletContainerFactory factory = getFactory();
87+
AbstractEmbeddedServletContainerFactory factory = getFactory();
8888
this.container = factory
8989
.getEmbeddedServletContainer(exampleServletRegistration());
9090
this.container.start();
@@ -93,7 +93,7 @@ public void startServlet() throws Exception {
9393

9494
@Test
9595
public void emptyServerWhenPortIsZero() throws Exception {
96-
ConfigurableEmbeddedServletContainerFactory factory = getFactory();
96+
AbstractEmbeddedServletContainerFactory factory = getFactory();
9797
factory.setPort(0);
9898
this.container = factory
9999
.getEmbeddedServletContainer(exampleServletRegistration());
@@ -104,7 +104,7 @@ public void emptyServerWhenPortIsZero() throws Exception {
104104

105105
@Test
106106
public void stopServlet() throws Exception {
107-
ConfigurableEmbeddedServletContainerFactory factory = getFactory();
107+
AbstractEmbeddedServletContainerFactory factory = getFactory();
108108
this.container = factory
109109
.getEmbeddedServletContainer(exampleServletRegistration());
110110
this.container.start();
@@ -115,7 +115,7 @@ public void stopServlet() throws Exception {
115115

116116
@Test
117117
public void restartWithKeepAlive() throws Exception {
118-
ConfigurableEmbeddedServletContainerFactory factory = getFactory();
118+
AbstractEmbeddedServletContainerFactory factory = getFactory();
119119
this.container = factory
120120
.getEmbeddedServletContainer(exampleServletRegistration());
121121
this.container.start();
@@ -138,7 +138,7 @@ public void restartWithKeepAlive() throws Exception {
138138

139139
@Test
140140
public void startServletAndFilter() throws Exception {
141-
ConfigurableEmbeddedServletContainerFactory factory = getFactory();
141+
AbstractEmbeddedServletContainerFactory factory = getFactory();
142142
this.container = factory.getEmbeddedServletContainer(
143143
exampleServletRegistration(), new FilterRegistrationBean(
144144
new ExampleFilter()));
@@ -148,7 +148,7 @@ public void startServletAndFilter() throws Exception {
148148

149149
@Test
150150
public void startBlocksUntilReadyToServe() throws Exception {
151-
ConfigurableEmbeddedServletContainerFactory factory = getFactory();
151+
AbstractEmbeddedServletContainerFactory factory = getFactory();
152152
final Date[] date = new Date[1];
153153
this.container = factory
154154
.getEmbeddedServletContainer(new ServletContextInitializer() {
@@ -170,7 +170,7 @@ public void onStartup(ServletContext servletContext)
170170

171171
@Test
172172
public void loadOnStartAfterContextIsInitialized() throws Exception {
173-
ConfigurableEmbeddedServletContainerFactory factory = getFactory();
173+
AbstractEmbeddedServletContainerFactory factory = getFactory();
174174
final InitCountingServlet servlet = new InitCountingServlet();
175175
this.container = factory
176176
.getEmbeddedServletContainer(new ServletContextInitializer() {
@@ -187,7 +187,7 @@ public void onStartup(ServletContext servletContext)
187187

188188
@Test
189189
public void specificPort() throws Exception {
190-
ConfigurableEmbeddedServletContainerFactory factory = getFactory();
190+
AbstractEmbeddedServletContainerFactory factory = getFactory();
191191
factory.setPort(8081);
192192
this.container = factory
193193
.getEmbeddedServletContainer(exampleServletRegistration());
@@ -198,7 +198,7 @@ public void specificPort() throws Exception {
198198

199199
@Test
200200
public void specificContextRoot() throws Exception {
201-
ConfigurableEmbeddedServletContainerFactory factory = getFactory();
201+
AbstractEmbeddedServletContainerFactory factory = getFactory();
202202
factory.setContextPath("/say");
203203
this.container = factory
204204
.getEmbeddedServletContainer(exampleServletRegistration());
@@ -230,7 +230,7 @@ public void contextRootPathMustNotBeSlash() throws Exception {
230230

231231
@Test
232232
public void doubleStop() throws Exception {
233-
ConfigurableEmbeddedServletContainerFactory factory = getFactory();
233+
AbstractEmbeddedServletContainerFactory factory = getFactory();
234234
this.container = factory
235235
.getEmbeddedServletContainer(exampleServletRegistration());
236236
this.container.start();
@@ -240,7 +240,7 @@ public void doubleStop() throws Exception {
240240

241241
@Test
242242
public void multipleConfigurations() throws Exception {
243-
ConfigurableEmbeddedServletContainerFactory factory = getFactory();
243+
AbstractEmbeddedServletContainerFactory factory = getFactory();
244244
ServletContextInitializer[] initializers = new ServletContextInitializer[6];
245245
for (int i = 0; i < initializers.length; i++) {
246246
initializers[i] = mock(ServletContextInitializer.class);
@@ -285,7 +285,7 @@ public void mimeType() throws Exception {
285285

286286
@Test
287287
public void errorPage() throws Exception {
288-
ConfigurableEmbeddedServletContainerFactory factory = getFactory();
288+
AbstractEmbeddedServletContainerFactory factory = getFactory();
289289
factory.addErrorPages(new ErrorPage(HttpStatus.INTERNAL_SERVER_ERROR, "/hello"));
290290
this.container = factory.getEmbeddedServletContainer(
291291
exampleServletRegistration(), errorServletRegistration());

0 commit comments

Comments
 (0)