Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[buckminster-dev] Re: Components that come into existence during a build

Henrik Lindberg wrote:
However, I guess that in a world of million options, some projects may need to structure things so that a parent component creates components named completely disjunct from the parents name. component "x.y.z" produces "a.source". Naturally such a naming scheme is more confusing, but should be handled by Buckminster.

Yes, I think we have to. PDE recommends that pure source components are called <original-name>.source. Another reason is that generated features/plugins will be visible in the Eclipse update-manager and in a deployed instance. In my opinion, exposing the build process (in this case - how a component came into existence) as part of the name so that the end user can see it is not ideal. I see your point about model clarity too though.

then this could be stated as:
<cs:dependency name="the.subcomponent.name" subcomponentOf="the.parent.component">

Which is the same as your last example, but with a different name for the "producedBy" attribute. If you want something short, why not:
<cs:dependency name="the.subcomponent.name" in="the.parent.component">

Perhaps we should also define what action in the parent that is responsible for creating the sub-component? The suggested prebind is too limited and also obsolete when the subcomponent semantics are expressed in the dependency. Perhaps like this:

<cs:dependency name="the.subcomponent.name" parent="the.parent.component" parentAction="subcomponent.generation"/>

One could argue that 'parentAction' should be 'parentAttribute' for sake of consistency. In this case though, I think it has to be an action.

We need to agree on whats best of 'subcomponentOf', 'in', or 'parent'. I'm in favor of the last one since it ties in nicely with 'parentAction'.


How do you suggest the declaration of a subcomponent is made in the parent component?

Given the above I think the actual declaration of the parentAction would be all that is needed in the parent. Do you see a need for some other explicit declaration?

- thomas



Back to the top