Changes for kits interface - requests for comments
By Fred Bird on Friday 29 June 2007, 17:20 - discuss - Permalink
I'm about to change the current kit interface (the webappkit class). The goal is to make it more agile and extensible. Please let me know how bad are this ideas.
First, i plan to allow inheritance / overriding of this class. Each kit may define its own kti class, and/or inherit from a specific kit class. To allow this, it will be required to read the metadata file before creating the kit instance (to resolve classe heritage). But heritage may go further than just class heritage, it may also concern kits components such as services and storages.
Second, i thought again about generic components, like services and storages. Rather than having specific kit methods to retrieve them, they would be public members of their kit instances. For example :
$foo=&$kit->getService('foo'); $foo->bar();would become$kit->services->foo->bar();
where $kit->services would be an instance of a ServiceFactory class. Each component type would have its factory / iterable class. Components would be loaded on kit->load(), not when creating kit instance.
In the same way, subkits instances would be available within their parent
kit with $kit->subkits->subkit_name;.
On a side note, webappkit/appengine framework kit have been renamed to webappkit/evtengine. This is more meaningful, and it may not be the favorite framework for web admin. Rather, i plan to develop a framework based on the new webappkit paradigm rather than implement the old paradigm again. More about this later : one commit at a time ;)