Mercurial > dive4elements > river
diff artifacts/src/main/java/org/dive4elements/river/artifacts/model/fixings/FixReferenceEventsFacet.java @ 6875:437856cec419
FixA: Fixed reference events mapping. TODO: Same for analysis periods.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Tue, 20 Aug 2013 19:24:26 +0200 |
parents | 6848c5c8fc23 |
children | e4606eae8ea5 |
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/model/fixings/FixReferenceEventsFacet.java Tue Aug 20 11:20:25 2013 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/model/fixings/FixReferenceEventsFacet.java Tue Aug 20 19:24:26 2013 +0200 @@ -82,19 +82,15 @@ KMIndex<QWD []> kmQWs = result.getReferenced(); KMIndex.Entry<QWD []> kmQWsEntry = kmQWs.binarySearch(currentKm); - - if (kmQWsEntry == null) { - return null; + if (kmQWsEntry != null) { + int ndx = index & 255; + for (QWD qwd: kmQWsEntry.getValue()) { + if (qwd.getIndex() == ndx) { + return qwd; + } + } } - - // The lower eight bits contain the index of the point. - int ndx = index & 255; - QWD [] qwds = kmQWsEntry.getValue(); - if (ndx >= qwds.length) { - logger.error("index too large: " + ndx + " " + qwds.length); - return null; - } - return qwds[ndx]; + return null; }