NAME

WWW::BashOrg - simple module to obtain quotes from http://bash.org/

SYNOPSIS

#!/usr/bin/env perl

use strict;
use warnings;
use WWW::BashOrg;

die "Usage: perl $0 quote_number\n"
    unless @ARGV;

my $b = WWW::BashOrg->new;

$b->get_quote(shift)
    or die $b->error . "\n";

print "$b\n";

DESCRIPTION

A simple a module to obtain either a random quote or a quote by number from http://bash.org/.

CONSTRUCTOR

new

my $b = WWW::BashOrg->new;

my $b = WWW::BashOrg->new(
    ua  => LWP::UserAgent->new(
        agent   => 'Opera 9.5',
        timeout => 30,
    )
);

Returns a newly baked WWW::BashOrg object. All arguments are options, so far only one argument is available:

ua

my $b = WWW::BashOrg->new(
    ua  => LWP::UserAgent->new(
        agent   => 'Opera 9.5',
        timeout => 30,
    )
);

Optional. Takes an LWP::UserAgent object as a value. This object will be used for fetching quotes from http://bash.org/. Defaults to:

LWP::UserAgent->new(
    agent   => 'Opera 9.5',
    timeout => 30,
)

METHODS

get_quote

my $quote = $b->get_quote('202477')
    or die $b->error;

Takes one mandatory argument - the number of the quote to fetch. Returns a string with the quote that was requested. If an error occurs, returns undef and the reason for failure can be obtained using error() method.

random

my $quote = $b->random
    or die $b->error;

Takes no argumnets. Returns a random quote. If an error occurs, returns undef and the reason for failure can be obtained using error() method.

error

my $quote = $b->random
    or die $b->error;

If an error occurs during execution of random() or get_quote() method will return the reason for failure.

quote

my $last_quote = $b->quote;

my $last_quote = "$b";

Takes no arguments. Must be called after a successfull call to either random() or get_quote(). Returns the same return value as last random() or get_quote() returned. This method is overloaded thus you can interpolate WWW::Bashorg in a string to obtain the quote.

ua

my $old_ua = $b->ua;

$b->ua(
    LWP::UserAgent->new( timeout => 20 ),
);

Returns current LWP::UserAgent object that is used for fetching quotes. Takes one option argument that must be an LWP::UserAgent object (or compatible) - this object will be used for any future requests.

AUTHOR

'Zoffix, <'zoffix at cpan.org'>

BUGS

Please report any bugs or feature requests to bug-www-bashorg at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=WWW-BashOrg. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

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

perldoc WWW::BashOrg

You can also look for information at:

COPYRIGHT & LICENSE

Copyright 2009 'Zoffix, all rights reserved.

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