Hi,
I've taken the WSGI specific changes from Jason's private_JMB_MPS_Wsgi_Detangled branch, and copied them into this branch - private_JMB_MPS_WSGI. That branch has been restructured somewhat and merged. After reviewing them, there's a lot of code in there which is actually app specific - for example custom routing which most people using WSGI wouldn't use; wsgi values called kp.* etc, - so I've decided to shift out all this code into two places. Specifically a Kamaelia.Apps.JMB namespace to hold all the core code relatively unchanged - but so that it will play nicely with the rest of the system. Also, Apps/GSOC_JMB has been created to package up Jason's code cleanly, along with applications using the app specific wsgi routing included. Detailed description of what's been merged. Apps/GSOC_JMB/App/ * Holds the 2 examples of how to use JMB's WSGI code. This contains some app specific things, and hence is seperated out as an app. The generic code will get merged onto core after refactoring/simplification. * Examples: Apps/GSOC_JMB/App/simple_wsgi_example.py * Hosts a simple wsgi application. Apps/GSOC_JMB/App/wsgi_example.py * Hosts 2 simple wsgi applications based on an "url list". Apps/GSOC_JMB/DistBuild/ Distribution/release build scripts: * BuildRelease.sh * CleanBuild.sh * setup.py.src * upload.sh Apps/GSOC_JMB/Config/ Config directory for future use. Apps/GSOC_JMB/Doc Docs directory. Docs need writing. Apps/GSOC_JMB/MANIFEST.in * Standard packaging file. Kamaelia/Kamaelia/Apps/JMB/__init__.py Base directory for JMB's project(s) Kamaelia/Kamaelia/Apps/JMB/WSGI/__init__.py Base directory for JMB's WSGI related code. Kamaelia/Kamaelia/Apps/JMB/WSGI/Apps/ Base directory of App specific wsgi adaptors to work with JMB's wsgi server. Current example Apps/adaptors: * Simple.py * CpyApp.py * PasteApp.py * Test.py * Moin.py * ErrorHandler.py * Static.py Kamaelia/Kamaelia/Apps/JMB/WSGI/_WSGIHandler.py File containing the *actual* WSGI handling code (NB: MPS is Baffled as to why this isn't exposed as a regular component, and it's due to the multiple levels of indirection in the code that this is in the apps directory, as well as the app specific ( kp.* ) wsgi application values.) Kamaelia/Kamaelia/Apps/JMB/WSGI/_factory.py Factory system for spawning WSGI applications based on specific routing. Problem is that is in itself really a function of wsgi, and there's much better things out there for doing this, so this is really an app specific router, rather than general router. It's interesting, but I can see some serious issues with it myself. Kamaelia/setup.py Changed to pull in the Apps.JMB namespaces as well. Regards, Michael. -- http://yeoldeclue.com/blog http://twitter.com/kamaelian http://www.kamaelia.org/Home --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "kamaelia" group. To post to this group, send email to kamaelia@googlegroups.com To unsubscribe from this group, send email to kamaelia+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/kamaelia?hl=en -~----------~----~----~----~------~----~------~--~---