stas        2004/08/13 12:45:33

  Modified:    src/docs/2.0/api/Apache CmdParms.pod
  Log:
  polish
  
  Revision  Changes    Path
  1.7       +112 -58   modperl-docs/src/docs/2.0/api/Apache/CmdParms.pod
  
  Index: CmdParms.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/api/Apache/CmdParms.pod,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -u -r1.6 -r1.7
  --- CmdParms.pod      13 Aug 2004 05:45:49 -0000      1.6
  +++ CmdParms.pod      13 Aug 2004 19:45:33 -0000      1.7
  @@ -11,37 +11,38 @@
     use Apache::Const -compile => qw(NOT_IN_LOCATION);
     
     sub MyDirective {
  -    my ($self, $parms, $args) = @_;
  -    
  -    # this command's command object
  -    $cmd = $parms->cmd;
  -    
  -    # check the current command's context
  -    $error = $parms->check_cmd_context(Apache::NOT_IN_LOCATION);
  -
  -    # this command's context
  -    $context = $parms->context;    
  -
  -    # this command's directive object
  -    $directive = $parms->directive;
  -    
  -    # the extra information passed thru cmd_data in @APACHE_MODULE_COMMANDS
  -    $info = $parms->info;
  -    
  -    # which methods are <Limit>ed ?
  -    $limit = $parms->limited;
  -    
  -    # which allow-override bits are set
  -    $override = $parms->override;
  -    
  -    # the path this command is being invoked in
  -    $path = $parms->path;
  -    
  -    # this command's pool
  -    $p = $parms->pool;
  -    
  -    # this command's configuration time pool
  -    $p = $parms->temp_pool;
  +      my($self, $parms, $args) = @_;
  +      
  +      # this command's command object
  +      $cmd = $parms->cmd;
  +      
  +      # check the current command's context
  +      $error = $parms->check_cmd_context(Apache::NOT_IN_LOCATION);
  +      
  +      # this command's context
  +      $context = $parms->context;
  +      
  +      # this command's directive object
  +      $directive = $parms->directive;
  +      
  +      # the extra information passed thru cmd_data in
  +      # @APACHE_MODULE_COMMANDS
  +      $info = $parms->info;
  +      
  +      # which methods are <Limit>ed ?
  +      $limit = $parms->limited;
  +      
  +      # which allow-override bits are set
  +      $override = $parms->override;
  +      
  +      # the path this command is being invoked in
  +      $path = $parms->path;
  +      
  +      # this command's pool
  +      $p = $parms->pool;
  +      
  +      # this command's configuration time pool
  +      $p = $parms->temp_pool;
     }
   
   
  @@ -72,7 +73,7 @@
   
   =over 4
   
  -=item parms: C<$parms>
  +=item obj: C<$parms>
   ( C<L<Apache::CmdParms object|docs::2.0::api::Apache::CmdParms>> )
   
   =item ret: C<$cmd>
  @@ -90,14 +91,19 @@
   
   Check the current command against a context bitmask of forbidden contexts.
   
  -  $error = $parms->check_cmd_context(Apache::NOT_IN_LOCATION);
  +  $error = $parms->check_cmd_context($check);
   
   =over 4
   
  -=item parms: C<$parms>
  +=item obj: C<$parms>
   ( C<L<Apache::CmdParms object|docs::2.0::api::Apache::CmdParms>> )
   
  -=item ret: C<$error>
  +=item arg1: C<$check> ( C<L<Apache::Const :context
  +constant|docs::2.0::api::Apache::Const/C__context_>> )
  +
  +the context to check against.
  +
  +=item ret: C<$error> ( string / undef )
   
   If the context is forbidden, this method returns a textual description
   of why it was forbidden. If the context is permitted, this method returns
  @@ -107,6 +113,19 @@
   
   =back
   
  +For example here is how to check whether a command is allowed in the
  +E<lt>LocationE<gt> container:
  +
  +  use Apache::Const -compile qw(NOT_IN_LOCATION);
  +  if (my $error = $parms->check_cmd_context(Apache::NOT_IN_LOCATION)) {
  +      die "directive ... not allowed in <Location> context"
  +  }
  +
  +
  +
  +
  +
  +
   
   
   =head2 C<directive>
  @@ -117,7 +136,7 @@
   
   =over 4
   
  -=item parms: C<$parms>
  +=item obj: C<$parms>
   ( C<L<Apache::CmdParms object|docs::2.0::api::Apache::CmdParms>> )
   
   =item ret: C<$newval>
  @@ -136,17 +155,17 @@
   
   =head2 C<info>
   
  -The extra information passed thru C<cmd_data> in 
  +The extra information passed thru C<cmd_data> in
   C<L<@APACHE_MODULE_COMMANDS|docs::2.0::user::config::custom/C_cmd_data_>>
   
     $info = $parms->info;
   
   =over 4
   
  -=item parms: C<$parms>
  +=item obj: C<$parms>
   ( C<L<Apache::CmdParms object|docs::2.0::api::Apache::CmdParms>> )
   
  -=item ret: C<$info> (string)
  +=item ret: C<$info> ( string )
   
   The string passed in C<cmd_data>
   
  @@ -167,36 +186,60 @@
   
   =over 4
   
  -=item parms: C<$parms>
  +=item obj: C<$parms>
   ( C<L<Apache::CmdParms object|docs::2.0::api::Apache::CmdParms>> )
   
  -=item ret: C<$limit> (integer)
  +=item ret: C<$limit> ( integer )
   
   =item since: 1.99_12
   
   =back
   
  +  META: and how exactly is it supposed to be used, should this be
  +  tested against $r->method_number (e.g. Apache::M_POST) ? what's
  +  $limit?  (notice that the test of this method isn't so good, it
  +  tests some hardcoded -1 value, how do you know that it does what you
  +  think it does?)
  +
  +
  +
   
   
   
   
   =head2 C<override>
   
  -Which allow-override bits are set
  +Which allow-override bits are set (C<AllowOverride> directive)
   
     $override = $parms->override;
   
   =over 4
   
  -=item parms: C<$parms>
  +=item obj: C<$parms>
   ( C<L<Apache::CmdParms object|docs::2.0::api::Apache::CmdParms>> )
   
  -=item ret: C<$override> (integer)
  +=item ret: C<$override> ( bitmask )
  +
  +the allow-override bits bitmask, which can be tested against
  +C<L<Apache::Const :override
  +constants|docs::2.0::api::Apache::Const/C__override_>>.
   
   =item since: 1.99_12
   
   =back
   
  +For example to check that the C<AllowOverride>'s C<AuthConfig> and
  +C<FileInfo> options are enabled for this command, do:
  +
  +  use Apache::Const -compile qw(:override);
  +  $wanted = Apache::OR_AUTHCFG | Apache::OR_FILEINFO;
  +  $masked = $parms->override & $wanted;
  +  unless ($wanted == $masked) {
  +      die "...";
  +  }
  +
  +
  +
   
   
   
  @@ -209,14 +252,14 @@
   
   =over 4
   
  -=item parms: C<$parms>
  +=item obj: C<$parms>
   ( C<L<Apache::CmdParms object|docs::2.0::api::Apache::CmdParms>> )
   
  -=item ret: C<$path> (string)
  +=item ret: C<$path> ( string / undef )
   
  -If configuring for a block like E<lt>LocationE<gt>, E<lt>LocationMatchE<gt>,
  -E<lt>DirectoryE<gt>, etc, the pathname part of that directive. Otherwise, 
  -C<undef> is returned.
  +If configuring for a block like E<lt>LocationE<gt>,
  +E<lt>LocationMatchE<gt>, E<lt>DirectoryE<gt>, etc., the pathname part
  +of that directive. Otherwise, C<undef> is returned.
   
   =item since: 1.99_12
   
  @@ -224,6 +267,10 @@
   
   
   
  +
  +
  +
  +
   =head2 C<pool>
   
   Pool associated with this command
  @@ -232,11 +279,11 @@
   
   =over 4
   
  -=item parms: C<$parms>
  +=item obj: C<$parms>
   ( C<L<Apache::CmdParms object|docs::2.0::api::Apache::CmdParms>> )
   
   =item ret: C<$p>
  -(C<L<APR::Pool|docs::2.0::api::APR::Pool>>)
  +( C<L<APR::Pool object|docs::2.0::api::APR::Pool>> )
   
   =item since: 1.99_12
   
  @@ -255,10 +302,11 @@
   
   =over 4
   
  -=item parms: C<$parms>
  +=item obj: C<$parms>
   ( C<L<Apache::CmdParms object|docs::2.0::api::Apache::CmdParms>> )
   
  -=item ret: C<$s> (C<L<Apache::Server|docs::2.0::api::Apache::ServerRec>>)
  +=item ret: C<$s>
  +( C<L<Apache::Server object|docs::2.0::api::Apache::ServerRec>> )
   
   =item since: 1.99_12
   
  @@ -271,22 +319,28 @@
   
   =head2 C<temp_pool>
   
  -Pool for scratch memory; persists during configuration, but
  -wiped before the first request is served...
  +Pool for scratch memory; persists during configuration, but destroyed
  +before the first request is served.
   
     $p = $parms->temp_pool;
   
   =over 4
   
  -=item parms: C<$parms>
  +=item obj: C<$parms>
   ( C<L<Apache::CmdParms object|docs::2.0::api::Apache::CmdParms>> )
   
  -=item ret: C<$p> (C<L<APR::Pool|docs::2.0::api::APR::Pool>>)
  +=item ret: C<$p>
  +( C<L<APR::Pool object|docs::2.0::api::APR::Pool>> )
   
   =item since: 1.99_12
   
   =back
   
  +Most likely you shouldn't use this pool object, unless you know what
  +you are doing. Use C<L<$parms-E<gt>pool|/C_pool_>> instead.
  +
  +
  +
   
   
   
  @@ -315,7 +369,7 @@
   
   =over 4
   
  -=item parms: C<$parms>
  +=item obj: C<$parms>
   ( C<L<Apache::CmdParms object|docs::2.0::api::Apache::CmdParms>> )
   
   =item ret: C<$newval>
  
  
  

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

Reply via email to