oracular (3) WWW::Shorten::Simple.3pm.gz

Provided by: libwww-shorten-simple-perl_0.02-3_all bug

NAME

       WWW::Shorten::Simple - Factory wrapper around WWW::Shorten to avoid imports

SYNOPSIS

         use WWW::Shorten::Simple;

         my $svc = WWW::Shorten::Simple->new('TinyURL');
         my $short_url = $svc->shorten($long_url);
         my $canon_url = $svc->unshorten($short_url);

DESCRIPTION

       WWW::Shorten::Simple is a wrapper (factory) around WWW::Shorten so that you can create an object
       representing each URL shortening service, instead of importing "makeashorterlink" function into your
       namespace.

       This allows you to call multiple URL shortening services in one package, for instance to call
       WWW::Shorten::RevCanonical to extract rev="canonical", fallback to bit.ly if username and API key are
       present, and then finally to TinyURL.

         use WWW::Shorten::Simple;

         my @shorteners = (
             WWW::Shorten::Simple->new('RevCanonical'),
             WWW::Shorten::Simple->new('Bitly', $bitly_username, $bitly_api_key),
             WWW::Shorten::Simple->new('TinyURL'),
         );

         my $short_url;
         for my $shortener (@shorteners) {
             $short_url = eval { $shortener->shorten($long_url) } # eval to ignore errors
                 and last;
         }

       This wrapper works with most WWW::Shorten implementation that implements the default "makeashorterlink"
       and "makealongerlink" functions. The options should be able to be passed as an optional parameters to
       "makeashorterlink" function.

METHODS

       new
             $svc = WWW::Shorten::Simple->new('TinyURL');
             $svc = WWW::Shorten::Simple->new('Bitly', $bitly_username, $bitly_api_key);

           Creates a new WWW::Shoten::Simple object. Takes a subclass name and optional parameters to
           "makeashorterlink" call.

       shorten
             my $short_url = $svc->shorten($url);

           Shortens the given URL. Aliases: "makeashorterlink", "short_link"

       unshorten
             my $long_url = $svc->unshorten($short_url);

           Unshortens the given URL. Aliases: "makealongerlink", "long_link"

AUTHOR

       Tatsuhiko Miyagawa <miyagawa@bulknews.net>

LICENSE

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

SEE ALSO

       WWW::Shorten, WWW::Shorten::RevCanonical