From 26a7ce54227f7672a96bed8e1d580c9549f6ec90 Mon Sep 17 00:00:00 2001 From: oblonski Date: Mon, 23 Oct 2017 21:57:17 +0200 Subject: [PATCH 1/2] add helper methods - related to #380 --- .../jsprit/core/problem/job/Service.java | 9 +++++++-- .../jsprit/core/problem/job/Shipment.java | 14 ++++++++++++-- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/problem/job/Service.java b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/problem/job/Service.java index ab54929e..4f8a1e96 100644 --- a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/problem/job/Service.java +++ b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/problem/job/Service.java @@ -17,8 +17,6 @@ */ package com.graphhopper.jsprit.core.problem.job; -import java.util.Collection; - import com.graphhopper.jsprit.core.problem.AbstractJob; import com.graphhopper.jsprit.core.problem.Capacity; import com.graphhopper.jsprit.core.problem.Location; @@ -28,6 +26,8 @@ import com.graphhopper.jsprit.core.problem.solution.route.activity.TimeWindows; import com.graphhopper.jsprit.core.problem.solution.route.activity.TimeWindowsImpl; import com.graphhopper.jsprit.core.util.Coordinate; +import java.util.Collection; + /** * Service implementation of a job. *

@@ -194,6 +194,11 @@ public class Service extends AbstractJob { return addTimeWindow(TimeWindow.newInstance(earliest, latest)); } + public Builder addAllTimeWindows(Collection timeWindows) { + for (TimeWindow tw : timeWindows) addTimeWindow(tw); + return this; + } + /** * Builds the service. * diff --git a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/problem/job/Shipment.java b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/problem/job/Shipment.java index 22c551cd..6b1a75cd 100644 --- a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/problem/job/Shipment.java +++ b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/problem/job/Shipment.java @@ -17,8 +17,6 @@ */ package com.graphhopper.jsprit.core.problem.job; -import java.util.Collection; - import com.graphhopper.jsprit.core.problem.AbstractJob; import com.graphhopper.jsprit.core.problem.Capacity; import com.graphhopper.jsprit.core.problem.Location; @@ -26,6 +24,8 @@ import com.graphhopper.jsprit.core.problem.Skills; import com.graphhopper.jsprit.core.problem.solution.route.activity.TimeWindow; import com.graphhopper.jsprit.core.problem.solution.route.activity.TimeWindowsImpl; +import java.util.Collection; + /** * Shipment is an implementation of Job and consists of a pickup and a delivery of something. @@ -277,6 +277,11 @@ public class Shipment extends AbstractJob { return this; } + public Builder addAllDeliveryTimeWindows(Collection timeWindow) { + for (TimeWindow tw : timeWindow) addDeliveryTimeWindow(tw); + return this; + } + public Builder addPickupTimeWindow(TimeWindow timeWindow) { if(timeWindow == null) throw new IllegalArgumentException("time-window arg must not be null"); if(!pickupTimeWindowAdded){ @@ -291,6 +296,11 @@ public class Shipment extends AbstractJob { return addPickupTimeWindow(TimeWindow.newInstance(earliest, latest)); } + public Builder addAllPickupTimeWindows(Collection timeWindow) { + for (TimeWindow tw : timeWindow) addPickupTimeWindow(tw); + return this; + } + /** * Set priority to shipment. Only 1 (high) to 10 (low) are allowed. *

From d573146e35587fdb6bd849ab1a74953bfae157e8 Mon Sep 17 00:00:00 2001 From: oblonski Date: Mon, 23 Oct 2017 22:16:10 +0200 Subject: [PATCH 2/2] add helper methods - related to #380 --- .../jsprit/core/problem/job/Service.java | 2 +- .../jsprit/core/problem/job/Shipment.java | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/problem/job/Service.java b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/problem/job/Service.java index 4f8a1e96..3be5dad5 100644 --- a/jsprit-core/src/main/java/com/graphhopper/jsprit/core/problem/job/Service.java +++ b/jsprit-core/src/main/java/com/graphhopper/jsprit/core/problem/job/Service.java @@ -232,7 +232,7 @@ public class Service extends AbstractJob { public Builder addAllSizeDimensions(Capacity size){ for(int i=0;i