From 3d2e0f114bc4f80e13b82799324538b6a2a03bdf Mon Sep 17 00:00:00 2001 From: "Niels Erik G. Nielsen" Date: Thu, 2 May 2013 23:09:15 -0400 Subject: [PATCH] Exposing location checksums and offsets to ui/client --- .../com/indexdata/mkjsf/pazpar2/data/Location.java | 16 +++++++++++++++- .../indexdata/mkjsf/pazpar2/data/RecordResponse.java | 10 ++++++++-- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/indexdata/mkjsf/pazpar2/data/Location.java b/src/main/java/com/indexdata/mkjsf/pazpar2/data/Location.java index a3e6441..1dcb6c3 100644 --- a/src/main/java/com/indexdata/mkjsf/pazpar2/data/Location.java +++ b/src/main/java/com/indexdata/mkjsf/pazpar2/data/Location.java @@ -6,11 +6,17 @@ import com.indexdata.mkjsf.pazpar2.data.Pazpar2ResponseData; public class Location extends Pazpar2ResponseData { private static final long serialVersionUID = -1386527442857478225L; - + private int seqno = -1; + public String getId() { return getAttribute("id"); } + public String getChecksum() { + logger.debug("Request to get checksum"); + return getAttribute("checksum"); + } + public String getName () { return getAttribute("name"); } @@ -19,6 +25,14 @@ public class Location extends Pazpar2ResponseData { return getOneElementValue("md-subject"); } + public void setSequenceNumber(int num) { + seqno = num; + } + + public int getSequenceNumber () { + return seqno; + } + public String getSubjects() { StringBuilder builder = new StringBuilder(""); for (Pazpar2ResponseData data : getElements("md-subject")) { diff --git a/src/main/java/com/indexdata/mkjsf/pazpar2/data/RecordResponse.java b/src/main/java/com/indexdata/mkjsf/pazpar2/data/RecordResponse.java index fa5c9c8..566ea09 100644 --- a/src/main/java/com/indexdata/mkjsf/pazpar2/data/RecordResponse.java +++ b/src/main/java/com/indexdata/mkjsf/pazpar2/data/RecordResponse.java @@ -16,8 +16,14 @@ public class RecordResponse extends Pazpar2ResponseData { public List getLocations() { List locations = new ArrayList(); - for (Pazpar2ResponseData element : getElements("location")) { - locations.add((Location)element); + if (getElements("location")!=null) { + int i = 0; + for (Pazpar2ResponseData element : getElements("location")) { + ((Location)element).setSequenceNumber(i++); + locations.add((Location)element); + } + } else { + logger.debug("Found no locations"); } return locations; } -- 1.7.10.4