On Friday, 15. September 2006 00:08, Lars Skjærlund wrote:
> It wouldn't be a nice tough if creating a new plugin for a customer
> would mean restarting their production server as we expect to have to
> create a lot of plugins on a regular basis.
Ah, I get it. Well, I'd do that in a meta-plugin. A "auto-filteype" plugin
that checks the file type of a requested file, then checks if a plugin for
that file type is installed, and then loads that plugin.
When my config changes are committed, loading and adding a plugin to the
current <Location> block at a later time would just mean calling:
AxKit2::Client::conf_Plugin($self->config,$name_of_plugin)
> Right now I've realized that even changing an XSLT stylesheet means
> restaring AxKit - that's too bad, AxKit1 performed better in this
> respect ;-).
An interesting remark. I am against automatic dependency tracking like AxKit1
did (because even style sheets can have complex dependencies, and forced
checking can cost a lot of performance), but you are right, there should at
least be an API to manually invalidate cached stylesheets. I'd imagine
something like this at the end of lib/Axkit2/Transformer/XSLT.pm:
sub invalidate { delete $cache{shift}; }
Then you can delete cache entries when you need to by calling
AxKit2::Transformer::XSLT::invalidate($filename);
Perhaps automatic invalidating/reloading is better kept in a
separate "development support" plugin, because a production server should
never have to re-load anything.
--
CU
Joerg
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]