public class GenericGroovyApplicationContext extends GenericApplicationContext implements groovy.lang.GroovyObject
ApplicationContext implementation that extends
 GenericApplicationContext and implements GroovyObject such that beans
 can be retrieved with the dot de-reference syntax instead of using AbstractApplicationContext.getBean(java.lang.String).
 Consider this as the equivalent of GenericXmlApplicationContext for
 Groovy bean definitions. The main difference is that, within a Groovy script,
 the context can be used with an inline bean definition closure as follows:
 
 import org.hibernate.SessionFactory
 import org.apache.commons.dbcp.BasicDataSource
 def context = new GenericGroovyApplicationContext()
 context.reader.beans {
     dataSource(BasicDataSource) {                  // <--- invokeMethod
         driverClassName = "org.hsqldb.jdbcDriver"
         url = "jdbc:hsqldb:mem:grailsDB"
         username = "sa"                            // <-- setProperty
         password = ""
         settings = [mynew:"setting"]
     }
     sessionFactory(SessionFactory) {
         dataSource = dataSource                    // <-- getProperty for retrieving references
     }
     myService(MyService) {
         nestedBean = { AnotherBean bean ->         // <-- setProperty with closure for nested bean
             dataSource = dataSource
         }
     }
 }
 context.refresh()
 
 Alternatively, load a Groovy bean definition script like the following from an external resource (e.g. an "applicationContext.groovy" file):
 import org.hibernate.SessionFactory
 import org.apache.commons.dbcp.BasicDataSource
 beans {
     dataSource(BasicDataSource) {
         driverClassName = "org.hsqldb.jdbcDriver"
         url = "jdbc:hsqldb:mem:grailsDB"
         username = "sa"
         password = ""
         settings = [mynew:"setting"]
     }
     sessionFactory(SessionFactory) {
         dataSource = dataSource
     }
     myService(MyService) {
         nestedBean = { AnotherBean bean ->
             dataSource = dataSource
         }
     }
 }
 
 With the following Java code creating the GenericGroovyApplicationContext
 (potentially using Ant-style '*'/'**' location patterns):
 
 GenericGroovyApplicationContext context = new GenericGroovyApplicationContext();
 context.load("org/myapp/applicationContext.groovy");
 context.refresh();
 
 Or even more concise, provided that no extra configuration is needed:
 ApplicationContext context = new GenericGroovyApplicationContext("org/myapp/applicationContext.groovy");
 GroovyBeanDefinitionReaderDefaultResourceLoader.ClassPathContextResourceAPPLICATION_EVENT_MULTICASTER_BEAN_NAME, LIFECYCLE_PROCESSOR_BEAN_NAME, logger, MESSAGE_SOURCE_BEAN_NAMECONFIG_LOCATION_DELIMITERS, CONVERSION_SERVICE_BEAN_NAME, ENVIRONMENT_BEAN_NAME, LOAD_TIME_WEAVER_BEAN_NAME, SYSTEM_ENVIRONMENT_BEAN_NAME, SYSTEM_PROPERTIES_BEAN_NAMEFACTORY_BEAN_PREFIXCLASSPATH_ALL_URL_PREFIXCLASSPATH_URL_PREFIX| Constructor and Description | 
|---|
GenericGroovyApplicationContext()
 | 
GenericGroovyApplicationContext(Class<?> relativeClass,
                               String... resourceNames)
Create a new GenericGroovyApplicationContext, loading bean definitions
 from the given resource locations and automatically refreshing the context. 
 | 
GenericGroovyApplicationContext(Resource... resources)
Create a new GenericGroovyApplicationContext, loading bean definitions
 from the given resources and automatically refreshing the context. 
 | 
GenericGroovyApplicationContext(String... resourceLocations)
Create a new GenericGroovyApplicationContext, loading bean definitions
 from the given resource locations and automatically refreshing the context. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
groovy.lang.MetaClass | 
getMetaClass()  | 
Object | 
getProperty(String property)  | 
GroovyBeanDefinitionReader | 
getReader()
Exposes the underlying  
GroovyBeanDefinitionReader for convenient access
 to the loadBeanDefinition methods on it as well as the ability
 to specify an inline Groovy bean definition closure. | 
Object | 
invokeMethod(String name,
            Object args)  | 
void | 
load(Class<?> relativeClass,
    String... resourceNames)
Load bean definitions from the given Groovy scripts. 
 | 
void | 
load(Resource... resources)
Load bean definitions from the given Groovy scripts. 
 | 
void | 
load(String... resourceLocations)
Load bean definitions from the given Groovy scripts. 
 | 
void | 
setEnvironment(ConfigurableEnvironment environment)
Delegates the given environment to underlying  
GroovyBeanDefinitionReader. | 
void | 
setMetaClass(groovy.lang.MetaClass metaClass)  | 
void | 
setProperty(String property,
           Object newValue)  | 
cancelRefresh, closeBeanFactory, getBeanDefinition, getBeanFactory, getDefaultListableBeanFactory, getResource, getResources, isAlias, isBeanNameInUse, refreshBeanFactory, registerAlias, registerBeanDefinition, removeAlias, removeBeanDefinition, setAllowBeanDefinitionOverriding, setAllowCircularReferences, setId, setParent, setResourceLoaderaddApplicationListener, addBeanFactoryPostProcessor, assertBeanFactoryActive, close, containsBean, containsBeanDefinition, containsLocalBean, createEnvironment, destroy, destroyBeans, doClose, findAnnotationOnBean, finishBeanFactoryInitialization, finishRefresh, getAliases, getApplicationListeners, getApplicationName, getAutowireCapableBeanFactory, getBean, getBean, getBean, getBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanFactoryPostProcessors, getBeanNamesForAnnotation, getBeanNamesForType, getBeanNamesForType, getBeansOfType, getBeansOfType, getBeansWithAnnotation, getDisplayName, getEnvironment, getId, getInternalParentBeanFactory, getInternalParentMessageSource, getMessage, getMessage, getMessage, getParent, getParentBeanFactory, getResourcePatternResolver, getStartupDate, getType, initApplicationEventMulticaster, initLifecycleProcessor, initMessageSource, initPropertySources, invokeBeanFactoryPostProcessors, isActive, isPrototype, isRunning, isSingleton, isTypeMatch, obtainFreshBeanFactory, onClose, onRefresh, postProcessBeanFactory, prepareBeanFactory, prepareRefresh, publishEvent, refresh, registerBeanPostProcessors, registerListeners, registerShutdownHook, setDisplayName, start, stop, toStringgetClassLoader, getResourceByPath, setClassLoaderclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitcontainsBeanDefinition, getBeanDefinitionCount, getBeanDefinitionNamesgetAliasesgetClassLoaderpublic GenericGroovyApplicationContext()
public GenericGroovyApplicationContext(Resource... resources)
resources - the resources to load frompublic GenericGroovyApplicationContext(String... resourceLocations)
resourceLocations - the resources to load frompublic GenericGroovyApplicationContext(Class<?> relativeClass, String... resourceNames)
relativeClass - class whose package will be used as a prefix when
 loading each specified resource nameresourceNames - relatively-qualified names of resources to loadpublic final GroovyBeanDefinitionReader getReader()
GroovyBeanDefinitionReader for convenient access
 to the loadBeanDefinition methods on it as well as the ability
 to specify an inline Groovy bean definition closure.public void setEnvironment(ConfigurableEnvironment environment)
GroovyBeanDefinitionReader.
 Should be called before any call to #load.setEnvironment in interface ConfigurableApplicationContextsetEnvironment in class AbstractApplicationContextenvironment - the new environmentAbstractApplicationContext.createEnvironment()public void load(Resource... resources)
resources - one or more resources to load frompublic void load(String... resourceLocations)
resourceLocations - one or more resource locations to load frompublic void load(Class<?> relativeClass, String... resourceNames)
relativeClass - class whose package will be used as a prefix when
 loading each specified resource nameresourceNames - relatively-qualified names of resources to loadpublic void setMetaClass(groovy.lang.MetaClass metaClass)
setMetaClass in interface groovy.lang.GroovyObjectpublic groovy.lang.MetaClass getMetaClass()
getMetaClass in interface groovy.lang.GroovyObjectpublic Object invokeMethod(String name, Object args)
invokeMethod in interface groovy.lang.GroovyObjectpublic void setProperty(String property, Object newValue)
setProperty in interface groovy.lang.GroovyObject