Date: 2004-03-07T09:13:13
   Editor: AdamJack <[EMAIL PROTECTED]>
   Wiki: Gump Wiki
   Page: GumpInternals
   URL: http://wiki.apache.org/gump/GumpInternals

   no comment

New Page:

-= GumpInternals =-

Processing Steps:
 * The GumpMetadata is loaded (via file/HTTP) and 'completed' into the GumpModel
 * The GumpModel is a tree of a workspace containing modules, which contain projects
 * Projects in the tree are linked (bi-directionally) via dependencies
 * A GumpRun is build using a pattern match expression against project names. 

-= GumpRun =-

Contains the list of projects expanded from the passed in expressions (or 'all'), but 
also contains the 'build sequence' for that list (the tree of things to build to 
complete that list) and the modules that intersects with. This becomes the 'work 
order' for a run.

-= Annotatable =-

Can contain a list of 'info', 'warn', 'error' text messages.

-= Workable =-

Can be worked on (typically by 

-= FileHolder =-

Can contain a list of file references (directories or files).

-= Stateful =-

Holds 'state' (succeeded, failed) and 'reason' (if not Unset, e.g. 'build failed').

-= State Propogation =-

If a project's "state" is set to smething bad (e.g. failed) then that propogates "up" 
to all "dependees" of that project that do not already have a bad state. When state 
propogates it changes (from whatever negative) to "prerequisite failed", and the 
originating project becomes the ["Cause"] for these projects.

If a module's state is set to something bad (failed) then that propogates down to all 
it's projects, and in turn 'up' (to dependees of those projects). A module can be a 
["Cause"].

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to