Buzznet-API

 view release on metacpan or  search on metacpan

lib/Buzznet/API.pm  view on Meta::CPAN

sub removeBuzzwords
{
  my $self = shift;
  my ($entryId, $buzzword) = @_;

  return $self->sendRequest(REMOVEBUZZWORDS,
			    RPC::XML::string->new($entryId),
			    RPC::XML::string->new($buzzword));
}

sub getBuzzword
{
  my $self = shift;
  my ($buzzword, $pagesize, $pageNumber) = @_;

  my $rawentries = $self->sendRequest(GETBUZZWORD, 
                                      RPC::XML::string->new($buzzword),
                                      RPC::XML::int->new($pagesize),
                                      RPC::XML::int->new($pageNumber));


  my @entries = ();
  if($rawentries)
  {
    foreach my $entry (@{$rawentries})
    {
      my %hash = %{$entry};
      my $buzznetEntry = Buzznet::Entry->new(%hash);
      push(@entries,$buzznetEntry);
    }
  }

  return @entries;

   
}

sub browseBuzzwords
{
  my $self = shift;
  my $numberBuzzwords = shift;

  my $rawbuzzwords = $self->sendRequest(BROWSEBUZZWORDS, 
                                        RPC::XML::int->new($numberBuzzwords));


  my @buzzwords = ();
  if($rawbuzzwords)
  {
    foreach my $buzzword (@{$rawbuzzwords})
    {
      my %hash = %{$buzzword};
      my $buzznetBuzzword = Buzznet::Buzzword->new(%hash);
      push(@buzzwords,$buzznetBuzzword);
    }
  }

  return @buzzwords;
}

sub updateProfile
{
  my $self = shift;
  my $profile = shift;

  return $self->sendRequest(UPDATEPROFILE,
                            RPC::XML::string->new($profile->password),
                            RPC::XML::string->new($profile->keyword),
                            RPC::XML::string->new($profile->fname),
                            RPC::XML::string->new($profile->lname),
                            RPC::XML::string->new($profile->email),
                            RPC::XML::string->new($profile->address),
                            RPC::XML::string->new($profile->city),
                            RPC::XML::string->new($profile->state),
                            RPC::XML::string->new($profile->zip),
                            RPC::XML::string->new($profile->country),
                            RPC::XML::string->new($profile->dob),
                            RPC::XML::string->new($profile->gender),
                            RPC::XML::string->new($profile->status));
}

sub addFriend
{
  my $self = shift;
  my ($username, $order) = @_;

  
  return $self->sendRequest(ADDFRIEND,
                            RPC::XML::string->new($username),
                            RPC::XML::int->new($order));

}

sub removeFriend
{
  my $self = shift;
  my $username = shift;

  return $self->sendRequest(REMOVEFRIEND, RPC::XML::string->new($username));
}

sub getMyFriends
{
  my $self = shift;

  my $rawfriends = $self->sendRequest(GETMYFRIENDS); 

  my @friends = ();
  if($rawfriends)
  {
    foreach my $friend (@{$rawfriends})
    {
      my %hash = %{$friend};
      my $buzznetFriend = Buzznet::Profile->new(%hash);
      push(@friends,$buzznetFriend);
    }
  }

  return @friends;
}



( run in 2.761 seconds using v1.01-cache-2.11-cpan-13bb782fe5a )