[Looks like this suggestion was lost in the sea of messages in that long Apache:: terminator thread. splinning it off as a new thread]

>> or do you think it's OK the way things are right now? The manpage
>> suggests to use
>> http://perl.apache.org/docs/2.0/api/ModPerl/MethodLookup.html to figure
>> what needs to be loaded, but it's not so intuitive.
>
> MethodLookup is really sweet, but it's not intuitive that you need a
> separate module to tell you what to load.

Not a module but a command line run. Actually, since we already have mp2bug and mp2doc utils. I'm thinking to make ModPerl/MethodLookup more intuitive and add 3 more utils: mp2method, mp2module, mp2object to perform the equivalent of:

  % perl -MApache2 -MModPerl::MethodLookup -e print_method
  % perl -MApache2 -MModPerl::MethodLookup -e print_module
  % perl -MApache2 -MModPerl::MethodLookup -e print_object

just like we have the cpan utility vs.

% perl -MCPAN -eshell

This will make it much more accessible/useful. once you install mp2 and if you want to use a method server_root() but you don't know which module you need to load you will run:

  % mp2method server_root_relative
To use method 'server_root_relative' add:
        use Apache::ServerUtil ();

then you wonder what other methods Apache::ServerUtil loads, so you run:

% mp2module Apache::ServerUtil

Module 'Apache::ServerUtil' contains the following XS methods:

Method                Invoked on object type
-----------------------------------------------------------------
add_config            Apache::Server
add_version_component Apache
dir_config            Apache::Server
error_log2stderr      Apache::Server
exists_config_define  Apache
get_handlers          Apache::Server
get_server_built      Apache
get_server_version    Apache
psignature            Apache::RequestRec
push_handlers         Apache::Server
server                Apache
server_root_relative  Apache
set_handlers          Apache::Server
-----------------------------------------------------------------

Finally you are interested what methods can be invoked on the object blessed into Apache::Filter and which modules need to be loaded in order to use them:

% mp2object Apache::Filter

Objects of type 'Apache::Filter' can invoke the following XS methods:

Method               Module
------------------------------------------------
PRINT                Apache::Filter
TIEHANDLE            Apache::Filter
c                    Apache::Filter
ctx                  Apache::Filter
fflush               Apache::Filter
fputs                Apache::Filter
frec                 Apache::Filter
get_brigade          Apache::Filter
next                 Apache::Filter
pass_brigade         Apache::Filter
print                Apache::Filter
r                    Apache::Filter
read                 Apache::Filter
remove               Apache::Filter
remove_input_filter  Apache::Filter
remove_output_filter Apache::Filter
seen_eos             Apache::Filter
------------------------------------------------

each of these scripts is just:

  #!/usr/bin/perl
  # mp2method
  use Apache2; use ModPerl::MethodLookup; print_method(@ARGV);

  #!/usr/bin/perl
  # mp2module
  use Apache2; use ModPerl::MethodLookup; print_module(@ARGV);

  #!/usr/bin/perl
  # mp2object
  use Apache2; use ModPerl::MethodLookup; print_object(@ARGV);

__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to