Net::Google::Code(3)

NAME
Net::Google::Code - a simple client library for google code

SYNOPSIS
    use Net::Google::Code;

    my $project = Net::Google::Code->new( project => 'net-google-code' );
    $project->load; # load its metadata, e.g. summary, owners, members, etc.

    print join(', ', @{ $project->owners } );

    # return a Net::Google::Code::Issue object, of which the id is 30
    $project->issue( id => 30 );

    # return a Net::Google::Code::Download object, of which the file name is
    # 'FooBar-0.01.tar.gz'
    $project->download( name => 'FooBar-0.01.tar.gz' );

    # return a Net::Google::Code::Wiki object, of which the page name is 'Test'
    $project->wiki( name => 'Test' );

    # loads all the downloads
    $project->load_downloads;
    my $downloads = $project->downloads;

    # loads all the wikis
    $project->load_wikis;
    my $wikis = $project->wikis;

DESCRIPTION
Net::Google::Code is a simple client library for projects hosted in Google Code.

Since 0.15, Net::Google::Code offers google's official issues api support. Besides the new "Net::Google::Code::Issue::list", "Net::Google::Code::Issue::Comment::list" and <Net::Googlel::Code::Issue::load_comments> methods, which use the api from start, you can set $Net::Google::Code::Issue::USE_HYBRID to true to load, create and update issue with the api too.

But the official api is not function complete yet( e.g. no attachment support, can't merge, etc. ), Net::Google::Code will back to the scraping way to accomplish those stuff.

ATTRIBUTES

project
    the project name

email, password
    user's email and password, used to authenticate

base_url
    the project homepage

base_svn_url
    the project svn url (without trunk)

base_feeds_url
    the project feeds url

summary
description
labels
owners
members

INTERFACE

load
    load project's home page, and parse its metadata

parse
    acturally do the parse job, for load();

load_downloads
    load all the downloads, and store them as an arrayref in $self->downloads

load_wikis
    load all the wikis, and store them as an arrayref in $self->wikis

issue
    return a new Net::Google::Code::Issue object, arguments will be passed to Net::Google::Code::Issue's new method.

download
    return a new Net::Google::Code::Download object, arguments will be passed to Net::Google::Code::Download's new method.

wiki
    return a new Net::Google::Code::Wiki object, arguments will be passed to Net::Google::Code::Wiki's new method.

DEPENDENCIES
Any::Moose, HTML::TreeBuilder, WWW::Mechanize, Params::Validate XML::FeedPP, DateTime, JSON, URI::Escape, MIME::Types, File::MMagic

INCOMPATIBILITIES
None reported.

BUGS AND LIMITATIONS
No bugs have been reported.

This project is very very young, and api is not stable yet, so don't use this in production, at least for now.

AUTHOR
sunnavy "<sunnavy@bestpractical.com>"

Fayland Lam "<fayland@gmail.com>"

LICENCE AND COPYRIGHT
Copyright 2008-2010 Best Practical Solutions.

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