That's it for today
[idzebra-moved-to-github.git] / perl / lib / IDZebra / Resultset.pm
index 0831d9d..bf90d4b 100644 (file)
@@ -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) {