stas 2004/10/05 19:20:17 Modified: src/docs/2.0/api/APR Bucket.pod Const.pod Log: APR::Bucket::setaside updates Revision Changes Path 1.16 +35 -7 modperl-docs/src/docs/2.0/api/APR/Bucket.pod Index: Bucket.pod =================================================================== RCS file: /home/cvs/modperl-docs/src/docs/2.0/api/APR/Bucket.pod,v retrieving revision 1.15 retrieving revision 1.16 diff -u -u -r1.15 -r1.16 --- Bucket.pod 5 Oct 2004 03:44:38 -0000 1.15 +++ Bucket.pod 6 Oct 2004 02:20:16 -0000 1.16 @@ -625,8 +625,6 @@ Ensure the bucket's data lasts at least as long as the given pool: -XXX: change? - my $status = $b->setaside($pool); =over 4 @@ -637,18 +635,48 @@ =item arg1: C<$pool> ( C<L<APR::Pool object|docs::2.0::api::APR::Pool>> ) -=item ret: +=item ret: ( C<L<APR::Const status +constant|docs::2.0::api::APR::Const>> ) -XXX: it's going to change to no return value +On success, +C<L<APR::SUCCESS|docs::2.0::api::APR::Const/C_APR__SUCCESS_>> is +returned. Otherwise a failure code is returned. + +=item excpt: C<L<APR::Error|docs::2.0::api::APR::Error>> + +when your code deals only with mod_perl buckets, you don't have to ask +for the return value. If this method is called in the C<VOID> context, +i.e.: + + $b->setaside($pool); + +mod_perl will do the error checking on your behalf, and if the return +code is not +C<L<APR::SUCCESS|docs::2.0::api::APR::Const/C_APR__SUCCESS_>>, an +C<L<APR::Error exception|docs::2.0::api::APR::Error>> will be thrown. + +However if your code doesn't know which bucket types it may need to +setaside, you may want to check the return code and deal with any +errors. For example one of the possible error codes is +C<L<APR::ENOTIMPL|docs::2.0::api::APR::Const/C_APR__ENOTIMPL_>>. As of +this writing the pipe and socket buckets can't C<setaside()>, in which +case you may want to look at the C<ap_save_brigade()> implementation. =item since: 1.99_17 =back +Usually setaside is called by certain output filters, in order to +buffer socket writes of smaller buckets into a single write. This +method works on all bucket types (not only the mod_perl bucket type), +but as explained in the exceptions section, not all bucket types +implement this method. + When a mod_perl bucket is setaside, its data is detached from the -original perl scalar and copied into a pool bucket. Usually setaside -is called by certain output filters, in order to buffer socket writes -of smaller buckets into a single write. +original perl scalar and copied into a pool bucket. That allows +downstream filters to deal with the data originally owned by a Perl +interpreter, making it possible for that interpreter to go away and do +other things, or be destroyed. 1.24 +2 -0 modperl-docs/src/docs/2.0/api/APR/Const.pod Index: Const.pod =================================================================== RCS file: /home/cvs/modperl-docs/src/docs/2.0/api/APR/Const.pod,v retrieving revision 1.23 retrieving revision 1.24 diff -u -u -r1.23 -r1.24 --- Const.pod 22 Sep 2004 01:30:06 -0000 1.23 +++ Const.pod 6 Oct 2004 02:20:16 -0000 1.24 @@ -627,6 +627,8 @@ =head3 C<APR::ENOTIMPL> +Something is not implemented + =over =item since: 1.99_12
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]