From 701402905fc7cea2bf1cd7caad97d22a02d64772 Mon Sep 17 00:00:00 2001 From: Nikolaus Krismer <niko@krismer.de> Date: Tue, 18 Mar 2014 20:35:18 +0100 Subject: [PATCH] fixed NPE --- .../java/it/unibz/inf/isochrone/algorithm/Isochrone.java | 8 ++++++-- .../java/it/unibz/inf/isochrone/algorithm/MDijkstra.java | 5 +---- src/main/java/it/unibz/inf/isochrone/algorithm/MineX.java | 5 +---- src/main/java/it/unibz/inf/isochrone/algorithm/MrneX.java | 5 +---- 4 files changed, 9 insertions(+), 14 deletions(-) diff --git a/src/main/java/it/unibz/inf/isochrone/algorithm/Isochrone.java b/src/main/java/it/unibz/inf/isochrone/algorithm/Isochrone.java index 73e70005..86661dab 100644 --- a/src/main/java/it/unibz/inf/isochrone/algorithm/Isochrone.java +++ b/src/main/java/it/unibz/inf/isochrone/algorithm/Isochrone.java @@ -37,10 +37,14 @@ public abstract class Isochrone { * Instantiates a new isochrone object. * * @param query The parameters for the isochrone + * @throws AlgorithmException thrown if there are no date codes in the databse for the specified query */ - public Isochrone(final Query query) { + public Isochrone(final ConfigDataset config, final Query query) throws AlgorithmException { this.query = query; - queue = new PriorityQueue<Node>(); + this.db = new Database<>(config, query.getMode(), query.getDir()); + this.queue = new PriorityQueue<Node>(); + + initDateCodes(); } /** diff --git a/src/main/java/it/unibz/inf/isochrone/algorithm/MDijkstra.java b/src/main/java/it/unibz/inf/isochrone/algorithm/MDijkstra.java index bd6d2688..b5a953be 100644 --- a/src/main/java/it/unibz/inf/isochrone/algorithm/MDijkstra.java +++ b/src/main/java/it/unibz/inf/isochrone/algorithm/MDijkstra.java @@ -1,7 +1,6 @@ package it.unibz.inf.isochrone.algorithm; import it.unibz.inf.isochrone.config.ConfigDataset; -import it.unibz.inf.isochrone.db.Database; import it.unibz.inf.isochrone.network.Link; import it.unibz.inf.isochrone.network.Node; import it.unibz.inf.isochrone.util.Query; @@ -23,10 +22,8 @@ public class MDijkstra extends Isochrone { private final Map<Integer, Link> links; public MDijkstra(final ConfigDataset config, final Query query) throws AlgorithmException { - super(query); + super(config, query); - initDateCodes(); - db = new Database<>(config, query.getMode(), query.getDir()); nodes = new HashMap<Integer, Node>(); links = new LinkedHashMap<Integer, Link>(); diff --git a/src/main/java/it/unibz/inf/isochrone/algorithm/MineX.java b/src/main/java/it/unibz/inf/isochrone/algorithm/MineX.java index bb44b802..7cbc5a1c 100644 --- a/src/main/java/it/unibz/inf/isochrone/algorithm/MineX.java +++ b/src/main/java/it/unibz/inf/isochrone/algorithm/MineX.java @@ -1,7 +1,6 @@ package it.unibz.inf.isochrone.algorithm; import it.unibz.inf.isochrone.config.ConfigDataset; -import it.unibz.inf.isochrone.db.Database; import it.unibz.inf.isochrone.network.Link; import it.unibz.inf.isochrone.network.Node; import it.unibz.inf.isochrone.util.Query; @@ -18,10 +17,8 @@ public class MineX extends Isochrone { private final Map<Integer, Node> nodes; public MineX(final ConfigDataset config, final Query query) throws AlgorithmException { - super(query); + super(config, query); - initDateCodes(); - db = new Database<>(config, query.getMode(), query.getDir()); nodes = new HashMap<Integer, Node>(); } diff --git a/src/main/java/it/unibz/inf/isochrone/algorithm/MrneX.java b/src/main/java/it/unibz/inf/isochrone/algorithm/MrneX.java index 66c775db..d73c018a 100644 --- a/src/main/java/it/unibz/inf/isochrone/algorithm/MrneX.java +++ b/src/main/java/it/unibz/inf/isochrone/algorithm/MrneX.java @@ -1,7 +1,6 @@ package it.unibz.inf.isochrone.algorithm; import it.unibz.inf.isochrone.config.ConfigDataset; -import it.unibz.inf.isochrone.db.Database; import it.unibz.inf.isochrone.network.Link; import it.unibz.inf.isochrone.network.Node; import it.unibz.inf.isochrone.util.DistanceAlgorithm; @@ -33,10 +32,8 @@ public class MrneX extends Isochrone { } public MrneX(final ConfigDataset config, final Query query, final int maxMemorySize) throws AlgorithmException { - super(query); + super(config, query); - initDateCodes(); - db = new Database<>(config, query.getMode(), query.getDir()); maxDuration = query.getDuration().intValue(); maxMemory = maxMemorySize; nodes = new HashMap<Integer, Node>(); -- GitLab