--- dao/FuldDaekningWorker/src/dk/daoas/fulddaekning/LookupWorker.java 2014/09/22 10:17:38 2228 +++ dao/FuldDaekningWorker/src/dk/daoas/fulddaekning/LookupWorker.java 2014/09/22 11:55:47 2229 @@ -6,6 +6,11 @@ import java.util.logging.Logger; public class LookupWorker implements Runnable { + class LookupResult { + double bedsteAfstand = 9999999.999; + Adresse bedsteAdr = null; + } + Logger logger = Logger.getLogger( LookupWorker.class.getName() ); int workerId; @@ -31,41 +36,25 @@ while ( (qAdresse = queue.poll()) != null) { //logger.info("Worker " + workerId + ", analyzing " + qAdresse); - double bedsteAfstand = 9999999.999; - Adresse bedsteAdr = null; - for (int i=0; i" + bedsteAdr + " ::: " + bedsteAfstand ); + logger.info("(" +workerId + ") Bedste: " + qAdresse + "==>" + result.bedsteAdr + " ::: " + result.bedsteAfstand ); } try { - db.gemResultat(qAdresse, bedsteAdr, bedsteAfstand); + db.gemResultat(qAdresse, result.bedsteAdr, result.bedsteAfstand); } catch (SQLException e) { logger.log(Level.WARNING, "Error saving result", e); logger.warning("Shutting down"); @@ -73,7 +62,7 @@ System.exit(0); //hvis at indsættelsen fejler skal vi afbryde med det samme } } else { - logger.info("(" +workerId + ") For stor afstand " + qAdresse + " -> " + bedsteAfstand); + logger.info("(" +workerId + ") For stor afstand " + qAdresse + " -> " + result.bedsteAfstand); } } else { logger.warning("(" +workerId + ") Ingen match til " + qAdresse); @@ -84,5 +73,21 @@ lookup.shutdownWorker( workerId); } + + LookupResult findBedsteAdresse(Adresse qAdresse, Adresse daekkede[]) { + LookupResult result = new LookupResult(); + + for (int i=0; i