@ -165,6 +165,9 @@ public abstract class AbstractApplicationContext extends DefaultResourceLoader
@@ -165,6 +165,9 @@ public abstract class AbstractApplicationContext extends DefaultResourceLoader
/** Parent context */
privateApplicationContextparent;
/** Environment used by this context */
privateConfigurableEnvironmentenvironment;
/** BeanFactoryPostProcessors to apply on refresh */
@ -197,10 +200,10 @@ public abstract class AbstractApplicationContext extends DefaultResourceLoader
@@ -197,10 +200,10 @@ public abstract class AbstractApplicationContext extends DefaultResourceLoader
@ -340,7 +343,9 @@ public abstract class AbstractApplicationContext extends DefaultResourceLoader
@@ -340,7 +343,9 @@ public abstract class AbstractApplicationContext extends DefaultResourceLoader
if(logger.isTraceEnabled()){
logger.trace("Publishing event in "+getDisplayName()+": "+event);
}
finalApplicationEventapplicationEvent;
// Decorate event as an ApplicationEvent if necessary
ApplicationEventapplicationEvent;
if(eventinstanceofApplicationEvent){
applicationEvent=(ApplicationEvent)event;
}
@ -350,7 +355,16 @@ public abstract class AbstractApplicationContext extends DefaultResourceLoader
@@ -350,7 +355,16 @@ public abstract class AbstractApplicationContext extends DefaultResourceLoader
@ -379,7 +393,7 @@ public abstract class AbstractApplicationContext extends DefaultResourceLoader
@@ -379,7 +393,7 @@ public abstract class AbstractApplicationContext extends DefaultResourceLoader
thrownewIllegalStateException("LifecycleProcessor not initialized - "+
"call 'refresh' before invoking lifecycle methods via the context: "+this);
@ -543,6 +557,10 @@ public abstract class AbstractApplicationContext extends DefaultResourceLoader
@@ -543,6 +557,10 @@ public abstract class AbstractApplicationContext extends DefaultResourceLoader
// Validate that all properties marked as required are resolvable
// see ConfigurablePropertyResolver#setRequiredProperties
getEnvironment().validateRequiredProperties();
// Allow for the collection of early ApplicationEvents,
// to be published once the multicaster is available...
@ -748,11 +766,21 @@ public abstract class AbstractApplicationContext extends DefaultResourceLoader
@@ -748,11 +766,21 @@ public abstract class AbstractApplicationContext extends DefaultResourceLoader
@ -337,6 +343,21 @@ public class ApplicationContextEventTests extends AbstractApplicationEventListen
@@ -337,6 +343,21 @@ public class ApplicationContextEventTests extends AbstractApplicationEventListen
@ -410,6 +431,7 @@ public class ApplicationContextEventTests extends AbstractApplicationEventListen
@@ -410,6 +431,7 @@ public class ApplicationContextEventTests extends AbstractApplicationEventListen
@ -422,6 +444,7 @@ public class ApplicationContextEventTests extends AbstractApplicationEventListen
@@ -422,6 +444,7 @@ public class ApplicationContextEventTests extends AbstractApplicationEventListen
@ -437,4 +460,25 @@ public class ApplicationContextEventTests extends AbstractApplicationEventListen
@@ -437,4 +460,25 @@ public class ApplicationContextEventTests extends AbstractApplicationEventListen