Ensure custom HTTP code mappings for /health don't remove default mappings
Previously any custom http code mapping would remove the default mappings. With this commit the behaviour is changed so that default mappings will stay if a custom mapping is registered. Certainly a default mapping can be overridden. fixes #1264
This commit is contained in:
parent
5e02ee6974
commit
99b3240ab2
|
|
@ -157,7 +157,7 @@ public class EndpointWebMvcAutoConfiguration implements ApplicationContextAware,
|
||||||
public HealthMvcEndpoint healthMvcEndpoint(HealthEndpoint delegate) {
|
public HealthMvcEndpoint healthMvcEndpoint(HealthEndpoint delegate) {
|
||||||
HealthMvcEndpoint healthMvcEndpoint = new HealthMvcEndpoint(delegate);
|
HealthMvcEndpoint healthMvcEndpoint = new HealthMvcEndpoint(delegate);
|
||||||
if (this.healthMvcEndpointProperties.getMapping() != null) {
|
if (this.healthMvcEndpointProperties.getMapping() != null) {
|
||||||
healthMvcEndpoint.setStatusMapping(this.healthMvcEndpointProperties
|
healthMvcEndpoint.addStatusMapping(this.healthMvcEndpointProperties
|
||||||
.getMapping());
|
.getMapping());
|
||||||
}
|
}
|
||||||
return healthMvcEndpoint;
|
return healthMvcEndpoint;
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,7 @@ import org.springframework.web.bind.annotation.ResponseBody;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adapter to expose {@link HealthEndpoint} as an {@link MvcEndpoint}.
|
* Adapter to expose {@link HealthEndpoint} as an {@link MvcEndpoint}.
|
||||||
*
|
*
|
||||||
* @author Christian Dupuis
|
* @author Christian Dupuis
|
||||||
* @since 1.1.0
|
* @since 1.1.0
|
||||||
*/
|
*/
|
||||||
|
|
@ -50,7 +50,7 @@ public class HealthMvcEndpoint extends EndpointMvcAdapter {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set specific status mappings
|
* Set specific status mappings.
|
||||||
* @param statusMapping a map of status code to {@link HttpStatus}
|
* @param statusMapping a map of status code to {@link HttpStatus}
|
||||||
*/
|
*/
|
||||||
public void setStatusMapping(Map<String, HttpStatus> statusMapping) {
|
public void setStatusMapping(Map<String, HttpStatus> statusMapping) {
|
||||||
|
|
@ -59,7 +59,16 @@ public class HealthMvcEndpoint extends EndpointMvcAdapter {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add a status mapping to the existing set
|
* Add specfic status mappings to the existing set.
|
||||||
|
* @param statusMapping a map of status code to {@link HttpStatus}
|
||||||
|
*/
|
||||||
|
public void addStatusMapping(Map<String, HttpStatus> statusMapping) {
|
||||||
|
Assert.notNull(statusMapping, "StatusMapping must not be null");
|
||||||
|
this.statusMapping.putAll(statusMapping);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add a status mapping to the existing set.
|
||||||
* @param status the status to map
|
* @param status the status to map
|
||||||
* @param httpStatus the http status
|
* @param httpStatus the http status
|
||||||
*/
|
*/
|
||||||
|
|
@ -70,7 +79,7 @@ public class HealthMvcEndpoint extends EndpointMvcAdapter {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add a status mapping to the existing set
|
* Add a status mapping to the existing set.
|
||||||
* @param statusCode the status code to map
|
* @param statusCode the status code to map
|
||||||
* @param httpStatus the http status
|
* @param httpStatus the http status
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue