# Provide "live" methods for ExtensionContainer

**URL:** <https://discuss.gradle.org/t/provide-live-methods-for-extensioncontainer/403>\
**Category:** Old Forum Archive\
**Created:** [December 6, 2013, 2:42pm UTC](https://discuss.gradle.org/t/provide-live-methods-for-extensioncontainer/403 "2013-12-06T14:42:00Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Oliver\_Reissig](https://avatars.discourse-cdn.com/v4/letter/o/ccd318/32.png) [@Oliver\_Reissig](https://discuss.gradle.org/u/Oliver_Reissig)\
**Post date:** [December 6, 2013, 2:42pm UTC](https://discuss.gradle.org/t/provide-live-methods-for-extensioncontainer/403/1 "2013-12-06T14:42:00Z")

</div>

It would be nice if ExtensionContainer would implement NamedDomainObjectContainer or at least DomainObjectCollection to provide “live” methods like the PluginContainer does for Plugins.

---

<div class="post-metadata">

**Author:** ![luke\_daley](https://sea1.discourse-cdn.com/gradle/user_avatar/discuss.gradle.org/luke_daley/32/9890_2.png) [@luke\_daley](https://discuss.gradle.org/u/luke_daley)\
**Post date:** [December 9, 2013, 9:27pm UTC](https://discuss.gradle.org/t/provide-live-methods-for-extensioncontainer/403/2 "2013-12-09T21:27:00Z")

</div>

Hi Oliver,

Sounds like a good idea. In what situation did you need this?

---

<div class="post-metadata">

**Author:** ![Oliver\_Reissig](https://avatars.discourse-cdn.com/v4/letter/o/ccd318/32.png) [@Oliver\_Reissig](https://discuss.gradle.org/u/Oliver_Reissig)\
**Post date:** [December 9, 2013, 10:36pm UTC](https://discuss.gradle.org/t/provide-live-methods-for-extensioncontainer/403/3 "2013-12-09T22:36:00Z")

</div>

I try to propagate “global” settings of the root project in a multiproject build down to the subprojects.

I do not want to use the project hierarchy’s fallback, as this does not allow to override individual settings of subprojects independently (it passes the whole extension instance). Therefore I register separate extension instances for each subproject and propagate global settings on extension creation via convention mapping. The last part cannot be done currently, so I look for plugin creations and scan the extension container afterwards for newly registered extensions, which is quite a hack.
