Browse Source
Added file ZkConstants.php, which will hold general purpose constants
for the Zookeeper core and modules.
Improved ZkLoader.php: moved module loading code out of function loadService
into it's own function, loadModule, to make it more flexible. Yesterday's code
was designed with just services in mind that will only ever need one module
loaded (which will usually happen at service load time). Todays modifications
extends the capabilities to accomodate both services that can load multiple
modules and services loading modules sometime AFTER the service has been loaded.
The changes to lib/auth/service.php reflect the changes described in the above
paragraph, as they impacted the authentication service. The most substantial
change is the addition of a loadService function to the 'Service' interface'.
Speaking of the 'Service' interface, there is another point here which I should
explain. If Zookeeper was being coded in an OOP language with more extensive
capabilities, I would code a 'Service' interface that each service would be
required to implement. (There might even be some cause to code a parent class
or an abstract class which would be extended by each of the services.)
This is because there are some all services need to conform to some similar
standards in order for Zookeeper to work. This includes the implementation
of a couple of specific functions, as well as the arguments and behavior of
the service constructor. Since PHP has only limited OOP capabilities, I
suppose that I will need to document the 'Service' interface as part of the
core Zookeeper API. Blah Blah Blah. Of course, documentation of the way the
modules work and are implemented, etc, with ZkLoader, etc, should also be
documented in a similar manner.
The file various logging file commits here reflect the work-in-progress on
the Zookeeper logging service and modules, API, etc.