#ifndef MOD_PUBLISHER_SAX_H #define MOD_PUBLISHER_SAX_H #ifdef __cplusplus extern "C" { #endif /** apx_sax_init_func: a hook to set up SAX handlers before parsing data * * a registered function will be called on every request processed by * mod_publisher, with the request_rec and the sax ptr. * * All registered apx_sax_init_funcs are global: they will be called * on every request handled by mod_publisher. It's up to your handler * to inspect the request_rec and decide whether it's interested. * * The saxptr is passed to you after mod_publisher has set up its * handlers, so you can override them. That would probably be a * Very Bad Idea (tm), but it can be done. * * If more than one apx_sax_init_func is registered, it is possible that * one of them will override handlers set by another. Caveat user! */ typedef void (*apx_sax_init_func)(request_rec* r, xmlSAXHandlerPtr sax) ; /** apx_hook_sax_init: function to register an apx_sax_init_func * * The only legitimate thing your func can do with the sax ptr * is to set your handlers in it. */ void apx_hook_sax_init(apr_pool_t* pool, apx_sax_init_func func) ; #ifdef __cplusplus } #endif #endif