InfoSys::FreeDB::Entry - FreeDB entry
require InfoSys::FreeDB; require InfoSys::FreeDB::Entry; # Read entry from the default CD device my $entry = InfoSys::FreeDB::Entry->new_from_cdparanoia(); # Create a HTTP connection my $fact = InfoSys::FreeDB->new(); my $conn = $fact->create_connection( { client_name => 'testing-InfoSys::FreeDB', client_version => $InfoSys::FreeDB::VERSION, } ); # Query FreeDB my $res_q = $conn->query( $entry ); scalar( $res_q->get_match() ) || die 'no matches found for the disck in the default CD-Rom drive'; # Read the first match my $res_r = $conn->read( ( $res_q->get_match() )[0] ); # Write the entry to STDERR use IO::Handle; my $fh = IO::Handle->new_from_fd( fileno(STDERR), 'w' ); $res_r->get_entry()->write_fh( $fh );
FreeDB entry
InfoSys::FreeDB::Entry contains information on FreeDB entries.
Creates a new InfoSys::FreeDB::Entry object. OPT_HASH_REF is a hash reference used to pass initialization options. On error an exception Error::Simple is thrown.
Options for OPT_HASH_REF may include:
artist
Passed to set_artist().
client_comment
Passed to set_client_comment().
client_name
Passed to set_client_name().
client_version
Passed to set_client_version().
disc_length
Passed to set_disc_length().
discid
Passed to set_discid().
extd
Passed to set_extd().
genre
Passed to set_genre().
revision
Passed to set_revision().
title
Passed to set_title().
track
Passed to set_track(). Must be an ARRAY reference.
year
Passed to set_year().
Creates a new InfoSys::FreeDB::Entry object from the specified array reference. ARRAY_REF is an array reference containing the lines of the entry file. On error an exception Error::Simple is thrown.
Creates a new InfoSys::FreeDB::Entry object using cdparanoia. If specified, DEVICE is used as CD-Rom device name. Otherwise the default cdparanoia CD-Rom device is used. On error an exception Error::Simple is thrown.
Creates a new InfoSys::FreeDB::Entry object from the specified file handle. FILE_HANDLE is a IO::Handle object. On error an exception Error::Simple is thrown.
Creates a new InfoSys::FreeDB::Entry object from the specified file. FILE is a file name. On error an exception Error::Simple is thrown.
Returns the count of items in ARRAY that are in the entry track list.
get_artist()
Returns the entry artist.
get_client_comment()
Returns the entry client comment.
get_client_name()
Returns the entry client name.
get_client_version()
Returns the entry client version.
get_disc_length()
Returns the entry disc length.
get_discid()
Returns the entry discid.
get_extd()
Returns the entry extd.
get_genre()
Returns the entry genre.
get_revision()
Returns the entry revision.
get_title()
Returns the entry title.
Returns an ARRAY containing the entry track list. INDEX_ARRAY is an optional list of indexes which when specified causes only the indexed elements in the ordered list to be returned. If not specified, all elements are returned.
get_year()
Returns the entry year.
mk_discid()
Calculates the FreeDB disc ID and stores it through method set_discid(). Note that in the InfoSys::FreeDB::Connectionclasses the method discid() lets the FreeDB server calculate the disc ID.
pop_track()
Pop and return an element off the entry track list. On error an exception Error::Simple is thrown.
Push additional values on the entry track list. ARRAY is the list value. On error an exception Error::Simple is thrown.
ARRAY must be a (sub)class of:
Set the entry artist. VALUE is the value. On error an exception Error::Simple is thrown.
Set the entry client comment. VALUE is the value. On error an exception Error::Simple is thrown.
Set the entry client name. VALUE is the value. On error an exception Error::Simple is thrown.
Set the entry client version. VALUE is the value. On error an exception Error::Simple is thrown.
Set the entry disc length. VALUE is the value. On error an exception Error::Simple is thrown.
Set the entry discid. VALUE is the value. On error an exception Error::Simple is thrown.
Set the entry extd. VALUE is the value. On error an exception Error::Simple is thrown.
Set the entry genre. VALUE is the value. On error an exception Error::Simple is thrown.
Set value in the entry track list. INDEX is the integer index which is greater than or equal to 0. VALUE is the value.
ARRAY must be a (sub)class of:
Set value in the entry track list. NUMBER is the integer index which is greater than 0. VALUE is the value.
ARRAY must be a (sub)class of:
Set the entry revision. VALUE is the value. On error an exception Error::Simple is thrown.
Set the entry title. VALUE is the value. On error an exception Error::Simple is thrown.
Set the entry track list absolutely. ARRAY is the list value. On error an exception Error::Simple is thrown.
ARRAY must be a (sub)class of:
Set the entry year. VALUE is the value. On error an exception Error::Simple is thrown.
shift_track()
Shift and return an element off the entry track list. On error an exception Error::Simple is thrown.
Unshift additional values on the entry track list. ARRAY is the list value. On error an exception Error::Simple is thrown.
ARRAY must be a (sub)class of:
write_array_ref()
Writes the entry to an ARRAY and retuens a reference to the ARRAY. On error an exception Error::Simple is thrown.
Writes the entry to the specified file handle. FILE_HANDLE is a IO::Handle object. On error an exception Error::Simple is thrown.
Writes the entry to the specified file. FILE is file name. On error an exception Error::Simple is thrown.
the InfoSys::FreeDB manpage, the InfoSys::FreeDB::Connection manpage, the InfoSys::FreeDB::Connection::CDDBP manpage, the InfoSys::FreeDB::Connection::HTTP manpage, the InfoSys::FreeDB::Entry::Track manpage, the InfoSys::FreeDB::Match manpage, the InfoSys::FreeDB::Response manpage, the InfoSys::FreeDB::Response::DiscId manpage, the InfoSys::FreeDB::Response::Hello manpage, the InfoSys::FreeDB::Response::LsCat manpage, the InfoSys::FreeDB::Response::Motd manpage, the InfoSys::FreeDB::Response::Proto manpage, the InfoSys::FreeDB::Response::Query manpage, the InfoSys::FreeDB::Response::Quit manpage, the InfoSys::FreeDB::Response::Read manpage, the InfoSys::FreeDB::Response::SignOn manpage, the InfoSys::FreeDB::Response::Sites manpage, the InfoSys::FreeDB::Response::Stat manpage, the InfoSys::FreeDB::Response::Ver manpage, the InfoSys::FreeDB::Response::Whom manpage, the InfoSys::FreeDB::Response::Write::1 manpage, the InfoSys::FreeDB::Response::Write::2 manpage, the InfoSys::FreeDB::Site manpage
None known (yet.)
First development: September 2003 Last update: November 2003
Vincenzo Zocca
Copyright 2003 by Vincenzo Zocca
This file is part of the InfoSys::FreeDB module hierarchy for Perl by
Vincenzo Zocca.
The InfoSys::FreeDB module hierarchy is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
The InfoSys::FreeDB module hierarchy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with the InfoSys::FreeDB module hierarchy; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA