X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fyaz4j%2FResultSet.java;h=75bdc8549a654f7f64f283b907d4c328761c442c;hb=06909ae14ede94b3b40dd64fbbc3aec3c6727796;hp=3d89bd7495b3b750aed389efa24b72b98887c94d;hpb=33d1aad77498f4da7efd5623a10ca4a423dd5885;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 3d89bd7..75bdc85 100644 --- a/src/main/java/org/yaz4j/ResultSet.java +++ b/src/main/java/org/yaz4j/ResultSet.java @@ -1,5 +1,6 @@ package org.yaz4j; +import org.yaz4j.exception.ZoomException; import org.yaz4j.jni.SWIGTYPE_p_ZOOM_record_p; import org.yaz4j.jni.SWIGTYPE_p_ZOOM_resultset_p; import org.yaz4j.jni.yaz4jlib; @@ -42,13 +43,19 @@ public class ResultSet { return this; } - public Record getRecord(int index) { + public Record getRecord(int index) throws ZoomException { SWIGTYPE_p_ZOOM_record_p record = yaz4jlib.ZOOM_resultset_record(resultSet, index); + //may be out of range or unsupported syntax + if (record == null) { + return null; + } + int errorCode = yaz4jlib.ZOOM_record_error(record, null, null, null); + if (errorCode != 0) throw new ZoomException("Record excpetion, code " + errorCode); return new Record(record, this); } - public long getSize() { + public long getHitCount() { return size; }