#include "multi_point.hpp" #include "line_string.hpp" #include "util.hpp" namespace mln { namespace android { namespace geojson { jni::Local> MultiPoint::New(JNIEnv& env, const mln::MultiPoint& multiPoint) { static auto& javaClass = jni::Class::Singleton(env); static auto method = javaClass.GetStaticMethod(jni::Object)>( env, "fromLngLats"); return javaClass.Call(env, method, asPointsList(env, multiPoint)); } mapbox::geojson::multi_point MultiPoint::convert(jni::JNIEnv& env, const jni::Object& jMultiPoint) { mapbox::geojson::multi_point multiPoint; if (jMultiPoint) { multiPoint = convertExplicit( LineString::convert(env, MultiPoint::coordinates(env, jMultiPoint))); } return multiPoint; } jni::Local> MultiPoint::coordinates(jni::JNIEnv& env, const jni::Object& jMultiPoint) { static auto& javaClass = jni::Class::Singleton(env); static auto method = javaClass.GetMethod()>(env, "coordinates"); return jMultiPoint.Call(env, method); } void MultiPoint::registerNative(jni::JNIEnv& env) { jni::Class::Singleton(env); } } // namespace geojson } // namespace android } // namespace mln