New Startup configuration
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Zope 3 |
Fix Released
|
Medium
|
Stephan Richter |
Bug Description
I committed a new startup directives handler, which takes all the functionality out of z3.py and puts it in a nice startup.zcml file and is much easier to configure.
Features::
- Specify the types of servers you want to start
- Decide which type of ZODB storage to use
- Decide where the logs should be written to.
Planned (if agreed with by the community)::
- Make a server type registry, where developers can
register new servers, so that the site admin has
only to select them and is not challenged with
implementation details.
- Make a second registry for ZODB storage type for
the same reasons as above.
- Split the startup configuration into two
sections::
1. The programmer directives, that do all the low
level stuff and provide the services for the
higher level settings.
2. The Site Admin directives, which then use the
objects, which were provided by the
Status: Accepted => Resolved
I played with the startup directives some more and separated the
programmer directives from the site admins. One can now easily
create new sites without knowing anything about Zope. The only
thing s/he has to know is the name of the server (i.e. Browser)
s/he wants to start for a particular site.
There is also registries now for RequestFactories and and
ServerTypes, so that third party programmers can easily add
their own request factories and server types to the system by
calling a couple of directives. That makes it also really
plugable, since one could simply exchange the Logger of a server
without much hassle.
Also, each storage type has its own directive now, since
arguments for the constructors of the storages greatly vary.
Note: The directives now are probably not flexible enough for
future use, but we can add complexity as we need it later.