Indicating module groups
Justin Obara
justin.obara at utoronto.ca
Tue Jun 30 21:22:46 UTC 2009
Hello,
A while back I had mentioned a few different approaches that we could
take to indicate groupings for the modules in Infusion.
We are likely going to start working on implementing the third option,
see below, after the Canada Day holiday (July 1).
Any additional comments, questions, suggestions are welcomed.
Thanks
Justin
On 17-Jun-09, at 8:44 AM, Justin wrote:
> Hello,
>
> Currently we are working on building a component to allow users to
> create custom builds from the website.
>
> As part of this, we will need to obtain more information about the
> various modules and groups of modules that are part of Infusion.
>
> At the moment, the ant script used for making custom builds on the
> command line looks for a build.properties file.
> http://source.fluidproject.org/svn/fluid/infusion/trunk/build-scripts/build.properties
>
> From this file, it has access to all of the modules and the
> locations of their specific dependency file. A dependency file is a
> json file which contains key value pairs indicating the various
> module information such as which files it includes and what other
> modules it depends on.
>
> When a new component is added, a developer will have to create a new
> dependency file for it, and add the reference to this file in the
> build.properties file. Basically a 2 step process.
>
> Here are some options that we were passing around. Please feel free
> to make comments and suggestions.
>
>
>
> Possible Solution
> How it might look
> Number of steps
> Pros
> Cons
> Create another file "moduleGroups.json". This file will contain key
> value pairs indicating the groups, their names, descriptions, and
> modules within the group.
> http://source.fluidproject.org/svn/fluid/infusion/trunk/src/webapp/moduleGroups.json
> 3
> Easier to parse on the server side
> Have already started to implement
> Imposes an extra step on component developers
> Add the group name to the module references in the
> "build.properties" file . The "moduleGroups.json" file will just
> contain information about the groups, but the modules will be
> assigned to groups in the "build.properties" file only.
> build.properties
>
> module_inlineEdit-components="components/inlineEdit"
>
> moduleGroups.json
>
> groups: [
> {
> "id": components
> "name": "Infusion Component Modules",
> "description": ""
> },...]
> 2
> Only two steps when adding a new component
> Will have to jump between the two files when parsing
> Will need to make a slight change to the build.js/build.xml
> In the "build.properties" file. Define the groups. For the specific
> modules add the name of the group to the module reference
> group_id="components"
> group_name="Infusion Component Modules"
> groupd_descriptoin=""
>
> module_inlineEdit-components="components/inlineEdit"
> 2
> Only two steps when adding a new component
> Don't need to parse the build.properties file and the
> moduleGroups.json file
> Makes the build.properties files messier
> Will need to make a slight change to the build.js/build.xml
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://fluidproject.org/pipermail/fluid-work/attachments/20090630/35235000/attachment.html>