=head1 NAME
WWW::AUR::URI - Generate dynamic URIs
for
accessing the AUR
=head1 SYNOPSIS
my
$uri
= pkgfile_uri(
'perl-www-aur'
);
$uri
= pkgbuild_uri(
'perl-www-aur'
);
$uri
= pkg_uri(
'SB'
=>
'n'
,
'O'
=> 1234,
'https'
=>
'YUP'
);
local
$WWW::AUR::URI::Scheme
=
'https'
;
my
$httpsuri
= pkgfile_uri(
'perl-www-aur'
);
print
$httpsuri
=head1 DESCRIPTION
This is a collection of functions used internally by other modules
in the WWW-AUR distribution. For advanced users only. Well... sorta.
=head1 EXPORTS
This module exports nothing by
default
. You must explicitly
import
functions or
import
the C<all> tag to
import
all functions.
use
WWW::AUR::URI
qw( pkgfile_uri pkgbuild_uri pkg_uri rpc_uri )
;
=head1 FUNCTIONS
=head2 pkgfile_uri
$URI
= pkgfile_uri(
$PKGNAME
)
=over 4
=item C<
$PKGNAME
>
The name of the
package
.
=item C<
$URI
>
The standard URI to the source
package
tarball.
=back
=head2 pkgbuild_uri
$URI
= pkgbuild_uri(
$PKGNAME
)
=over 4
=item C<
$PKGNAME
>
The name of the
package
.
=item C<
$URI
>
The standard URI to the conveniently extracted PKGBUILD file.
=back
=head2 pkg_uri
$URI
= pkg_uri(
%QUERY_PARAMS
)
webpage. The one that shows
package
information and comments, etc.
=over 4
=item C<
%QUERY_PARAMS
>
You can supply whatever query parameters that you want. You might want
to look at the AUR's HTML source to learn how they work.
One special parameter that acts differently is the C<
'https'
>
parameter. If this key
exists
and its value is a truthy value, then
the URI is
given
as an I<https>
link
and not an I<http>
link
. The
C<
'https'
> parameter is also not passed in as a query parameter.
If the C<
'https'
> parameter is not
given
, then the value of the
L</Scheme> global
package
variable is used instead.
=item C<
$URI
>
The URI to I<packages.php>
with
query parameters appended.
=back
=head2 rpc_uri
$URI
= rpc_uri(
$METHOD
,
@ARGS
)
=over 4
=item C<
$METHOD
>
The RPC
"method"
to
use
. Must be either I<search>, I<info>,
I<multiinfo>, or I<msearch>.
=item C<
@ARG
>
The RPC
"arguments"
to give to the
"method"
. I<multiinfo> is the only
"method"
that uses all of the arguments
given
. The other methods only
use
the first argument and ignore the rest.
=item C<
$URI
>
The URI to the rpc.php page
with
query parameters in place.
=back
=head1 PACKAGE VARIABLES
=head2 Scheme
This
scalar
contains the URI scheme to be inserted into all generated
URIs. I suppose the only real
use
for
this is
if
you want to only
generate
"https"
URIs. The
default
value is
"http"
.
=over 4
=item B<Example>
local
$WWW::AUR::URI::Scheme
=
'https'
;
print
pkgbuild_uri(
'perl-www-aur'
),
"\n"
;
=back
=head1 SEE ALSO
L<WWW::AUR>
=head1 AUTHOR
Justin Davis, C<< <juster at cpan dot org> >>
=head1 BUGS
Please email me any bugs you find. I will
try
to fix them as quick as I can.
=head1 SUPPORT
Send me an email
if
you have any questions or need help.
=head1 LICENSE AND COPYRIGHT
Copyright 2011 Justin Davis.
This program is free software; you can redistribute it and/or modify it
under the terms of either: the GNU General Public License as published
by the Free Software Foundation; or the Artistic License.