Dmytro Gorbunov > LWP-UserAgent-OfflineCache-0.02 > LWP::UserAgent::OfflineCache

Download:
LWP-UserAgent-OfflineCache-0.02.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Module Version: 0.02   Source  

ABSTRACT ^

LWP::UserAgent::OfflineCache - a caching user agent

VERSION ^

Version 0.02

SYNOPSIS ^

This module will cache all GET requests to disk. It otherwise behaves the same as LWP::UserAgent.

Caching performs regardsless of any returned HTTP headers.

Simple example:

    #!/usr/bin/perl -w
    use strict;
    use LWP::UserAgent::OfflineCache;
    my $ua = LWP::UserAgent::OfflineCache->new;
    print $ua->get("http://www.yahoo.com/index.html");

More advanced example

    #!/usr/bin/perl -w
    use strict;
    use LWP::UserAgent::OfflineCache;
    use Log::Log4perl;

    my $logConf = q(
        log4perl.category.lwp.useragent.offlinecache = INFO, Screen
        log4perl.appender.Screen         = Log::Log4perl::Appender::Screen
        log4perl.appender.Screen.stderr  = 0
        log4perl.appender.Screen.layout = Log::Log4perl::Layout::SimpleLayout
    );
    Log::Log4perl::init( \$logConf );


    my $ua = LWP::UserAgent::OfflineCache->new(cache_dir=> 'cache', delay=>3, use_gzip=>1);
    # The same as my $ua = LWP::UserAgent::OfflineCache->new;

    print $ua->get("http://www.yahoo.com/index.html");

DESCRIPTION ^

The LWP::UserAgent::OfflineCache is a class-wrapper for LWP::UserAgent.

::OfflineCache module allows to use offline cache for debug and logging purpose.

Also by default ::OfflineCache tries to use 'Accept-Encoding' HTTP header for using less bandwidth.

Cached content stored as a files with names md5($url) in the specified directory.

CONSTRUCTOR METHOD ^

$ua = LWP::UserAgent::OfflineCache->new(%options)

In additional to standard LWP::UserAgent's options the following key/pairs values are available:

   KEY                  DEFAULT
 ----------             ------------------
 cache_dir              cache (means './cache')
 delay                  3 (seconds)
 use_gzip               1

ATTRIBUTES ^

$ua->cache_dir

Get directory where cached content stored as files with names as md5 hash from requested url.

$ua->delay

Get/set delay in seconds after each request to the server. Default value is 3.

$ua->use_gzip

Get/set boolean flag for automatic usage of 'gzip' (HTTP::Message::decodable()) in 'Accept-Encoding' header. Switched on by default.

AUTHORS ^

Luke Closs, <cpan at 5thplane.com>
Dmytro Gorbunov, <gdm at savesources.com>

SUPPORT ^

You can find documentation for this module with the perldoc command.

    perldoc LWP::UserAgent::OfflineCache

ACKNOWLEDGEMENTS ^

Thanks to Luke Closs for an idea and perfect implementation of Net::Parliament::UserAgent module.

SEE ALSO ^

LWP::UserAgent::Snapshot - same purpose as this module
LWP::Online - answer the question "Am I online?"
LWP::UserAgent::WithCache - acts like a browser with cache
LWP::Simple::WithCache - simplify an access to previous one
LWP::UserAgent::Cache::Memcached - same, but with memcache

COPYRIGHT & LICENSE ^

Copyright 2009 Luke Closs, all rights reserved.
Copyright 2010 Dmytro Gorbunov, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

syntax highlighting: