Github user ahgittin commented on the issue:
https://github.com/apache/brooklyn-server/pull/281
Comments from discussion:
* Being able to define resolution at the config key would be useful, eg to
say to prepend to a list
* May need to know *who* defined the value eg so we can use its loader to
resolve URLs and DSL commands (more notes below)
* Explicitly document the semantics, both of config inheritance and how
loaders are used
* Might want a way to define config on specific children/descendants (Aled
suggested, but Alex doesn't like, better to concentrate on validation)
Related issues with resolution through inheritance
* Type inheritance -- need to access ancestor bundles; probably
aggregating bundles (as it would be a lot of work to record the bundle of the
supertype where the key is defined)
* Distinction between "outer" case where we just need to aggregate
super-type bundles, and
* "composite" case where we need to include the bundle where a type is
being *used* (eg as a child); NB composite case could be tricky to implement as
we might need to record `catalog-item-id-where-being-used` (possibly a list?)
in addition to the `catalog-item-id` of an entity
* Management inheritance -- should detect which runtime ancestor sets the
value and resolve according to it (but not access ancestor bundles directly);
if in places that's really hard (because a URL string is being passed down the
line), could use DSL command eg `$brooklyn:local-url("classpath://start.sh")`
or allow bundle-symbolicname to be supplied in a url
`osgi:bundlename:/start.sh`)
The above is true for URLs and also for executing DSL commands. (@neykov
can you paste your illustrations of the three cases)
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---