summaryrefslogtreecommitdiff
path: root/platform/android/src/geojson/line_string.cpp
diff options
context:
space:
mode:
authorIvo van Dongen <info@ivovandongen.nl>2018-03-13 12:31:56 +0200
committerIvo van Dongen <ivovandongen@users.noreply.github.com>2018-03-19 11:19:09 +0200
commit2464520da18f0f4cc7532adb3fb7b1f8f195304e (patch)
tree8a391da645a7a84fce5ba2e05a0ef2422474d0cd /platform/android/src/geojson/line_string.cpp
parentf2fbe69b32d7683d489b1f259b6db49070736980 (diff)
downloadqtlocation-mapboxgl-2464520da18f0f4cc7532adb3fb7b1f8f195304e.tar.gz
[android] high-level jni bindings for geojson conversion
Diffstat (limited to 'platform/android/src/geojson/line_string.cpp')
-rw-r--r--platform/android/src/geojson/line_string.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/platform/android/src/geojson/line_string.cpp b/platform/android/src/geojson/line_string.cpp
index 8eebd53550..a5f1a468ce 100644
--- a/platform/android/src/geojson/line_string.cpp
+++ b/platform/android/src/geojson/line_string.cpp
@@ -1,11 +1,22 @@
#include "line_string.hpp"
-
#include "point.hpp"
+#include "util.hpp"
+#include "../java/util.hpp"
namespace mbgl {
namespace android {
namespace geojson {
+jni::Object<LineString> LineString::New(jni::JNIEnv& env, const mbgl::LineString<double>& lineString) {
+ auto jList = asPointsList(env, lineString);
+
+ static auto method = javaClass.GetStaticMethod<jni::Object<LineString>(jni::Object<java::util::List>)>(env, "fromLngLats");
+ auto jLineString = javaClass.Call(env, method, jList);
+
+ jni::DeleteLocalRef(env, jList);
+ return jLineString;
+}
+
mapbox::geojson::line_string LineString::convert(jni::JNIEnv &env, jni::Object<LineString> jLineString) {
mapbox::geojson::line_string lineString;