blob: 6ea7942da793a6d6e1f78e78785767e6f7efbf35 [file] [log] [blame]
=head1 NAME
Apache::*::Error - Exception classes for Apache::Request, Apache::Upload, Apache::Cookie::Jar and Apache::Cookie
=for testing
use Apache2;
use Apache::Upload;
use Apache::Cookie;
use APR::Error;
use APR::Pool;
$r = APR::Pool->new;
$req = Apache::Request->new($r);
$req->body_status(0);
$req->parse; # XXX sets up body table
$u = Apache::Upload->new($r, name => "foo", file => __FILE__);
$req->body->add($u);
$jar = Apache::Cookie::Jar->new($r);
$c = Apache::Cookie->new($r, name => "foo", value => "1");
$jar->cookies->add($c);
=head1 SYNOPSIS
=for example begin
$req = Apache::Request->new($r);
$jar = Apache::Cookie::Jar->new($r);
$req->args_status(1); # artificial error status = 1 for I<query-string> parser
$jar->status(2); # artificial error status = 2 for I<Cookie> header parser
eval { $req->parse };
ok $@->isa("Apache::Request::Error");
ok $@ == 1;
eval { @cookies = $jar->cookies };
ok $@->isa("Apache::Cookie::Jar::Error");
ok $@ == 2;
@cookies = $@->cookies; # same method does not fail on Error object
=for example end
=for example_testing
ok @cookies == 1;
=head1 DESCRIPTION
This manpage documents the Apache::*::Error classes provided by
the Apache::Request, Apache::Upload, and Apache::Cookie modules.
Error classes are all derived from APR::Error and the class
which first produced the error. Unlike the object that created it,
an Error object will not itself throw an error by calling its methods.
=head1 Apache::Request::Error
These exceptions are derived from APR::Error and Apache::Request,
and indicate that an error occurred during param parsing.
=for example begin
=for example end
=for example_testing
=head1 Apache::Upload::Error
These exceptions are derived from APR::Error and Apache::Upload,
and indicate that some Apache::Upload method failed (often caused
by a filesystem error).
=for example begin
=for example end
=for example_testing
=head1 Apache::Cookie::Jar::Error
These exceptions are derived from APR::Error and Apache::Cookie::Jar,
and indicate that the cookie parser failed to successfully parse the
incoming Cookie header.
=for example begin
=for example end
=for example_testing
=head1 Apache::Cookie::Error
These exceptions are derived from APR::Error and Apache::Cookie.
Their presence indicates that an Apache::Cookie method failed.
Typically they are caused by
1) attempting to bake(2) a non-compliant cookie,
2) attempting to set an unsupported cookie attribute.
=for example begin
=for example end
=for example_testing
=head1 SEE ALSO
L<Apache::Request>, L<Apache::Cookie>, L<Apache::Upload>
APR::Error(3)
=head1 COPYRIGHT
Copyright 2003-2004 The Apache Software Foundation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.