/usr/local/CPAN/LWPng-alpha/LWP/UA/Cookies.pm
package LWP::UA::Cookies;
sub LWP::UA::cookie_jar
{
my $self = shift;
my $old = $self->{'ua_cookie_jar'};
if (@_) {
if ($self->{'ua_cookie_jar'} = shift) {
$self->add_hook("spool_request", \&spool_handler) unless $old;
} else {
$self->remove_hook("spool_request", \&spool_handler);
}
}
$old;
}
sub spool_handler
{
my($self, $req) = @_;
my $jar = $self->{'ua_cookie_jar'} || return 0;
$jar->add_cookie_header($req);
$req->add_hook("response_done",
sub {
my($req, $res) = @_;
$jar->extract_cookies($res);
1;
});
0;
}
1;