Branch: Tag:

1996-12-10

1996-12-10 00:15:44 by Per Hedbor <ph@opera.com>

ny version

Rev: server/base_server/configuration.pike:1.10
Rev: server/base_server/mainconfig.pike:1.27
Rev: server/base_server/roxen.pike:1.22
Rev: server/modules/graphics/graphic_text.pike:1.7
Rev: server/modules/proxies/ftpgateway.pike:1.8
Rev: server/roxen-images/background.gif:1.4

1: - string cvs_version = "$Id: configuration.pike,v 1.9 1996/12/07 11:37:41 neotron Exp $"; + string cvs_version = "$Id: configuration.pike,v 1.10 1996/12/10 00:15:39 per Exp $";   #include <module.h>   /* A configuration.. */   
32:          - static private program Priority = class + class Priority   {    array (object) url_modules = ({ });    array (object) logger_modules = ({ });
43:       mapping (string:array(object)) extension_modules = ([ ]);    mapping (string:array(object)) file_extension_modules = ([ ]); - }; +        -  +  void stop() +  { +  foreach(url_modules, object m) catch { m->stop(); }; +  foreach(logger_modules, object m) catch { m->stop(); }; +  foreach(filter_modules, object m) catch { m->stop(); }; +  foreach(location_modules, object m)catch { m->stop(); }; +  foreach(last_modules, object m) catch { m->stop(); }; +  foreach(first_modules, object m) catch { m->stop(); }; +  } + } +  +  +    /* A 'pri' is one of the ten priority objects. Each one holds a list    * of modules for that priority. They are all merged into one list for    * performance reasons later on.
157:   private mapping (string:array (function)) extension_module_cache=([]);   private mapping (string:array (function)) file_extension_module_cache=([]);    +  + // Call stop in all modules. + void stop() + { +  catch { parse_module->stop(); }; +  catch { types_module->stop(); }; +  catch { auth_module->stop(); }; +  catch { dir_module->stop(); }; +  for(int i=0; i<10; i++) catch { pri[i]->stop(); }; + } +  +    // Empty all the caches above.   void unvalidate_cache()   {