I've thought a little bit more about the model and I came up with a
slightly different syntax. A file with examples can be found here:
https://svn.apache.org/repos/asf/sling/trunk/launchpad/slingstart/src/main/model/example.txt

The previous version messed up features and run modes and made them the
same. But that's not true, a feature can have artifacts in different run
modes.
So I changed the model and now each file represents a single feature, a
feature has a name which is usually derived from the file name of the model
file.

A feature has variables that can be used for the values of settings and
configurations and also to specify artifacts.

A feature consists of run modes - the global one is the default run mode
and always active.

A run mode can have settings, configurations, and artifacts.

In the txt file, each part is introduced with a section notation, like
[configurations], [artifacts] etc.

An artifact is just a single line with the maven coordinates of the
artifact. it can have additional information like the sha1 etc.

A configuration is started with a line containing the pid or factory pid +
alias, followed by the contents of the configuration and ends with an empty
line.

Each object in the model can have comments preceding the object.

Based on this we'll have two utility methods: one for agregating a model
based on features. This is e.g. reading a directory of model files in
alphabetical order. The aggregation checks for unique variables etc.
The second utility method is merging - it merges a complete (aggregated
model) with another aggregated one. This allows for overlaying or customing.

WDYT?

Regards
Carsten

2014-09-30 8:11 GMT+02:00 Carsten Ziegeler <[email protected]>:

> Hi,
>
> 2014-09-29 15:36 GMT+02:00 Carsten Ziegeler <[email protected]>:
>
>> Hi Bertrand,
>>
>>
>> 2014-09-29 14:42 GMT+02:00 Bertrand Delacretaz <[email protected]>:
>>
>>>
>>> Can we call this "startup model" BTW? It's more descriptive than
>>> slingstart.
>>>
>>> I'm fine with nearly any name, I just picked the first thing running
>> through my brain...
>> While "startup model" is more descriptive, the model can also be used to
>> describe partial systems (being it a subsystem etc.), therefore "startup"
>> is slightly missleading.
>> The same goes with "instance model". I thought about "runtime model" but
>> that seems to be not 100% correct, either :)
>>
>
> What about Sling Provisioning Model (SPM) ?
>
> Carsten
>
>
> --
> Carsten Ziegeler
> Adobe Research Switzerland
> [email protected]
>



-- 
Carsten Ziegeler
Adobe Research Switzerland
[email protected]

Reply via email to