From b9da9b9a06e5e333bfb0700197f89c84f9529325 Mon Sep 17 00:00:00 2001 From: oblonski Date: Tue, 16 May 2017 20:50:08 +0200 Subject: [PATCH] make reason tracker more robust --- .../jsprit/core/util/UnassignedJobReasonTracker.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/util/UnassignedJobReasonTracker.java b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/util/UnassignedJobReasonTracker.java index 34873590..0a999953 100644 --- a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/util/UnassignedJobReasonTracker.java +++ b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/util/UnassignedJobReasonTracker.java @@ -114,6 +114,7 @@ public class UnassignedJobReasonTracker implements JobUnassignedListener { * @return */ public int getMostLikelyReasonCode(String jobId) { + if (!this.reasons.containsKey(jobId)) return -1; Frequency reasons = this.reasons.get(jobId); String mostLikelyReason = getMostLikely(reasons); return toCode(mostLikelyReason); @@ -126,6 +127,7 @@ public class UnassignedJobReasonTracker implements JobUnassignedListener { * @return */ public String getMostLikelyReason(String jobId) { + if (!this.reasons.containsKey(jobId)) return "no reason found"; Frequency reasons = this.reasons.get(jobId); String mostLikelyReason = getMostLikely(reasons); int code = toCode(mostLikelyReason); @@ -140,6 +142,7 @@ public class UnassignedJobReasonTracker implements JobUnassignedListener { } private String getMostLikely(Frequency reasons) { + if (reasons == null) return "no reason found"; Iterator, Long>> entryIterator = reasons.entrySetIterator(); int maxCount = 0; String mostLikely = null;