From 89ba3ac2af0c2d58906793ea5826d706e73d8b87 Mon Sep 17 00:00:00 2001 From: oblonski <4sschroeder@gmail.com> Date: Fri, 19 Jul 2013 08:22:16 +0200 Subject: [PATCH] intro pickup and delivery --- .../src/main/java/basics/Delivery.java | 34 ++++++++++++++++++- jsprit-core/src/main/java/basics/Pickup.java | 25 ++++++++++++-- jsprit-core/src/main/java/basics/Service.java | 2 +- 3 files changed, 57 insertions(+), 4 deletions(-) diff --git a/jsprit-core/src/main/java/basics/Delivery.java b/jsprit-core/src/main/java/basics/Delivery.java index 626966c6..9bef41e2 100644 --- a/jsprit-core/src/main/java/basics/Delivery.java +++ b/jsprit-core/src/main/java/basics/Delivery.java @@ -1,6 +1,38 @@ package basics; -public class Delivery { + +public class Delivery extends Service{ + + public static class Builder extends Service.Builder { + + public static Builder newInstance(String id, int size){ + return new Builder(id,size); + } + + Builder(String id, int size) { + super(id, -1*size); + } + + public Delivery build(){ + return new Delivery(this); + } + + } + + Delivery(Builder builder) { + super(builder); + + } + + public static void main(String[] args) { + Delivery.Builder deliveryBuilder = Delivery.Builder.newInstance("myDelivery", 10); + Delivery delivery = (Delivery) deliveryBuilder.setLocationId("foo").build(); + + System.out.println("loc="+delivery.getLocationId()); + System.out.println("capDemand="+delivery.getCapacityDemand()); + } + + diff --git a/jsprit-core/src/main/java/basics/Pickup.java b/jsprit-core/src/main/java/basics/Pickup.java index 8b591dc8..066cd0fa 100644 --- a/jsprit-core/src/main/java/basics/Pickup.java +++ b/jsprit-core/src/main/java/basics/Pickup.java @@ -2,11 +2,32 @@ package basics; public class Pickup extends Service { - + public static class Builder extends Service.Builder { + + public static Builder newInstance(String id, int size){ + return new Builder(id,size); + } + + Builder(String id, int size) { + super(id, size); + } + + public Pickup build(){ + return new Pickup(this); + } + + } Pickup(Builder builder) { super(builder); - // TODO Auto-generated constructor stub + } + + public static void main(String[] args) { + Pickup.Builder pickupBuilder = Pickup.Builder.newInstance("myPick", 10); + Pickup pickup = (Pickup) pickupBuilder.setLocationId("foo").build(); + + System.out.println("loc="+pickup.getLocationId()); + System.out.println("capDemand="+pickup.getCapacityDemand()); } diff --git a/jsprit-core/src/main/java/basics/Service.java b/jsprit-core/src/main/java/basics/Service.java index 07730b9e..3ab6b8c1 100644 --- a/jsprit-core/src/main/java/basics/Service.java +++ b/jsprit-core/src/main/java/basics/Service.java @@ -40,7 +40,7 @@ public class Service implements Job { private TimeWindow timeWindow = TimeWindow.newInstance(0.0, Double.MAX_VALUE); private int demand; - private Builder(String id, int size) { + Builder(String id, int size) { super(); this.id = id; this.demand = size;