X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fyaz4j%2FResultSet.java;h=3d89bd7495b3b750aed389efa24b72b98887c94d;hb=33d1aad77498f4da7efd5623a10ca4a423dd5885;hp=74275a1922331b654393cbdefae459d811ef56ce;hpb=51cc88d374e72f4c93a4721c2094e028a6ffae85;p=yaz4j-moved-to-github.git diff --git a/src/main/java/org/yaz4j/ResultSet.java b/src/main/java/org/yaz4j/ResultSet.java index 74275a1..3d89bd7 100644 --- a/src/main/java/org/yaz4j/ResultSet.java +++ b/src/main/java/org/yaz4j/ResultSet.java @@ -1,21 +1,20 @@ package org.yaz4j; -import org.yaz4j.jni.SWIGTYPE_p_ZOOM_connection_p; import org.yaz4j.jni.SWIGTYPE_p_ZOOM_record_p; import org.yaz4j.jni.SWIGTYPE_p_ZOOM_resultset_p; import org.yaz4j.jni.yaz4jlib; public class ResultSet { - + //for GC refcount + private Connection conn; private SWIGTYPE_p_ZOOM_resultset_p resultSet; - private SWIGTYPE_p_ZOOM_connection_p connection; private long size = 0; private boolean disposed = false; - ResultSet(SWIGTYPE_p_ZOOM_resultset_p resultSet, SWIGTYPE_p_ZOOM_connection_p connection) { + ResultSet(SWIGTYPE_p_ZOOM_resultset_p resultSet, Connection conn) { this.resultSet = resultSet; - this.connection = connection; size = yaz4jlib.ZOOM_resultset_size(this.resultSet); + this.conn = conn; } @Override @@ -44,8 +43,9 @@ public class ResultSet { } public Record getRecord(int index) { - SWIGTYPE_p_ZOOM_record_p recordTemp = yaz4jlib.ZOOM_resultset_record(resultSet, index); - return new Record(recordTemp, this); + SWIGTYPE_p_ZOOM_record_p record = + yaz4jlib.ZOOM_resultset_record(resultSet, index); + return new Record(record, this); } public long getSize() { @@ -55,9 +55,9 @@ public class ResultSet { void _dispose() { if (!disposed) { yaz4jlib.ZOOM_resultset_destroy(resultSet); - connection = null; resultSet = null; + conn = null; disposed = true; } } -} \ No newline at end of file +}