3 import org.yaz4j.jni.SWIGTYPE_p_ZOOM_connection_p;
4 import org.yaz4j.jni.SWIGTYPE_p_ZOOM_record_p;
5 import org.yaz4j.jni.SWIGTYPE_p_ZOOM_resultset_p;
6 import org.yaz4j.jni.yaz4jlib;
8 public class ResultSet {
10 private SWIGTYPE_p_ZOOM_resultset_p resultSet;
11 private SWIGTYPE_p_ZOOM_connection_p connection;
12 private long size = 0;
13 private Record[] records = null;
14 private boolean disposed = false;
16 ResultSet(SWIGTYPE_p_ZOOM_resultset_p resultSet, SWIGTYPE_p_ZOOM_connection_p connection) {
17 this.resultSet = resultSet;
18 this.connection = connection;
19 size = yaz4jlib.ZOOM_resultset_size(this.resultSet);
20 records = new Record[(int) size];
23 public void finalize() {
27 ResultSetOptionsCollection getResultSetOptions() {
28 return new ResultSetOptionsCollection(resultSet);
31 public Record getRecord(int index) {
32 if (records[index] == null) {
33 SWIGTYPE_p_ZOOM_record_p recordTemp = yaz4jlib.ZOOM_resultset_record(resultSet, index);
34 records[index] = new Record(recordTemp, this);
37 return this.records[index];
40 public int getSize() {
44 public void Dispose() {
46 for (int i = 0; i < records.length; i++) {
47 if (records[i] != null) {
52 yaz4jlib.ZOOM_resultset_destroy(resultSet);