feat(geo location condition): add support for getting location path f… (#61) (#210)

geo location condition: add support for getting location path from parameters and cast integers.
diff --git a/plugins/baseplugin/src/main/java/org/apache/unomi/plugins/baseplugin/conditions/GeoLocationByPointSessionConditionESQueryBuilder.java b/plugins/baseplugin/src/main/java/org/apache/unomi/plugins/baseplugin/conditions/GeoLocationByPointSessionConditionESQueryBuilder.java
index 001bd3d..21d27b1 100644
--- a/plugins/baseplugin/src/main/java/org/apache/unomi/plugins/baseplugin/conditions/GeoLocationByPointSessionConditionESQueryBuilder.java
+++ b/plugins/baseplugin/src/main/java/org/apache/unomi/plugins/baseplugin/conditions/GeoLocationByPointSessionConditionESQueryBuilder.java
@@ -29,14 +29,15 @@
     @Override
     public QueryBuilder buildQuery(Condition condition, Map<String, Object> context, ConditionESQueryBuilderDispatcher dispatcher) {
         String type = (String) condition.getParameter("type");
+        String name = condition.getParameter("name") == null ? "location" : (String) condition.getParameter("name");
 
         if("circle".equals(type)) {
-            Double circleLatitude = (Double) condition.getParameter("circleLatitude");
-            Double circleLongitude = (Double) condition.getParameter("circleLongitude");
+            Double circleLatitude = ((Number) condition.getParameter("circleLatitude")).doubleValue();
+            Double circleLongitude = ((Number) condition.getParameter("circleLongitude")).doubleValue();
             String distance = condition.getParameter("distance").toString();
 
             if(circleLatitude != null && circleLongitude != null && distance != null) {
-                return QueryBuilders.geoDistanceQuery("location")
+                return QueryBuilders.geoDistanceQuery(name)
                         .point(circleLatitude, circleLongitude)
                         .distance(distance);
             }
@@ -47,7 +48,7 @@
             Double rectLongitudeSW = (Double) condition.getParameter("rectLongitudeSW");
 
             if(rectLatitudeNE != null && rectLongitudeNE != null && rectLatitudeSW != null && rectLongitudeSW != null) {
-                return QueryBuilders.geoBoundingBoxQuery("location")
+                return QueryBuilders.geoBoundingBoxQuery(name)
                         .setCorners(rectLatitudeNE, rectLongitudeNE,rectLatitudeSW, rectLongitudeSW);
             }
         }
diff --git a/plugins/baseplugin/src/main/resources/META-INF/cxs/conditions/geoLocationByPointSessionCondition.json b/plugins/baseplugin/src/main/resources/META-INF/cxs/conditions/geoLocationByPointSessionCondition.json
index 809d690..f33be79 100644
--- a/plugins/baseplugin/src/main/resources/META-INF/cxs/conditions/geoLocationByPointSessionCondition.json
+++ b/plugins/baseplugin/src/main/resources/META-INF/cxs/conditions/geoLocationByPointSessionCondition.json
@@ -54,6 +54,11 @@
       "id": "distance",
       "type": "string",
       "multivalued": false
+    },
+    {
+      "id": "name",
+      "type": "string",
+      "multivalued": false
     }
   ]
 }
\ No newline at end of file