You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@unomi.apache.org by sh...@apache.org on 2016/12/21 20:32:14 UTC

[5/7] incubator-unomi git commit: - Use linked hash map in GeonameEntry to make sure that we conserve the order of the properties - Fix type mapping detection algorithm

- Use linked hash map in GeonameEntry to make sure that we conserve the order of the properties
- Fix type mapping detection algorithm

Signed-off-by: Serge Huber <sh...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/incubator-unomi/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-unomi/commit/8d54f8d9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-unomi/tree/8d54f8d9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-unomi/diff/8d54f8d9

Branch: refs/heads/feature-UNOMI-70-ES5X
Commit: 8d54f8d93c45187aaf9307932f461ecd9b6e9da9
Parents: 69bb3cc
Author: Serge Huber <sh...@apache.org>
Authored: Wed Dec 21 21:27:08 2016 +0100
Committer: Serge Huber <sh...@apache.org>
Committed: Wed Dec 21 21:27:08 2016 +0100

----------------------------------------------------------------------
 .../java/org/apache/unomi/geonames/services/GeonameEntry.java    | 4 ++--
 .../org/apache/unomi/geonames/services/GeonamesServiceImpl.java  | 4 +++-
 2 files changed, 5 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/8d54f8d9/extensions/geonames/services/src/main/java/org/apache/unomi/geonames/services/GeonameEntry.java
----------------------------------------------------------------------
diff --git a/extensions/geonames/services/src/main/java/org/apache/unomi/geonames/services/GeonameEntry.java b/extensions/geonames/services/src/main/java/org/apache/unomi/geonames/services/GeonameEntry.java
index 014a699..ac41a6e 100644
--- a/extensions/geonames/services/src/main/java/org/apache/unomi/geonames/services/GeonameEntry.java
+++ b/extensions/geonames/services/src/main/java/org/apache/unomi/geonames/services/GeonameEntry.java
@@ -20,7 +20,7 @@ package org.apache.unomi.geonames.services;
 import org.apache.unomi.api.Item;
 
 import java.util.Date;
-import java.util.HashMap;
+import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
 
@@ -56,7 +56,7 @@ public class GeonameEntry extends Item {
         this.name = name;
         this.asciiname = asciiname;
 //        this.alternatenames = alternatenames;
-        this.location = new HashMap<>();
+        this.location = new LinkedHashMap<>();
         this.location.put("lat",lat);
         this.location.put("lon",lon);
         this.featureClass = featureClass;

http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/8d54f8d9/extensions/geonames/services/src/main/java/org/apache/unomi/geonames/services/GeonamesServiceImpl.java
----------------------------------------------------------------------
diff --git a/extensions/geonames/services/src/main/java/org/apache/unomi/geonames/services/GeonamesServiceImpl.java b/extensions/geonames/services/src/main/java/org/apache/unomi/geonames/services/GeonamesServiceImpl.java
index 2b0a0dc..9bce9b2 100644
--- a/extensions/geonames/services/src/main/java/org/apache/unomi/geonames/services/GeonamesServiceImpl.java
+++ b/extensions/geonames/services/src/main/java/org/apache/unomi/geonames/services/GeonamesServiceImpl.java
@@ -98,7 +98,7 @@ public class GeonamesServiceImpl implements GeonamesService {
 
     private void importGeoNameDatabase(final File f, final Timer t) {
         Map<String,Map<String,Object>> typeMappings = persistenceService.getPropertiesMapping(GeonameEntry.ITEM_TYPE);
-        if (typeMappings == null) {
+        if (typeMappings == null || typeMappings.size() == 0) {
             logger.warn("Type mappings for type {} are not yet installed, delaying import until they are ready!", GeonameEntry.ITEM_TYPE);
             t.schedule(new TimerTask() {
                 @Override
@@ -107,6 +107,8 @@ public class GeonamesServiceImpl implements GeonamesService {
                 }
             }, 5000);
             return;
+        } else {
+            // let's check that the mappings are correct
         }
         try {