Roxen.git / server / base_server / module.pike

version» Context lines:

Roxen.git/server/base_server/module.pike:1: - /* $Id: module.pike,v 1.61 1999/12/28 00:35:48 nilsson Exp $ */ + /* $Id: module.pike,v 1.62 2000/01/05 17:29:53 mast Exp $ */   #include <module.h>   #include <request_trace.h>      mapping (string:mixed *) variables=([]);   RoxenModule this = this_object();   mapping(string:array(int)) error_log=([]);      constant is_module = 1;   constant module_type = MODULE_PARSER;   constant module_name = "Unnamed module";   constant module_doc = "Undocumented";   constant module_unique = 1;    -  + private string _module_identifier; + string module_identifier() + { +  if (!_module_identifier) { +  string|mapping name = register_module()[1]; +  if (mappingp (name)) name = name->standard; +  _module_identifier = sprintf ("%s,%O", name || module_name, my_configuration()); +  } +  return _module_identifier; + } +    string _sprintf()   { -  return sprintf("RoxenModule("+register_module()[1]+",%s)", my_configuration()); +  return "RoxenModule(" + module_identifier() + ")";   }      array register_module()   {    return ({    module_type,    module_name,    module_doc,    0,    module_unique,
Roxen.git/server/base_server/module.pike:638:      mapping query_if_callers()   {    mapping m = ([]);    foreach(glob("if_*", indices( this_object())), string q)    if(functionp( this_object()[q] ))    m[replace(q[3..], "_", "-")] = this_object()[q];    return m;   }    + RXML.TagSet query_tagset() + { +  return RXML.TagSet (module_identifier(), +  filter (rows (this_object(), +  glob ("Tag*", +  indices (this_object()))), +  functionp)); + } +    mixed get_value_from_file(string path, string index, void|string pre)   {    Stdio.File file=Stdio.File();    if(!file->open(path,"r")) return 0;    if(index[sizeof(index)-2..sizeof(index)-1]=="()") {    return compile_string((pre||"")+file->read())[index[..sizeof(index)-3]]();    }    return compile_string((pre||"")+file->read())[index];   }