InfoSys::FreeDB::Response::Query - FreeDB query response
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 query response
InfoSys::FreeDB::Response::Query contains information about FreeDB query responses.
Creates a new InfoSys::FreeDB::Response::Query object. OPT_HASH_REF is a hash reference used to pass initialization options. OPT_HASH_REF is mandatory. On error an exception Error::Simple is thrown.
Options for OPT_HASH_REF may include:
exact_match
Passed to set_exact_match().
match
Passed to set_match(). Must be an ARRAY reference.
Options for OPT_HASH_REF inherited through package InfoSys::FreeDB::Response may include:
code
Passed to set_code(). Mandatory option.
error
Passed to set_error().
result
Passed to set_result(). Mandatory option.
Creates a new InfoSys::FreeDB::Response::Query object from the specified content reference. CONTENT_REF is a string reference. On error an exception Error::Simple is thrown.
Returns the count of items in ARRAY that are in the match list.
get_code()
This method is inherited from package InfoSys::FreeDB::Response. Returns the response code.
Returns an ARRAY containing the match 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_result()
This method is inherited from package InfoSys::FreeDB::Response. Returns the response result text.
is_error()
This method is inherited from package InfoSys::FreeDB::Response. Returns whether the response has an error or not.
is_exact_match()
Returns whether the query found an exact match or not.
pop_match()
Pop and return an element off the match list. On error an exception Error::Simple is thrown.
Push additional values on the match list. ARRAY is the list value. On error an exception Error::Simple is thrown.
ARRAY must be a (sub)class of:
This method is inherited from package InfoSys::FreeDB::Response. Set the response code. VALUE is the value. On error an exception Error::Simple is thrown.
This method is inherited from package InfoSys::FreeDB::Response. State that the response has an error. VALUE is the value. On error an exception Error::Simple is thrown.
State that the query found an exact match. VALUE is the value. On error an exception Error::Simple is thrown.
Set value in the match 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 the match list absolutely. ARRAY is the list value. On error an exception Error::Simple is thrown.
ARRAY must be a (sub)class of:
Set value in the match list. NUMBER is the integer index which is greater than 0. VALUE is the value.
ARRAY must be a (sub)class of:
This method is inherited from package InfoSys::FreeDB::Response. Set the response result text. VALUE is the value. On error an exception Error::Simple is thrown.
shift_match()
Shift and return an element off the match list. On error an exception Error::Simple is thrown.
Unshift additional values on the match list. ARRAY is the list value. On error an exception Error::Simple is thrown.
ARRAY must be a (sub)class of:
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 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::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: December 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