| Net-Digg documentation | Contained in the Net-Digg distribution. |
Net::Digg - Quickly consume and interface with the Digg API.
use Net::Digg;
my $digg = Net::Digg->new();
# Print the user that submitted the latest upcoming story.
my $result = $digg->get_upcoming_stories();
print $result->{ 'stories' }[0]->{'title'};
# Print the titles of the twenty latest popular stories
my %params = ('count' => 20);
$result = $digg->get_popular_stories(\%params);
my $stories = $result->{'stories'};
foreach $story (@$stories) {
print $story->{'title'} . "\n";
}
See also FUNCTIONS, DESCRIPTION, and EXAMPLES below.
The typical:
Creates the Digg object.
Given
Get all stories.
Given
Get all popular stories.
Given
Get all popular stories.
Given
Get top stories.
Given
Get hot stories.
Given
Get all stories from a given container.
Given
Get all popular stories from a given container.
Given
Get all upcoming stories from a given container.
Given
Get top stories from a given container.
Given
Get hot stories from a given container.
Given
Get all stories from a given topic.
Given
Get all popular stories from a given topic.
Given
Get all upcoming stories from a given topic.
Given
Get top stories from a given topic.
Given
Get hot stories from a given topic.
Given
Get identified story.
Given
Get a list of stories with the given ids.
Given
Get identified story.
Given
Get stories submitted by given user.
Given
Get popular stories submitted by given user.
Given
Get upcoming stories submitted by given user.
Given
Get stories dugg by given user.
Given
Get stories commented by given user.
Given
Get stories submitted by given user friends.
Given
Get popular stories submitted by given user friends.
Given
Get upcoming stories submitted by given user friends.
Given
Get stories dugg by given user friends.
Given
Get stories commented by given user friends.
Given
Get all diggs.
Given
Get all popular diggs.
Given
Get all upcoming diggs.
Given
Get all diggs for a given story.
Given
Get all diggs for a list of stories with the given ids.
Given
Get one user's diggs for all stories.
Given
Get several users' diggs for all stories
Given
Get one user digg for a given story.
Given
Get all comments.
Given
Get all comments on popular stories.
Given
Get all comments on upcoming stories.
Given
Get all comments for a list of stories with the given ids.
Given
Get top-level comments for a given story.
Given
Get one user's comments for all stories.
Given
Get several users' comments for all stories.
Given
Get one comment for a given story.
Given
Get one level of replies to one comment for a given story.
Given
Get a list of all error codes and messages.
Given
Get the message for a specific error code.
Given
Get a list of all topics.
Given
Get the specified topic.
Given
Get all users.
Given
Get named user.
Given
Get named user's friends.
Given
Get users who count the named user as a friend.
Given
Get named user's friend.
Given
Get all gallery photos.
Given
Get a list of galleryphotos with the given ids
Given
Get a list of galleryphotos with the given ids
Given
Get all gallery photo comments.
Given
Get all gallery photo comments for given ids.
Given
Get top-level comments for a given gallery photo.
Given
Get one comment for a given gallery photo.
Given
Get one level of replies to one comment for a given gallery photo.
Given
Get a list of all media.
Given
Get a specified medium.
Given
Get a list of all containers.
Given
Get a specified container.
Given
Returns the query string for an API request.
This module allows developers to quickly consume and interface with the Digg API as defined at http://apidoc.digg.com
Net::Digg uses LWP internally. Any environment variables that LWP supports should be supported by Net::Digg.
I decided to use JSON::Any to parse and convert the JSON returned from the Digg API. The main reason for this is that other similar modules seemed to be using this strategy. I should check to see if there is easier or more desirable way to handle the returned data.
Please report any bugs or feature requests to
bug-net-digg@rt.cpan.org, or through the web interface at
http://rt.cpan.org.
This document describes Net::Digg version 0.1.
Kurt Wilms wilms@cs.umn.edu http://www.kurtwilms.com/ Hey, if you download this module, drop me an email! That's the fun part of this whole open source thing.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
The full text of the license can be found in the LICENSE file included in the distribution and available in the CPAN listing for Net::Digg (see www.cpan.org or search.cpan.org).
To the maximum extent permitted by applicable law, the author of this module disclaims all warranties, either express or implied, including but not limited to implied warranties of merchantability and fitness for a particular purpose, with regard to the software and the accompanying documentation.
| Net-Digg documentation | Contained in the Net-Digg distribution. |
package Net::Digg; $AUTHOR = 'Kurt Wilms <wilms@cs.umn.edu>'; $VERSION = 0.11; use warnings; use strict; use LWP::UserAgent; use JSON::Any;
sub new { my $class = shift; my %conf = @_; $conf{apiurl} = 'http://services.digg.com' unless defined $conf{apiurl}; $conf{useragent} = "Net::Digg/$Net::Digg::VERSION (PERL)" unless defined $conf{useragent}; $conf{appkey} = 'http%3A%2F%2Fsearch.cpan.org%2Fdist%2FNet-Digg' unless defined $conf{appkey}; $conf{type} = 'json' unless defined $conf{type}; $conf{ua} = LWP::UserAgent->new(); $conf{ua}->agent($conf{useragent}); $conf{ua}->env_proxy(); return bless {%conf}, $class; }
sub get_stories { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_popular_stories { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/popular"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_upcoming_stories { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/upcoming"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_top_stories { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/top"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_hot_stories { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/hot"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_stories_by_container { my $self = shift; my $container = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/container" . "/" . $container; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_popular_stories_by_container { my $self = shift; my $container = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/container" . "/" . $container . "/popular"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_upcoming_stories_by_container { my $self = shift; my $container = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/container" . "/" . $container . "/upcoming"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_top_stories_by_container { my $self = shift; my $container = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/container" . "/" . $container . "/top"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_hot_stories_by_container { my $self = shift; my $container = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/container" . "/" . $container . "/hot"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_stories_by_topic { my $self = shift; my $topic = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/topic" . "/" . $topic; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_popular_stories_by_topic { my $self = shift; my $topic = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/topic" . "/" . $topic ."/popular"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_upcoming_stories_by_topic { my $self = shift; my $topic = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/topic" . "/" . $topic ."/upcoming"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_top_stories_by_topic { my $self = shift; my $topic = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/topic" . "/" . $topic ."/top"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_hot_stories_by_topic { my $self = shift; my $topic = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/topic" . "/" . $topic ."/hot"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_story_by_id { my $self = shift; my $id = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "story" . "/" . $id; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_stories_by_ids { my $self = shift; my @ids = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories"; $url .= '/' . join(',', @ids); $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_story_by_title { my $self = shift; my $title = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "story" . "/" . $title; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_stories_by_user { my $self = shift; my $user = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "user" . "/" . $user . "/submissions"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_popular_stories_by_user { my $self = shift; my $user = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "user" . "/" . $user . "/popular"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_upcoming_stories_by_user { my $self = shift; my $user = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "user" . "/" . $user . "/upcoming"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_stories_dugg_by_user { my $self = shift; my $user = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "user" . "/" . $user . "/dugg"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_stories_commented_by_user { my $self = shift; my $user = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "user" . "/" . $user . "/commented"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_stories_by_friends { my $self = shift; my $user = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "user" . "/" . $user . "/friends/submissions"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_popular_stories_by_friends { my $self = shift; my $user = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "user" . "/" . $user . "/friends/popular"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_upcoming_stories_by_friends { my $self = shift; my $user = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "user" . "/" . $user . "/friends/upcoming"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_stories_dugg_by_friends { my $self = shift; my $user = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "user" . "/" . $user . "/friends/dugg"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_stories_commented_by_friends { my $self = shift; my $user = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "user" . "/" . $user . "/friends/commented"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_diggs { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/diggs"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_popular_diggs { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/popular/diggs"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_upcoming_diggs { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/upcoming/diggs"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_diggs_by_storyid { my $self = shift; my $id = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "story" . $id . "/diggs"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_diggs_by_storyids { my $self = shift; my @ids = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/stories"; $url .= '/' . join(',', @ids) . "/diggs"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_diggs_by_user { my $self = shift; my $user = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "user" . "/" . $user . "/diggs"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_diggs_by_userids { my $self = shift; my @ids = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "users"; $url .= '/' . join(',', @ids) . "/diggs"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_user_digg_by_storyid { my $self = shift; my $id = shift; my $user = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "story" . "/" . $id . "/" . $user . "/digg"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_comments { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/comments"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_popular_comments { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/popular/comments"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_upcoming_comments { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories/upcoming/comments"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_comments_by_ids { my $self = shift; my @ids = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "stories"; $url .= '/' . join(',', @ids) . "/comments"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_comments_by_id { my $self = shift; my $id = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "story/" . $id . "/comments"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_comments_by_user { my $self = shift; my $user= shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "user/" . $user . "/comments"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_comments_by_users { my $self = shift; my @users= shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "users"; $url .= '/' . join(',', @users) . "/comments"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_comment_by_storyid_commentid { my $self = shift; my $storyid= shift; my $commentid= shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "story/" . $storyid . "/comment/" . $commentid; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_comment_replies { my $self = shift; my $storyid= shift; my $commentid= shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "story/" . $storyid . "/comment/" . $commentid . "/replies"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_errors { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "errors"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_error_code { my $self = shift; my $code = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "error" . "/" . $code; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_topics { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "topics"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_topic_by_name { my $self = shift; my $topic = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "topic" . "/" . $topic; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_users { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "users"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_user_by_name { my $self = shift; my $name = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "user" . "/" . $name; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_users_friends { my $self = shift; my $name = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "user" . "/" . $name . "/" . "friends"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_users_fans { my $self = shift; my $name = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "user" . "/" . $name . "/" . "fans"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_user_by_name_fan_name { my $self = shift; my $name = shift; my $fanName = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "user" . "/" . $name . "/" . "fan" . "/" . $fanName; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_galleryphotos { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "galleryphotos"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_galleryphotos_by_ids { my $self = shift; my @ids = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "galleryphotos"; $url .= '/' . join(',', @ids); $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_galleryphotos_by_id { my $self = shift; my $id = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "galleryphoto" . "/" . $id; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_galleryphotos_comments { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "galleryphotos/comments"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_galleryphotos_comments_by_ids { my $self = shift; my @ids = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "galleryphotos"; $url .= '/' . join(',', @ids) . "/comments"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_galleryphoto_comments_by_id { my $self = shift; my $id = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "galleryphoto" . "/" . $id . "/comments"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_galleryphoto_comment_by_photoid_commentid { my $self = shift; my $photoid = shift; my $commentid = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "galleryphoto" . "/" . $photoid . "/comment" . "/" .$commentid; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_galleryphoto_comment_replies_by_photoid_commentid { my $self = shift; my $photoid = shift; my $commentid = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "galleryphoto" . "/" . $photoid . "/comment" . "/" .$commentid . "/replies"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_media { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "media"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_media_by_name { my $self = shift; my $short_name = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "medium" . "/" . $short_name; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_containers { my $self = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "containers"; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub get_container_by_name { my $self = shift; my $short_name = shift; my $queryargs = shift; my $url = $self->{apiurl} . "/" . "container" . "/" . $short_name; $url .= $self->handle_args($queryargs); my $req = $self->{ua}->get($url); return ($req->is_success) ? JSON::Any->jsonToObj($req->content) : undef; }
sub handle_args { my $self = shift; my $queryargs = shift; $$queryargs{'type'} = $self->{type}; $$queryargs{'appkey'} = $self->{appkey}; my @sets = (); foreach my $k (keys (%{$queryargs})) { push(@sets, '' . $k . '=' . $$queryargs{$k}); } my $url = '?' . join('&', @sets); return $url; } 1; __END__