From 514dad6d222dc2112eb4c59b4c42f2cba50900a6 Mon Sep 17 00:00:00 2001 From: Graeme Rocher Date: Tue, 27 May 2014 14:11:34 +0200 Subject: [PATCH] allow subclassing of SpringApplicationBuilder --- .../boot/builder/SpringApplicationBuilder.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/spring-boot/src/main/java/org/springframework/boot/builder/SpringApplicationBuilder.java b/spring-boot/src/main/java/org/springframework/boot/builder/SpringApplicationBuilder.java index ec9aef84367..12cbda3d582 100644 --- a/spring-boot/src/main/java/org/springframework/boot/builder/SpringApplicationBuilder.java +++ b/spring-boot/src/main/java/org/springframework/boot/builder/SpringApplicationBuilder.java @@ -80,10 +80,21 @@ public class SpringApplicationBuilder { private boolean registerShutdownHookApplied; public SpringApplicationBuilder(Object... sources) { - this.application = new SpringApplication(sources); + this.application = createSpringApplication(sources); } - /** + /** + * Creates a new {@link org.springframework.boot.SpringApplication} instances from the given sources. Subclasses may + * override in order to provide a custom subclass of {@link org.springframework.boot.SpringApplication} + * + * @param sources The sources + * @return The {@link org.springframework.boot.SpringApplication} instance + */ + protected SpringApplication createSpringApplication(Object... sources) { + return new SpringApplication(sources); + } + + /** * Accessor for the current application context. * @return the current application context (or null if not yet running) */