parent
406f6ec74d
commit
be416ef9c4
|
|
@ -61,11 +61,7 @@ import java.util.function.Supplier
|
||||||
* @see BeanDefinitionDsl
|
* @see BeanDefinitionDsl
|
||||||
* @since 5.0
|
* @since 5.0
|
||||||
*/
|
*/
|
||||||
fun beans(init: BeanDefinitionDsl.() -> Unit): BeanDefinitionDsl {
|
fun beans(init: BeanDefinitionDsl.() -> Unit) = BeanDefinitionDsl(init)
|
||||||
val beans = BeanDefinitionDsl()
|
|
||||||
beans.init = init
|
|
||||||
return beans
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class implementing functional bean definition Kotlin DSL.
|
* Class implementing functional bean definition Kotlin DSL.
|
||||||
|
|
@ -76,14 +72,13 @@ fun beans(init: BeanDefinitionDsl.() -> Unit): BeanDefinitionDsl {
|
||||||
* @author Sebastien Deleuze
|
* @author Sebastien Deleuze
|
||||||
* @since 5.0
|
* @since 5.0
|
||||||
*/
|
*/
|
||||||
open class BeanDefinitionDsl(private val condition: (ConfigurableEnvironment) -> Boolean = { true })
|
open class BeanDefinitionDsl(private val init: BeanDefinitionDsl.() -> Unit,
|
||||||
|
private val condition: (ConfigurableEnvironment) -> Boolean = { true })
|
||||||
: ApplicationContextInitializer<GenericApplicationContext> {
|
: ApplicationContextInitializer<GenericApplicationContext> {
|
||||||
|
|
||||||
@PublishedApi
|
@PublishedApi
|
||||||
internal val children = arrayListOf<BeanDefinitionDsl>()
|
internal val children = arrayListOf<BeanDefinitionDsl>()
|
||||||
|
|
||||||
internal lateinit var init: BeanDefinitionDsl.() -> Unit
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Access to the context for advanced use-cases.
|
* Access to the context for advanced use-cases.
|
||||||
* @since 5.1
|
* @since 5.1
|
||||||
|
|
@ -238,8 +233,7 @@ open class BeanDefinitionDsl(private val condition: (ConfigurableEnvironment) ->
|
||||||
* specified profile is active.
|
* specified profile is active.
|
||||||
*/
|
*/
|
||||||
fun profile(profile: String, init: BeanDefinitionDsl.() -> Unit) {
|
fun profile(profile: String, init: BeanDefinitionDsl.() -> Unit) {
|
||||||
val beans = BeanDefinitionDsl({ it.activeProfiles.contains(profile) })
|
val beans = BeanDefinitionDsl(init, { it.activeProfiles.contains(profile) })
|
||||||
beans.init = init
|
|
||||||
children.add(beans)
|
children.add(beans)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -251,8 +245,7 @@ open class BeanDefinitionDsl(private val condition: (ConfigurableEnvironment) ->
|
||||||
*/
|
*/
|
||||||
fun environment(condition: ConfigurableEnvironment.() -> Boolean,
|
fun environment(condition: ConfigurableEnvironment.() -> Boolean,
|
||||||
init: BeanDefinitionDsl.() -> Unit) {
|
init: BeanDefinitionDsl.() -> Unit) {
|
||||||
val beans = BeanDefinitionDsl(condition::invoke)
|
val beans = BeanDefinitionDsl(init, condition::invoke)
|
||||||
beans.init = init
|
|
||||||
children.add(beans)
|
children.add(beans)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue