-# $Id: Search.pm,v 1.14 2007-05-01 15:32:06 mike Exp $
package ZOOM::IRSpy::Task::Search;
my $query;
if ($qtype eq "pqf") {
- $query = new ZOOM::Query::Prefix($qstr);
+ $query = new ZOOM::Query::PQF($qstr);
} elsif ($qtype eq "cql") {
$query = new ZOOM::Query::CQL($qstr);
} else {
# APPLICATION'S RESPONSIBILITY to ensure that the callback
# invoked on success OR FAILURE makes arrangements for the set
# to be destroyed.
- $this->{rs} = $conn->search($query);
+ eval {
+ $this->{rs} = $conn->search($query);
+ }; if ($@) {
+ die "remote search '$query' had error: '$@'";
+ }
+
warn "no ZOOM-C level events queued by $this"
if $conn->is_idle();
$this->set_options();
}
+# Unique to Task::Search, used only for logging
+sub render_query {
+ my $this = shift();
+ return $this->{qtype} . ":" . $this->{qstr}
+}
+
sub render {
my $this = shift();
- return ref($this) . "(" . $this->{qtype} . ":" . $this->{qstr} . ")";
+ return ref($this) . "(" . $this->render_query() . ")";
}
use overload '""' => \&render;