Class ServerPortInfoApplicationContextInitializer

java.lang.Object
org.springframework.boot.web.context.ServerPortInfoApplicationContextInitializer
All Implemented Interfaces:
EventListener, ApplicationContextInitializer<ConfigurableApplicationContext>, ApplicationListener<WebServerInitializedEvent>

public class ServerPortInfoApplicationContextInitializer extends Object implements ApplicationContextInitializer<ConfigurableApplicationContext>, ApplicationListener<WebServerInitializedEvent>
ApplicationContextInitializer that sets Environment properties for the ports that WebServer servers are actually listening on. The property "local.server.port" can be injected directly into tests using @Value or obtained via the Environment.

If the WebServerInitializedEvent has a server namespace , it will be used to construct the property name. For example, the "management" actuator context will have the property name "local.management.port".

Properties are automatically propagated up to any parent context.

Since:
2.0.0
Author:
Dave Syer, Phillip Webb