You are viewing a plain text version of this content. The canonical link for it is here.
Posted to general@gump.apache.org by ge...@gump.apache.org on 2004/03/07 18:13:15 UTC

[Gump Wiki] New: GumpInternals

   Date: 2004-03-07T09:13:13
   Editor: AdamJack <aj...@apache.org>
   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: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org