/// Wednesday, November 30
Gamba: First-Class Branding
More refactoring today. I've promoted the branding idea to a full pledged object model. The entry point (after front controller) into Gamba will not be a controller as in traditional MVC2, rather a brand. The importance of this is a brand controls access to a set of controllers and also encapsulates look-and-feel. For example, an executive brand of a corporate website allows the use of the FinancialsController and CorporateStrategiesController as well as any other controllers it inherits through derivation.
If developers do not wish to use brands, then the DefaultBrand will simply be a pass-through to a controller as in normal MVC2. Here's a simplified UML diagram. (There's actually a few classes between dispatchers and brands like IActionProxy).