From 2842f27f28c894a09644723e7c8172ab271e2c79 Mon Sep 17 00:00:00 2001 From: Arsentiy Milchakov Date: Wed, 20 Nov 2019 18:26:24 +0300 Subject: [PATCH] [promo][jni] tour category parameter is added. --- android/jni/com/mapswithme/maps/promo/Promo.cpp | 6 ++++-- .../com/mapswithme/maps/promo/PromoCityGallery.java | 13 +++++++++++-- partners_api/promo_api.cpp | 1 + partners_api/promo_api.hpp | 1 + 4 files changed, 17 insertions(+), 4 deletions(-) diff --git a/android/jni/com/mapswithme/maps/promo/Promo.cpp b/android/jni/com/mapswithme/maps/promo/Promo.cpp index a1963fb03f..b9ce1d3c88 100644 --- a/android/jni/com/mapswithme/maps/promo/Promo.cpp +++ b/android/jni/com/mapswithme/maps/promo/Promo.cpp @@ -44,7 +44,7 @@ void PrepareClassRefs(JNIEnv * env) g_itemConstructor = jni::GetConstructorID(env, g_itemClass, "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;" - "Ljava/lang/String;Ljava/lang/String;" + "Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;" "Lcom/mapswithme/maps/promo/PromoCityGallery$Place;" "Lcom/mapswithme/maps/promo/PromoCityGallery$Author;" "Lcom/mapswithme/maps/promo/PromoCityGallery$LuxCategory;)V"); @@ -114,6 +114,7 @@ jobject MakeCityGallery(JNIEnv * env, promo::CityGallery const & gallery) jni::TScopedLocalRef imageUrl(env, jni::ToJavaString(env, item.m_imageUrl)); jni::TScopedLocalRef access(env, jni::ToJavaString(env, item.m_access)); jni::TScopedLocalRef tier(env, jni::ToJavaString(env, item.m_tier)); + jni::TScopedLocalRef tourCategory(env, jni::ToJavaString(env, item.m_tourCategory)); jni::TScopedLocalRef placeName(env, jni::ToJavaString(env, item.m_place.m_name)); jni::TScopedLocalRef placeDescription(env, jni::ToJavaString(env, item.m_place.m_description)); jni::TScopedLocalRef authorId(env, jni::ToJavaString(env, item.m_author.m_id)); @@ -130,7 +131,8 @@ jobject MakeCityGallery(JNIEnv * env, promo::CityGallery const & gallery) luxCategoryColor.get())); return env->NewObject(g_itemClass, g_itemConstructor, name.get(), url.get(), imageUrl.get(), - access.get(), tier.get(), place.get(), author.get(), luxCategory.get()); + access.get(), tier.get(), tourCategory.get(), place.get(), author.get(), + luxCategory.get()); }; jni::TScopedLocalObjectArrayRef items(env, jni::ToJavaArray(env, g_itemClass, gallery.m_items, diff --git a/android/src/com/mapswithme/maps/promo/PromoCityGallery.java b/android/src/com/mapswithme/maps/promo/PromoCityGallery.java index dcf7d53a27..7d977c5851 100644 --- a/android/src/com/mapswithme/maps/promo/PromoCityGallery.java +++ b/android/src/com/mapswithme/maps/promo/PromoCityGallery.java @@ -52,6 +52,8 @@ public final class PromoCityGallery @NonNull private final String mTier; @NonNull + private final String mTourCategory; + @NonNull private final Place mPlace; @NonNull private final Author mAuthor; @@ -59,14 +61,15 @@ public final class PromoCityGallery private final LuxCategory mLuxCategory; public Item(@NonNull String name, @NonNull String url, @NonNull String imageUrl, - @NonNull String access, @NonNull String tier, @NonNull Place place, - @NonNull Author author, @Nullable LuxCategory luxCategory) + @NonNull String access, @NonNull String tier, @NonNull String tourCategory, + @NonNull Place place, @NonNull Author author, @Nullable LuxCategory luxCategory) { mName = name; mUrl = url; mImageUrl = imageUrl; mAccess = access; mTier = tier; + mTourCategory = tourCategory; mPlace = place; mAuthor = author; mLuxCategory = luxCategory; @@ -102,6 +105,12 @@ public final class PromoCityGallery return mTier; } + @NonNull + public String getTourCategory() + { + return mTourCategory; + } + @NonNull public Place getPlace() { diff --git a/partners_api/promo_api.cpp b/partners_api/promo_api.cpp index 9b01733c15..8da6a17931 100644 --- a/partners_api/promo_api.cpp +++ b/partners_api/promo_api.cpp @@ -64,6 +64,7 @@ void ParseCityGallery(std::string const & src, UTM utm, promo::CityGallery & res FromJSONObject(obj, "access", item.m_access); FromJSONObjectOptionalField(obj, "image_url", item.m_imageUrl); FromJSONObjectOptionalField(obj, "tier", item.m_tier); + FromJSONObjectOptionalField(obj, "tour_category", item.m_tourCategory); auto const placeObj = json_object_get(obj, "place"); if (json_is_object(placeObj)) diff --git a/partners_api/promo_api.hpp b/partners_api/promo_api.hpp index c16d33bc87..8e422e4b54 100644 --- a/partners_api/promo_api.hpp +++ b/partners_api/promo_api.hpp @@ -44,6 +44,7 @@ struct CityGallery std::string m_imageUrl; std::string m_access; std::string m_tier; + std::string m_tourCategory; Place m_place; Author m_author; LuxCategory m_luxCategory;