X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=perl%2Flib%2FIDZebra%2FResultset.pm;h=bf90d4be7e7c26dee9e30a6a88ffa9bc4e67510a;hb=924ac21637671fe586641fc29952ef5a78c7b7c5;hp=0831d9d6a05ef476dd5d265e965cf8f1e9a5bed5;hpb=3adbc5bfe003fd7b3a105782b551c5d18fe65104;p=idzebra-moved-to-github.git diff --git a/perl/lib/IDZebra/Resultset.pm b/perl/lib/IDZebra/Resultset.pm index 0831d9d..bf90d4b 100644 --- a/perl/lib/IDZebra/Resultset.pm +++ b/perl/lib/IDZebra/Resultset.pm @@ -34,6 +34,10 @@ sub new { $self->{errString} = $args{errString}; bless ($self, $class); + +# $self->{session}{resultsets}{$args{name}} = $self; +# weaken ($self->{session}{resultsets}{$args{name}}; + return ($self); } @@ -52,11 +56,10 @@ sub errString { return ($self->{errCode}); } +# ============================================================================= sub DESTROY { my ($self) = @_; -# print STDERR "Destroy RS\n"; - # Deleteresultset? if ($self->{odr_stream}) { @@ -66,6 +69,7 @@ sub DESTROY { } delete($self->{ro}); +# delete($self->{session}{resultsets}{$self->{name}}); delete($self->{session}); } # ----------------------------------------------------------------------------- @@ -79,6 +83,8 @@ sub records { my $schema = $args{schema} ? $args{schema} : ''; my $recordSyntax = $args{recordSyntax} ? $args{recordSyntax} : ''; + my $class = $args{class} ? $args{class} : ''; + my $ro = IDZebra::RetrievalObj->new(); IDZebra::records_retrieve($self->{session}{zh}, @@ -97,7 +103,11 @@ sub records { for (my $i=$from; $i<=$to; $i++) { my $rec = IDZebra::RetrievalRecord->new(); IDZebra::record_retrieve($ro, $self->{odr_stream}, $rec, $i-$from+1); - push (@res, $rec); + if ($class) { + + } else { + push (@res, $rec); + } } IDZebra::odr_reset($self->{odr_stream}); @@ -105,6 +115,7 @@ sub records { return (@res); } +# ============================================================================ sub sort { my ($self, $sortspec, $setname) = @_; unless ($setname) {