summaryrefslogtreecommitdiff
path: root/lib/Net/Amazon/Property
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Net/Amazon/Property')
-rw-r--r--lib/Net/Amazon/Property/Book.pm152
-rw-r--r--lib/Net/Amazon/Property/DVD.pm156
-rw-r--r--lib/Net/Amazon/Property/Music.pm161
3 files changed, 0 insertions, 469 deletions
diff --git a/lib/Net/Amazon/Property/Book.pm b/lib/Net/Amazon/Property/Book.pm
deleted file mode 100644
index 8a01756..0000000
--- a/lib/Net/Amazon/Property/Book.pm
+++ /dev/null
@@ -1,152 +0,0 @@
-######################################################################
-package Net::Amazon::Property::Book;
-######################################################################
-use warnings;
-use strict;
-use base qw(Net::Amazon::Property);
-
-__PACKAGE__->make_accessor($_) for qw(title publisher binding isbn);
-
-##################################################
-sub new {
-##################################################
- my($class, %options) = @_;
-
- my $self = $class->SUPER::new(%options);
- bless $self, $class; # Bless into this class
-
- if(exists $options{xmlref}) {
- $self->init_via_xmlref($options{xmlref});
- }
-
- return $self;
-}
-
-##################################################
-sub init_via_xmlref {
-##################################################
- my($self, $xmlref) = @_;
-
- $self->SUPER::init_via_xmlref($xmlref);
-
- $self->authors($xmlref->{Authors}->{Author});
- $self->title($xmlref->{ProductName});
- $self->publisher($xmlref->{Manufacturer});
- $self->binding($xmlref->{Media});
- $self->isbn($xmlref->{Isbn});
-}
-
-##################################################
-sub author {
-##################################################
- my($self, $nameref) = @_;
-
- # Only return the first author
- return ($self->authors($nameref))[0];
-}
-
-##################################################
-sub authors {
-##################################################
- my($self, $nameref) = @_;
-
- if(defined $nameref) {
- if(ref $nameref eq "ARRAY") {
- $self->{authors} = $nameref;
- } else {
- $self->{authors} = [$nameref];
- }
- }
-
- # Return a list
- return $self->{authors} ? @{$self->{authors}} : ();
-}
-
-##################################################
-sub as_string {
-##################################################
- my($self) = @_;
-
- return join('/', $self->authors) . ", " .
- '"' . $self->title . '"' . ", " .
- $self->year . ", " .
- $self->OurPrice . ", " .
- $self->Asin;
-}
-
-1;
-
-__END__
-
-=head1 NAME
-
-Net::Amazon::Property::Book - Class for books on amazon.com
-
-=head1 SYNOPSIS
-
- use Net::Amazon;
-
- # ...
-
- if($resp->is_success()) {
- for my $prop ($resp->properties) {
- print join("/", $prop->authors(), " ",
- $prop->title(), " ",
- $prop->publisher(), " ",
- $prop->year(), "\n";
- }
-
-=head1 DESCRIPTION
-
-C<Net::Amazon::Property::Book> is derived from
-C<Net::Amazon::Property> and on top of the all-purpose
-methods the base class provides, it offers specialized accessors for
-book parameters.
-
-=head2 METHODS
-
-=over 4
-
-=item authors()
-
-Returns a list of the book's authors. There's also a C<author()> method
-which just returns the I<first> author.
-
-=item publisher()
-
-Returns the book's publishing company as a string.
-
-=item title()
-
-Returns the book's title as a string.
-
-=item isbn()
-
-Returns the book's ISBN number.
-
-=item new(xmlref => $xmlref)
-
-Initializes an object by passing a hash of hashes structure containing
-the XML data returned from the service. Usually, this is just used by
-C<Net::Amazon> internally to initialize objects for on backcoming
-data.
-
-=back
-
-Check out L<Net::Amazon::Property> for all-purpose accessors, like
-C<year>, C<OurPrice>, C<ListPrice>, etc.
-
-=head1 SEE ALSO
-
-=head1 AUTHOR
-
-Mike Schilli, E<lt>m@perlmeister.comE<gt>
-
-=head1 COPYRIGHT AND LICENSE
-
-Copyright 2003 by Mike Schilli E<lt>m@perlmeister.comE<gt>
-
-This library is free software; you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
diff --git a/lib/Net/Amazon/Property/DVD.pm b/lib/Net/Amazon/Property/DVD.pm
deleted file mode 100644
index dc7fd5a..0000000
--- a/lib/Net/Amazon/Property/DVD.pm
+++ /dev/null
@@ -1,156 +0,0 @@
-######################################################################
-package Net::Amazon::Property::DVD;
-######################################################################
-use warnings;
-use strict;
-use base qw(Net::Amazon::Property);
-
-__PACKAGE__->make_accessor($_) for qw(title studio theatrical_release_date
- media nummedia upc mpaa_rating);
-__PACKAGE__->make_array_accessor($_) for qw(directors starring features);
-
-##################################################
-sub new {
-##################################################
- my($class, %options) = @_;
-
- my $self = $class->SUPER::new(%options);
- bless $self, $class; # Bless into this class
-
- if(exists $options{xmlref}) {
- $self->init_via_xmlref($options{xmlref});
- }
-
- return $self;
-}
-
-##################################################
-sub director {
-##################################################
- my($self, $nameref) = @_;
-
- # Only return the first director
- return ($self->directors($nameref))[0];
-}
-
-##################################################
-sub init_via_xmlref {
-##################################################
- my($self, $xmlref) = @_;
-
- $self->SUPER::init_via_xmlref($xmlref);
-
- $self->title($xmlref->{ProductName});
- $self->studio($xmlref->{Manufacturer});
- $self->directors($xmlref->{Directors}->{Director});
- $self->starring($xmlref->{Starring}->{Actor});
- $self->media($xmlref->{Media});
- $self->nummedia($xmlref->{NumMedia});
- $self->upc($xmlref->{Upc});
- $self->theatrical_release_date($xmlref->{TheatricalReleaseDate});
- $self->mpaa_rating($xmlref->{MpaaRating});
- $self->features($xmlref->{Features}->{Feature});
-}
-
-1;
-
-__END__
-
-=head1 NAME
-
-Net::Amazon::Property::DVD - Class for DVDs on amazon.com
-
-=head1 SYNOPSIS
-
- use Net::Amazon;
-
- # ...
-
- if($resp->is_success()) {
- for my $prop ($resp->properties) {
- print $_->title(), " ",
- $_->studio(), " ",
- $_->year(), "\n";
- }
-
-=head1 DESCRIPTION
-
-C<Net::Amazon::Property::DVD> is derived from
-C<Net::Amazon::Property> and on top of the all-purpose
-methods the base class provides, it offers specialized accessors for
-DVD parameters.
-
-=head2 METHODS
-
-=over 4
-
-=item title()
-
-Returns the title of the DVD.
-
-=item studio()
-
-Returns the studio.
-
-=item directors()
-
-Returns a list of directors. Note that there's also a director() method
-only returning the first director.
-
-=item starring()
-
-Returns a list of actors starring in the movie.
-
-=item upc()
-
-Returns the DVD's UPC as a string.
-
-=item media()
-
-Returns the DVD's media type as a string.
-
-=item nummedia()
-
-Returns the DVD's number of media (number of discs) as a string.
-Amazon doesn't always send this back, so if you get undef assume it
-is 1.
-
-=item theatrical_release_date()
-
-Returns the DVD's theatrical release date.
-
-=item mpaa_rating()
-
-Returns the DVD's MPAA rating.
-
-=item features()
-
-Returns the DVD's features as a list of strings. Examples:
-"Color", "Closed-captioned", "Widescreen".
-
-=item new(xmlref => $xmlref)
-
-Initializes an object by passing a hash of hashes structure containing
-the XML data returned from the service. Usually, this is just used by
-C<Net::Amazon> internally to initialize objects for on backcoming
-data.
-
-=back
-
-Check out L<Net::Amazon::Property> for all-purpose accessors, like
-C<year>, C<OurPrice>, C<ListPrice>, etc.
-
-=head1 SEE ALSO
-
-=head1 AUTHOR
-
-Mike Schilli, E<lt>m@perlmeister.comE<gt>
-
-=head1 COPYRIGHT AND LICENSE
-
-Copyright 2003 by Mike Schilli E<lt>m@perlmeister.comE<gt>
-
-This library is free software; you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
diff --git a/lib/Net/Amazon/Property/Music.pm b/lib/Net/Amazon/Property/Music.pm
deleted file mode 100644
index 59807be..0000000
--- a/lib/Net/Amazon/Property/Music.pm
+++ /dev/null
@@ -1,161 +0,0 @@
-######################################################################
-package Net::Amazon::Property::Music;
-######################################################################
-use warnings;
-use strict;
-use base qw(Net::Amazon::Property);
-
-__PACKAGE__->make_accessor($_) for qw(album label media nummedia upc);
-__PACKAGE__->make_array_accessor($_) for qw(artists tracks);
-
-##################################################
-sub new {
-##################################################
- my($class, %options) = @_;
-
- my $self = $class->SUPER::new(%options);
- bless $self, $class; # Bless into this class
-
- if(exists $options{xmlref}) {
- $self->init_via_xmlref($options{xmlref});
- }
-
- return $self;
-}
-
-##################################################
-sub artist {
-##################################################
- my($self, $nameref) = @_;
-
- # Only return the first artist
- return ($self->artists($nameref))[0];
-}
-
-##################################################
-sub init_via_xmlref {
-##################################################
- my($self, $xmlref) = @_;
-
- $self->SUPER::init_via_xmlref($xmlref);
-
- $self->artists($xmlref->{Artists}->{Artist});
- $self->tracks($xmlref->{Tracks}->{Track});
- $self->album($xmlref->{ProductName});
- $self->label($xmlref->{Manufacturer});
- $self->upc($xmlref->{Upc});
- $self->media($xmlref->{Media});
- $self->nummedia($xmlref->{NumMedia});
-}
-
-##################################################
-sub as_string {
-##################################################
- my($self) = @_;
-
- return join('/', $self->artists) . ", " .
- '"' . $self->album . '"' . ", " .
- $self->year . ", " .
- $self->OurPrice . ", " .
- $self->Asin;
-}
-
-1;
-
-__END__
-
-=head1 NAME
-
-Net::Amazon::Property::Music - Class for pop CDs on amazon.com
-
-=head1 SYNOPSIS
-
- use Net::Amazon;
-
- # ...
-
- if($resp->is_success()) {
- for my $prop ($resp->properties) {
- print join("/", $_->artists(), " ",
- $_->album(), " ",
- $_->label(), " ",
- $_->year(), " ";
- $_->upc(), " ";
- $_->media(), " ";
- $_->nummedia(), "\n";
- }
-
-=head1 DESCRIPTION
-
-C<Net::Amazon::Property::Music> is derived from
-C<Net::Amazon::Property> and on top of the all-purpose
-methods the base class provides, it offers specialized accessors for
-popular music CD parameters.
-
-=head2 METHODS
-
-=over 4
-
-=item artists()
-
-Returns a list of the CD's artists. There's also a C<artist()> method
-which just returns the first artist.
-
-=item tracks()
-
-Returns a list of the CD's track titles.
-
-=item label()
-
-Returns the music label as a string.
-
-=item album()
-
-Returns the CD's title as a string.
-
-=item upc()
-
-Returns the CD's UPC as a string.
-
-=item media()
-
-Returns the CD's media type as a string.
-
-=item nummedia()
-
-Returns the CD's number of media (number of discs) as a string.
-Amazon doesn't always send this back, so if you get undef assume it
-is 1.
-
-=item new(xmlref => $xmlref)
-
-Initializes an object by passing a hash of hashes structure containing
-the XML data returned from the service. Usually, this is just used by
-C<Net::Amazon> internally to initialize objects for on backcoming
-data.
-
-=back
-
-Check out L<Net::Amazon::Property> for all-purpose accessors, like
-C<year>, C<OurPrice>, C<ListPrice>, etc.
-
-=head1 SEE ALSO
-
-=head1 AUTHOR
-
-Mike Schilli, E<lt>m@perlmeister.comE<gt>
-
-=head1 THANKS
-
-Thanks to Padraic Renaghan E<lt>padraic@renaghan.com<gt> for adding
-the upc/media/nummedia fields.
-
-=head1 COPYRIGHT AND LICENSE
-
-Copyright 2003 by Mike Schilli E<lt>m@perlmeister.comE<gt>
-
-This library is free software; you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-