From 6731f594e89c1a340ff1830dc18bb44630ba5bd6 Mon Sep 17 00:00:00 2001
From: Piotr Kosko
Date: Thu, 6 Jul 2017 15:01:50 +0200
Subject: [PATCH] [Notification] skeleton for FromJson and ToJson methods
[Feature]
- prepared *FromJson and ToJson methods
- extracted common methods to remove code duplication
[Verification] Passrate didn't change
Change-Id: Idf6fa7f28bcd62af4b16c17906c85ee8fd3a4eb6
Signed-off-by: Piotr Kosko
---
src/notification/common_notification.cc | 331 ++++++++++++++++++++-----------
src/notification/common_notification.h | 26 ++-
src/notification/notification_manager.cc | 14 +-
src/notification/status_notification.cc | 150 ++++----------
src/notification/user_notification.cc | 194 +++++++++++++++++-
src/notification/user_notification.h | 26 +++
6 files changed, 496 insertions(+), 245 deletions(-)
diff --git a/src/notification/common_notification.cc b/src/notification/common_notification.cc
index 233d424..3f9f4df 100644
--- a/src/notification/common_notification.cc
+++ b/src/notification/common_notification.cc
@@ -95,10 +95,10 @@ PlatformResult CommonNotification::SetLayout(notification_h noti_handle,
noti_layout = NOTIFICATION_LY_ONGOING_PROGRESS;
}
int ret = notification_set_layout(noti_handle, noti_layout);
- if (ret != NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Set notification layout error",
- ("Set notification layout error: %d", ret));
+ "Set notification layout error",
+ ("Set notification layout error: %d", ret));
}
return PlatformResult(ErrorCode::NO_ERROR);
@@ -120,7 +120,7 @@ static bool ServiceExtraDataCb(app_control_h service,
SCOPE_EXIT { free(value); };
int ret = app_control_get_extra_data_array(service, key, &value, &length);
- if (ret != APP_CONTROL_ERROR_NONE) {
+ if (APP_CONTROL_ERROR_NONE != ret) {
LoggerE("Get app control extra data error: %d", ret);
return true;
}
@@ -150,18 +150,18 @@ PlatformResult CommonNotification::Create(notification_type_e noti_type,
*noti_handle = notification_create(noti_type);
if (!*noti_handle) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Cannot make new notification object");
+ "Cannot make new notification object");
}
if (NOTIFICATION_TYPE_ONGOING == noti_type) {
int ret = notification_set_display_applist(
*noti_handle,
NOTIFICATION_DISPLAY_APP_NOTIFICATION_TRAY |
- NOTIFICATION_DISPLAY_APP_INDICATOR);
- if (ret != NOTIFICATION_ERROR_NONE) {
+ NOTIFICATION_DISPLAY_APP_INDICATOR);
+ if (NOTIFICATION_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Cannot set notification display applist",
- ("Cannot make new notification object: %d", ret));
+ "Cannot set notification display applist",
+ ("Cannot make new notification object: %d", ret));
}
}
@@ -188,7 +188,7 @@ PlatformResult CommonNotification::StatusTypeFromPlatform(
}
} else {
return LogAndCreateResult(ErrorCode::NOT_FOUND_ERR,
- "Notification type not found");
+ "Notification type not found");
}
return PlatformResult(ErrorCode::NO_ERROR);
@@ -204,8 +204,8 @@ PlatformResult CommonNotification::StatusTypeToPlatform(
*noti_type = NOTIFICATION_TYPE_ONGOING;
} else {
return LogAndCreateResult(ErrorCode::TYPE_MISMATCH_ERR,
- "Invalide notification type",
- ("Invalide noti type: %s", type.c_str()));
+ "Invalide notification type",
+ ("Invalide noti type: %s", type.c_str()));
}
return PlatformResult(ErrorCode::NO_ERROR);
@@ -220,11 +220,10 @@ PlatformResult CommonNotification::GetImage(
*image_path = "";
- if (notification_get_image(noti_handle, image_type, &path) !=
- NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != notification_get_image(noti_handle, image_type, &path)) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Get notification image error",
- ("Get notification image error, image_type: %d", image_type));
+ "Get notification image error",
+ ("Get notification image error, image_type: %d", image_type));
}
if (path) {
*image_path = path;
@@ -239,11 +238,11 @@ PlatformResult CommonNotification::SetImage(
const std::string& image_path) {
LoggerD("Enter");
int ret = notification_set_image(noti_handle, image_type, image_path.c_str());
- if (ret != NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Set notification image error",
- ("Set notification image error, image_type: %d, error: %d",
- image_type, ret));
+ "Set notification image error",
+ ("Set notification image error, image_type: %d, error: %d",
+ image_type, ret));
}
return PlatformResult(ErrorCode::NO_ERROR);
@@ -257,11 +256,10 @@ PlatformResult CommonNotification::GetText(notification_h noti_handle,
*noti_text = "";
- if (notification_get_text(noti_handle, text_type, &text) !=
- NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != notification_get_text(noti_handle, text_type, &text)) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Get notification text error",
- ("Get notification text error, text_type: %d", text_type));
+ "Get notification text error",
+ ("Get notification text error, text_type: %d", text_type));
}
if (text)
@@ -279,11 +277,11 @@ PlatformResult CommonNotification::SetText(notification_h noti_handle,
noti_text.c_str(),
NULL,
NOTIFICATION_VARIABLE_TYPE_NONE);
- if (ret != NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Set notification text error",
- ("Set notification text error, text_type: %d, error: %d",
- text_type, ret));
+ "Set notification text error",
+ ("Set notification text error, text_type: %d, error: %d",
+ text_type, ret));
}
return PlatformResult(ErrorCode::NO_ERROR);
@@ -374,7 +372,7 @@ PlatformResult CommonNotification::SetDetailInfos(
if (idx > info_map_size) {
return LogAndCreateResult(ErrorCode::INVALID_VALUES_ERR,
- "Too many values in notification detailInfo array");
+ "Too many values in notification detailInfo array");
}
}
@@ -387,10 +385,9 @@ PlatformResult CommonNotification::GetLedColor(notification_h noti_handle,
unsigned int color = 0;
notification_led_op_e type = NOTIFICATION_LED_OP_ON;
- if (notification_get_led(noti_handle, &type, (int*)&color) !=
- NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != notification_get_led(noti_handle, &type, (int*)&color)) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Get notification led displaying option error");
+ "Get notification led displaying option error");
}
*led_color = "";
@@ -423,8 +420,8 @@ PlatformResult CommonNotification::SetLedColor(notification_h noti_handle,
if (!IsColorFormatNumberic(color_str)) {
return LogAndCreateResult(ErrorCode::INVALID_VALUES_ERR,
- "Led color is not numeric value",
- ("Led color is not numeric value: %s", color_str.c_str()));
+ "Led color is not numeric value",
+ ("Led color is not numeric value: %s", color_str.c_str()));
}
std::stringstream stream;
@@ -442,10 +439,10 @@ PlatformResult CommonNotification::SetLedColor(notification_h noti_handle,
type = NOTIFICATION_LED_OP_OFF;
int ret = notification_set_led(noti_handle, type, static_cast(color));
- if (ret != NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Set notification led color eror",
- ("Set notification led color eror: %d", ret));
+ "Set notification led color eror",
+ ("Set notification led color eror: %d", ret));
}
return PlatformResult(ErrorCode::NO_ERROR);
@@ -458,10 +455,9 @@ PlatformResult CommonNotification::GetLedPeriod(notification_h noti_handle,
int on_time = 0;
int off_time = 0;
- if (notification_get_led_time_period(noti_handle, &on_time, &off_time) !=
- NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != notification_get_led_time_period(noti_handle, &on_time, &off_time)) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Get notification led on/off period error");
+ "Get notification led on/off period error");
}
if (on_period)
@@ -482,10 +478,10 @@ PlatformResult CommonNotification::SetLedOnPeriod(notification_h noti_handle,
int ret =
notification_set_led_time_period(noti_handle, on_period, off_period);
- if (ret != NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Set notification led on period error",
- ("Set notification led on period error: %d", ret));
+ "Set notification led on period error",
+ ("Set notification led on period error: %d", ret));
}
return PlatformResult(ErrorCode::NO_ERROR);
@@ -501,10 +497,10 @@ PlatformResult CommonNotification::SetLedOffPeriod(notification_h noti_handle,
int ret =
notification_set_led_time_period(noti_handle, on_period, off_period);
- if (ret != NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Set notification led off period error",
- ("Set notification led off period error: %d", ret));
+ "Set notification led off period error",
+ ("Set notification led off period error: %d", ret));
}
return PlatformResult(ErrorCode::NO_ERROR);
@@ -550,7 +546,7 @@ PlatformResult CommonNotification::SetThumbnails(notification_h noti_handle,
if (idx > thumbnails_map_size) {
return LogAndCreateResult(ErrorCode::INVALID_VALUES_ERR,
- "Too many values in notification thumbnail array");
+ "Too many values in notification thumbnail array");
}
}
@@ -565,10 +561,9 @@ PlatformResult CommonNotification::GetSoundPath(notification_h noti_handle,
const char* path = NULL;
notification_sound_type_e type = NOTIFICATION_SOUND_TYPE_NONE;
- if (notification_get_sound(noti_handle, &type, &path) !=
- NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != notification_get_sound(noti_handle, &type, &path)) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Get notification sound error");
+ "Get notification sound error");
}
LoggerD("Sound type = %d", type);
@@ -587,10 +582,10 @@ PlatformResult CommonNotification::SetSoundPath(notification_h noti_handle,
LoggerD("Enter");
int ret = notification_set_sound(
noti_handle, NOTIFICATION_SOUND_TYPE_USER_DATA, sound_path.c_str());
- if (ret != NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Set notification sound error",
- ("Set notification sound error: %d", ret));
+ "Set notification sound error",
+ ("Set notification sound error: %d", ret));
}
LoggerD("Sound path = %s", sound_path.c_str());
@@ -603,10 +598,9 @@ PlatformResult CommonNotification::GetVibration(notification_h noti_handle,
LoggerD("Enter");
notification_vibration_type_e vib_type = NOTIFICATION_VIBRATION_TYPE_NONE;
- if (notification_get_vibration(noti_handle, &vib_type, NULL) !=
- NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != notification_get_vibration(noti_handle, &vib_type, NULL)) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Get notification vibration error");
+ "Get notification vibration error");
}
if (NOTIFICATION_VIBRATION_TYPE_DEFAULT == vib_type ||
@@ -635,10 +629,10 @@ PlatformResult CommonNotification::SetVibration(notification_h noti_handle,
}
int ret = notification_set_vibration(noti_handle, vib_type, NULL);
- if (ret != NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Set notification vibration error",
- ("Set notification vibration error: %d", ret));
+ "Set notification vibration error",
+ ("Set notification vibration error: %d", ret));
}
}
@@ -663,10 +657,10 @@ PlatformResult CommonNotification::GetApplicationControl(
};
int ret = app_control_get_operation(app_handle, &operation);
- if (ret != APP_CONTROL_ERROR_NONE) {
+ if (APP_CONTROL_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Get application control operation error",
- ("Get application control operation error: %d", ret));
+ "Get application control operation error",
+ ("Get application control operation error: %d", ret));
}
if (operation) {
out["operation"] = picojson::value(operation);
@@ -675,7 +669,7 @@ PlatformResult CommonNotification::GetApplicationControl(
if (app_control_get_uri(app_handle, &uri) != APP_CONTROL_ERROR_NONE) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Get application control uri error");
+ "Get application control uri error");
}
if (uri) {
out["uri"] = picojson::value(uri);
@@ -684,7 +678,7 @@ PlatformResult CommonNotification::GetApplicationControl(
if (app_control_get_mime(app_handle, &mime) != APP_CONTROL_ERROR_NONE) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Get application control mime error");
+ "Get application control mime error");
}
if (mime) {
out["mime"] = picojson::value(mime);
@@ -694,7 +688,7 @@ PlatformResult CommonNotification::GetApplicationControl(
if (app_control_get_category(app_handle, &category) !=
APP_CONTROL_ERROR_NONE) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Get application control category error");
+ "Get application control category error");
}
if (category) {
out["category"] = picojson::value(category);
@@ -703,10 +697,10 @@ PlatformResult CommonNotification::GetApplicationControl(
picojson::array app_control_data = picojson::array();
if (app_control_foreach_extra_data(
- app_handle, ServiceExtraDataCb, (void*)&app_control_data) !=
- APP_CONTROL_ERROR_NONE) {
+ app_handle, ServiceExtraDataCb, (void*)&app_control_data) !=
+ APP_CONTROL_ERROR_NONE) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Get application control data error");
+ "Get application control data error");
}
out["data"] = picojson::value(app_control_data);
@@ -727,29 +721,29 @@ PlatformResult CommonNotification::SetApplicationControl(
} else {
ret = app_control_set_operation(app_handle, APP_CONTROL_OPERATION_DEFAULT);
}
- if (ret != APP_CONTROL_ERROR_NONE) {
+ if (APP_CONTROL_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Set application control operation error",
- ("Set application control operation error: %d", ret));
+ "Set application control operation error",
+ ("Set application control operation error: %d", ret));
}
if (val.contains("uri") && !IsNull(app_ctrl, "uri")) {
const std::string& uri = common::FromJson(app_ctrl, "uri");
ret = app_control_set_uri(app_handle, uri.c_str());
- if (ret != APP_CONTROL_ERROR_NONE) {
+ if (APP_CONTROL_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Set application control uri error",
- ("Set application control uri error: %d", ret));
+ "Set application control uri error",
+ ("Set application control uri error: %d", ret));
}
}
if (val.contains("mime") && !IsNull(app_ctrl, "mime")) {
const std::string& mime = common::FromJson(app_ctrl, "mime");
ret = app_control_set_mime(app_handle, mime.c_str());
- if (ret != APP_CONTROL_ERROR_NONE) {
+ if (APP_CONTROL_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Set application control mime error",
- ("Set application control mime error: %d", ret));
+ "Set application control mime error",
+ ("Set application control mime error: %d", ret));
}
}
@@ -757,10 +751,10 @@ PlatformResult CommonNotification::SetApplicationControl(
const std::string& category =
common::FromJson(app_ctrl, "category");
ret = app_control_set_category(app_handle, category.c_str());
- if (ret != APP_CONTROL_ERROR_NONE) {
+ if (APP_CONTROL_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Set application control category error",
- ("Set application control category error: %d", ret));
+ "Set application control category error",
+ ("Set application control category error: %d", ret));
}
}
@@ -787,10 +781,10 @@ PlatformResult CommonNotification::SetApplicationControl(
}
ret = app_control_add_extra_data_array(
app_handle, key.c_str(), arrayValue, values.size());
- if (ret != APP_CONTROL_ERROR_NONE) {
+ if (APP_CONTROL_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Set application control extra data error",
- ("Set application control extra data error: %d", ret));
+ "Set application control extra data error",
+ ("Set application control extra data error: %d", ret));
}
}
@@ -823,7 +817,7 @@ PlatformResult CommonNotification::SetApplicationId(app_control_h app_handle,
const std::string& app_id) {
LoggerD("Enter");
int ret = app_control_set_app_id(app_handle, app_id.c_str());
- if (ret != APP_CONTROL_ERROR_NONE) {
+ if (APP_CONTROL_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR, "Set applicaiton ID error",
("Set applicaiton ID error: %d", ret));
}
@@ -841,23 +835,21 @@ PlatformResult CommonNotification::GetProgressValue(
double tmp_progress_value = 0.0;
if (progess_type == kProgressTypeByte) {
- if (notification_get_size(noti_handle, &tmp_progress_value) !=
- NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != notification_get_size(noti_handle, &tmp_progress_value)) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Get notification size error");
+ "Get notification size error");
}
} else if (progess_type == kProgressTypePercentage) {
- if (notification_get_progress(noti_handle, &tmp_progress_value) !=
- NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != notification_get_progress(noti_handle, &tmp_progress_value)) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Get notification progress error");
+ "Get notification progress error");
}
// native api uses range 0-1, but webapi expects 0-100, so we need to multiply result with 100
tmp_progress_value *= 100;
} else {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Unknown notification progress type",
- ("Unknown notification progress type: %s ", progess_type.c_str()));
+ "Unknown notification progress type",
+ ("Unknown notification progress type: %s ", progess_type.c_str()));
}
LOGGER(DEBUG) << "Progress " << progess_type << " = " << tmp_progress_value;
@@ -879,7 +871,7 @@ PlatformResult CommonNotification::SetProgressValue(
if (is_update) {
ret = notification_update_size(noti_handle, NOTIFICATION_PRIV_ID_NONE,
- progress_value);
+ progress_value);
}
} else if (progress_type == kProgressTypePercentage) {
// native api uses range 0-1, but webapi expects 0-100, so we need to divide by 100
@@ -887,18 +879,18 @@ PlatformResult CommonNotification::SetProgressValue(
if (is_update) {
ret = notification_update_progress(noti_handle, NOTIFICATION_PRIV_ID_NONE,
- progress_value);
+ progress_value);
}
} else {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Unknown notification progress type",
- ("Unknown notification progress type: %s ", progress_type.c_str()));
+ "Unknown notification progress type",
+ ("Unknown notification progress type: %s ", progress_type.c_str()));
}
- if (ret != NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Set notification progress/size error",
- ("Set notification progress/size error: %d", ret));
+ "Set notification progress/size error",
+ ("Set notification progress/size error: %d", ret));
}
return PlatformResult(ErrorCode::NO_ERROR);
@@ -909,10 +901,9 @@ PlatformResult CommonNotification::GetPostedTime(notification_h noti_handle,
LoggerD("Enter");
*posted_time = 0;
- if (notification_get_insert_time(noti_handle, posted_time) !=
- NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != notification_get_insert_time(noti_handle, posted_time)) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Get notification posted time error");
+ "Get notification posted time error");
}
return PlatformResult(ErrorCode::NO_ERROR);
@@ -924,7 +915,7 @@ PlatformResult CommonNotification::GetNotiHandle(int id,
*noti_handle = notification_load(NULL, id);
if (NULL == *noti_handle) {
return LogAndCreateResult(ErrorCode::NOT_FOUND_ERR,
- "Not found or removed notification id");
+ "Not found or removed notification id");
}
return PlatformResult(ErrorCode::NO_ERROR);
@@ -937,10 +928,10 @@ PlatformResult CommonNotification::GetAppControl(notification_h noti_handle,
notification_get_launch_option(noti_handle,
NOTIFICATION_LAUNCH_OPTION_APP_CONTROL,
static_cast(app_control));
- if (ret != NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::INVALID_VALUES_ERR,
- "Notification get launch option error",
- ("Notification get launch option error: %d", ret));
+ "Notification get launch option error",
+ ("Notification get launch option error: %d", ret));
}
return PlatformResult(ErrorCode::NO_ERROR);
@@ -950,10 +941,10 @@ PlatformResult CommonNotification::CreateAppControl(
app_control_h* app_control) {
LoggerD("Enter");
int ret = app_control_create(app_control);
- if (ret != APP_CONTROL_ERROR_NONE) {
+ if (APP_CONTROL_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::INVALID_VALUES_ERR,
- "Application create error",
- ("Application create error: %d", ret));
+ "Application create error",
+ ("Application create error: %d", ret));
}
return PlatformResult(ErrorCode::NO_ERROR);
@@ -966,10 +957,10 @@ PlatformResult CommonNotification::SetAppControl(notification_h noti_handle,
notification_set_launch_option(noti_handle,
NOTIFICATION_LAUNCH_OPTION_APP_CONTROL,
static_cast(app_control));
- if (ret != APP_CONTROL_ERROR_NONE) {
+ if (APP_CONTROL_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::INVALID_VALUES_ERR,
- "Notification set launch option error",
- ("Notification set launch option error: %d", ret));
+ "Notification set launch option error",
+ ("Notification set launch option error: %d", ret));
}
return PlatformResult(ErrorCode::NO_ERROR);
@@ -993,9 +984,9 @@ common::PlatformResult CommonNotification::UpdateNotificationAfterPost(
}
PlatformResult CommonNotification::PostNotification(const picojson::object& args,
- bool is_update,
- picojson::object* out_ptr,
- GetHandleFromJsonFun getHandle) {
+ bool is_update,
+ picojson::object* out_ptr,
+ GetHandleFromJsonFun getHandle) {
LoggerD("Enter");
notification_h noti_handle = nullptr;
int ret = NOTIFICATION_ERROR_NONE;
@@ -1007,7 +998,7 @@ PlatformResult CommonNotification::PostNotification(const picojson::object& args
PlatformResult status = getHandle(args, is_update, ¬i_handle);
- if (status.IsError()){
+ if (status.IsError()) {
return status;
}
@@ -1032,5 +1023,113 @@ PlatformResult CommonNotification::PostNotification(const picojson::object& args
}
+PlatformResult CommonNotification::AddCommonMembersToJson(int id, notification_h noti_handle,
+ picojson::object* out_ptr) {
+ LoggerD("Enter");
+ picojson::object& out = *out_ptr;
+
+ out["id"] = picojson::value(std::to_string(id));
+ out["type"] = picojson::value("STATUS");
+
+ time_t posted_time = 0;
+ PlatformResult ret = GetPostedTime(noti_handle, &posted_time);
+ CHECK_ERROR(ret);
+ out["postedTime"] =
+ picojson::value(static_cast(posted_time) * 1000.0);
+
+ std::string value_str;
+ ret = GetText(noti_handle, NOTIFICATION_TEXT_TYPE_TITLE, &value_str);
+ CHECK_ERROR(ret);
+ out["title"] = picojson::value(value_str);
+
+ ret = GetText(noti_handle, NOTIFICATION_TEXT_TYPE_CONTENT, &value_str);
+ CHECK_ERROR(ret);
+ if (value_str.length()) {
+ out["content"] = picojson::value(value_str);
+ }
+
+ return PlatformResult(ErrorCode::NO_ERROR);
+}
+
+PlatformResult CommonNotification::AddTypeToJson(notification_h noti_handle, const std::string& key,
+ picojson::object* out_ptr, std::string* noti_type_str) {
+ LoggerD("Enter");
+ picojson::object& out = *out_ptr;
+ // Notification type
+ notification_type_e noti_type = NOTIFICATION_TYPE_NONE;
+ int ret = notification_get_type(noti_handle, ¬i_type);
+ if (NOTIFICATION_ERROR_NONE != ret) {
+ return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
+ "Notification get type error",
+ ("Notification get type error: %d", ret));
+ }
+
+ notification_ly_type_e noti_layout = NOTIFICATION_LY_NONE;
+ ret = notification_get_layout(noti_handle, ¬i_layout);
+ if (NOTIFICATION_ERROR_NONE != ret) {
+ return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
+ "Notification get layout error",
+ ("Notification get layout error: %d", ret));
+ }
+
+ PlatformResult status = StatusTypeFromPlatform(noti_type, noti_layout, noti_type_str);
+ CHECK_ERROR(status);
+ out[key] = picojson::value(*noti_type_str);
+
+ return PlatformResult(ErrorCode::NO_ERROR);
+}
+
+PlatformResult CommonNotification::InitNotiFromJson(const picojson::object& noti_obj,
+ bool is_update,
+ notification_h* noti_handle) {
+ LoggerD("Enter");
+ notification_h tmp_noti = nullptr;
+
+ const std::string& status_type =
+ common::FromJson(noti_obj, "statusType");
+
+ notification_type_e noti_type = NOTIFICATION_TYPE_NONE;
+ PlatformResult status = StatusTypeToPlatform(status_type, ¬i_type);
+ CHECK_ERROR(status);
+
+ if (is_update) {
+ int id = std::stoi(common::FromJson(noti_obj, "id"));
+
+ status = GetNotiHandle(id, &tmp_noti);
+ CHECK_ERROR(status);
+ } else {
+ status = Create(noti_type, &tmp_noti);
+ CHECK_ERROR(status);
+ }
+ std::unique_ptr::type, int(*)(notification_h)>
+ tmp_noti_ptr(tmp_noti, ¬ification_free); // automatically release the memory
+
+ status = SetLayout(tmp_noti, status_type);
+ CHECK_ERROR(status);
+
+ *noti_handle = tmp_noti_ptr.release();
+ return PlatformResult(ErrorCode::NO_ERROR);
+}
+
+
+PlatformResult CommonNotification::SetCommonMembersFromJson(const picojson::value& noti_value,
+ notification_h noti_handle) {
+ LoggerD("Enter");
+ const picojson::object& noti_obj = noti_value.get();
+ PlatformResult status = SetText(noti_handle,
+ NOTIFICATION_TEXT_TYPE_TITLE,
+ common::FromJson(noti_obj, "title"));
+ CHECK_ERROR(status);
+
+ if (noti_value.contains("content") && !IsNull(noti_obj, "content")) {
+ status = SetText(noti_handle,
+ NOTIFICATION_TEXT_TYPE_CONTENT,
+ common::FromJson(noti_obj, "content"));
+ CHECK_ERROR(status);
+ }
+ return PlatformResult(ErrorCode::NO_ERROR);
+}
+
+
} // namespace notification
} // namespace extension
diff --git a/src/notification/common_notification.h b/src/notification/common_notification.h
index 69b7101..86fa4bc 100644
--- a/src/notification/common_notification.h
+++ b/src/notification/common_notification.h
@@ -29,6 +29,11 @@
namespace extension {
namespace notification {
+#define CHECK_ERROR(ret) \
+ if (ret.IsError()) { \
+ return ret; \
+ }
+
const std::string kProgressTypePercentage = "PERCENTAGE";
const std::string kProgressTypeByte = "BYTE";
@@ -42,11 +47,11 @@ typedef std::function(args, "id"));
int ret = notification_delete_by_priv_id(NULL, NOTIFICATION_TYPE_NONE, id);
- if (ret != NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::NOT_FOUND_ERR,
"Cannot remove notification error",
("Cannot remove notification error: %d", ret));
@@ -98,14 +98,14 @@ PlatformResult NotificationManager::Remove(const picojson::object& args) {
PlatformResult NotificationManager::RemoveAll() {
LoggerD("Enter");
int ret = notification_delete_all(NOTIFICATION_TYPE_NOTI);
- if (ret != NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
"Notification noti remove all failed",
("Notification remove all failed: %d", ret));
}
ret = notification_delete_all(NOTIFICATION_TYPE_ONGOING);
- if (ret != NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
"Notification ongoing remove all failed",
("Notification remove all failed: %d", ret));
@@ -255,7 +255,7 @@ PlatformResult NotificationManager::PlayLEDCustomEffect(
int ret;
ret = device_led_play_custom(timeOn, timeOff, color, platformFlags);
- if (ret != DEVICE_ERROR_NONE) {
+ if (DEVICE_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR, "Cannot play LED custom effect",
("Cannot play LED custom effect: ",ret));
}
@@ -267,7 +267,7 @@ PlatformResult NotificationManager::StopLEDCustomEffect() {
LoggerD("Enter");
int ret = device_led_stop_custom();
- if (ret != DEVICE_ERROR_NONE) {
+ if (DEVICE_ERROR_NONE != ret) {
return LogAndCreateResult(ErrorCode::UNKNOWN_ERR, "Cannot stop LED custom effect",
("Cannot stop LED custom effect: ",ret));
}
@@ -287,12 +287,12 @@ common::PlatformResult NotificationManager::SaveTemplate(const picojson::object&
// TODO use UserNotification method
PlatformResult status = StatusNotification::GetNotiHandleFromJson(args, false, ¬i_handle);
- if (status.IsError()){
+ if (status.IsError()) {
return status;
}
ret = notification_save_as_template(noti_handle, name.c_str());
- if (ret != NOTIFICATION_ERROR_NONE) {
+ if (NOTIFICATION_ERROR_NONE != ret) {
LoggerD("Error: %d (%s)", ret, get_error_message(ret));
if (ret == NOTIFICATION_ERROR_MAX_EXCEEDED) {
return LogAndCreateResult(ErrorCode::QUOTA_EXCEEDED_ERR,
diff --git a/src/notification/status_notification.cc b/src/notification/status_notification.cc
index 7b1d0e2..b87b4d4 100644
--- a/src/notification/status_notification.cc
+++ b/src/notification/status_notification.cc
@@ -39,35 +39,13 @@ PlatformResult StatusNotification::ToJson(int id,
LoggerD("Enter");
picojson::object& out = *out_ptr;
- out["id"] = picojson::value(std::to_string(id));
- out["type"] = picojson::value("STATUS");
-
- // Nitification type
- notification_type_e noti_type = NOTIFICATION_TYPE_NONE;
- int ret = notification_get_type(noti_handle, ¬i_type);
- if (ret != NOTIFICATION_ERROR_NONE) {
- return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Notification get type error",
- ("Notification get type error: %d", ret));
- }
-
- notification_ly_type_e noti_layout = NOTIFICATION_LY_NONE;
- ret = notification_get_layout(noti_handle, ¬i_layout);
- if (ret != NOTIFICATION_ERROR_NONE) {
- return LogAndCreateResult(ErrorCode::UNKNOWN_ERR,
- "Notification get layout error",
- ("Notification get layout error: %d", ret));
- }
+ CHECK_ERROR(AddCommonMembersToJson(id, noti_handle, out_ptr));
std::string noti_type_str;
- PlatformResult status =
- StatusTypeFromPlatform(noti_type, noti_layout, ¬i_type_str);
- if (status.IsError())
- return status;
- out["statusType"] = picojson::value(noti_type_str);
+ CHECK_ERROR(AddTypeToJson(noti_handle, "statusType", out_ptr, ¬i_type_str));
std::string value_str;
- status = GetImage(noti_handle, NOTIFICATION_IMAGE_TYPE_ICON, &value_str);
+ PlatformResult status = GetImage(noti_handle, NOTIFICATION_IMAGE_TYPE_ICON, &value_str);
if (status.IsError())
return status;
if (value_str.length()) {
@@ -178,44 +156,16 @@ PlatformResult StatusNotification::ToJson(int id,
return status;
out["progressValue"] = picojson::value(progress_value);
- time_t posted_time;
- status = GetPostedTime(noti_handle, &posted_time);
- if (status.IsError())
- return status;
- out["postedTime"] =
- picojson::value(static_cast(posted_time) * 1000.0);
-
- status = GetText(noti_handle, NOTIFICATION_TEXT_TYPE_TITLE, &value_str);
- if (status.IsError())
- return status;
- out["title"] = picojson::value(value_str);
-
- status = GetText(noti_handle, NOTIFICATION_TEXT_TYPE_CONTENT, &value_str);
- if (status.IsError())
- return status;
- if (value_str.length()) {
- out["content"] = picojson::value(value_str);
- }
-
return PlatformResult(ErrorCode::NO_ERROR);
}
PlatformResult StatusNotification::GetNotiHandleFromJson(const picojson::object& args,
bool is_update,
- notification_h *noti_handle){
+ notification_h *noti_handle) {
LoggerD("Enter");
picojson::object noti_obj =
common::FromJson(args, "notification");
-
- const std::string& status_type =
- common::FromJson(noti_obj, "statusType");
-
- notification_type_e noti_type;
- PlatformResult status = StatusTypeToPlatform(status_type, ¬i_type);
- if (status.IsError())
- return status;
-
- int id = NOTIFICATION_PRIV_ID_NONE;
+ picojson::value noti_val(noti_obj);
app_control_h app_control = nullptr;
@@ -225,114 +175,105 @@ PlatformResult StatusNotification::GetNotiHandleFromJson(const picojson::object&
}
};
- if (is_update) {
- id = std::stoi(common::FromJson(noti_obj, "id"));
+ notification_h tmp_noti = nullptr;
+ PlatformResult status = InitNotiFromJson(noti_obj, is_update, &tmp_noti);
+ CHECK_ERROR(status);
+ std::unique_ptr::type, int(*)(notification_h)>
+ tmp_noti_ptr(tmp_noti, ¬ification_free); // automatically release the memory
- PlatformResult status = GetNotiHandle(id, noti_handle);
- if (status.IsError())
- return status;
+ status = SetCommonMembersFromJson(noti_val, tmp_noti);
+ CHECK_ERROR(status);
- } else {
- status = Create(noti_type, noti_handle);
- if (status.IsError())
- return status;
- }
- status = SetLayout(*noti_handle, status_type);
- if (status.IsError()) {
- return status;
- }
-
- picojson::value val(noti_obj);
- if (val.contains("iconPath") && !IsNull(noti_obj, "iconPath")) {
+ if (noti_val.contains("iconPath") && !IsNull(noti_obj, "iconPath")) {
const std::string& value_str = common::FromJson(noti_obj, "iconPath");
std::string real_path = common::FilesystemProvider::Create().GetRealPath(value_str);
- status = SetImage(*noti_handle, NOTIFICATION_IMAGE_TYPE_ICON, real_path);
+ status = SetImage(tmp_noti, NOTIFICATION_IMAGE_TYPE_ICON, real_path);
if (status.IsError()) {
return status;
}
}
- if (val.contains("subIconPath") && !IsNull(noti_obj, "subIconPath")) {
+ if (noti_val.contains("subIconPath") && !IsNull(noti_obj, "subIconPath")) {
const std::string& value_str =
common::FromJson(noti_obj, "subIconPath");
std::string real_path = common::FilesystemProvider::Create().GetRealPath(value_str);
- status = SetImage(*noti_handle, NOTIFICATION_IMAGE_TYPE_ICON_SUB, real_path);
+ status = SetImage(tmp_noti, NOTIFICATION_IMAGE_TYPE_ICON_SUB, real_path);
if (status.IsError()) {
return status;
}
}
- if (val.contains("number") && !IsNull(noti_obj, "number")) {
+ if (noti_val.contains("number") && !IsNull(noti_obj, "number")) {
long number = (long)common::FromJson(noti_obj, "number");
- status = SetText(*noti_handle, NOTIFICATION_TEXT_TYPE_EVENT_COUNT, std::to_string(number));
+ status = SetText(tmp_noti, NOTIFICATION_TEXT_TYPE_EVENT_COUNT, std::to_string(number));
if (status.IsError()) {
return status;
}
}
- if (val.contains("detailInfo") && !IsNull(noti_obj, "detailInfo")) {
+ if (noti_val.contains("detailInfo") && !IsNull(noti_obj, "detailInfo")) {
status = SetDetailInfos(
- *noti_handle, common::FromJson(noti_obj, "detailInfo"));
+ tmp_noti, common::FromJson(noti_obj, "detailInfo"));
if (status.IsError()) {
return status;
}
}
- if (val.contains("ledColor") && !IsNull(noti_obj, "ledColor")) {
- status = SetLedColor(*noti_handle,
+ if (noti_val.contains("ledColor") && !IsNull(noti_obj, "ledColor")) {
+ status = SetLedColor(tmp_noti,
common::FromJson(noti_obj, "ledColor"));
if (status.IsError()) {
return status;
}
}
- status = SetLedOnPeriod(*noti_handle,
+ status = SetLedOnPeriod(tmp_noti,
static_cast(common::FromJson(
noti_obj, "ledOnPeriod")));
if (status.IsError()) {
return status;
}
- status = SetLedOffPeriod(*noti_handle,
+ status = SetLedOffPeriod(tmp_noti,
static_cast(common::FromJson(
noti_obj, "ledOffPeriod")));
if (status.IsError()) {
return status;
}
- if (val.contains("backgroundImagePath")
+ if (noti_val.contains("backgroundImagePath")
&& !IsNull(noti_obj, "backgroundImagePath")) {
const std::string& value_str = common::FromJson(noti_obj, "backgroundImagePath");
std::string real_path = common::FilesystemProvider::Create().GetRealPath(value_str);
- status = SetImage(*noti_handle, NOTIFICATION_IMAGE_TYPE_BACKGROUND, real_path);
+ status = SetImage(tmp_noti, NOTIFICATION_IMAGE_TYPE_BACKGROUND, real_path);
if (status.IsError()) {
return status;
}
}
- if (val.contains("thumbnails") && !IsNull(noti_obj, "thumbnails")) {
+ if (noti_val.contains("thumbnails") && !IsNull(noti_obj, "thumbnails")) {
status = SetThumbnails(
- *noti_handle, common::FromJson(noti_obj, "thumbnails"));
+ tmp_noti, common::FromJson(noti_obj, "thumbnails"));
if (status.IsError()) {
return status;
}
}
- if (val.contains("soundPath") && !IsNull(noti_obj, "soundPath")) {
+ if (noti_val.contains("soundPath") && !IsNull(noti_obj, "soundPath")) {
const std::string& value_str = common::FromJson(noti_obj, "soundPath");
std::string real_path = common::FilesystemProvider::Create().GetRealPath(value_str);
- status = SetSoundPath(*noti_handle, real_path);
+ status = SetSoundPath(tmp_noti, real_path);
if (status.IsError()) {
return status;
}
}
- status = SetVibration(*noti_handle, common::FromJson(noti_obj, "vibration"));
+ status = SetVibration(tmp_noti, common::FromJson(noti_obj, "vibration"));
if (status.IsError()) {
return status;
}
@@ -342,7 +283,7 @@ PlatformResult StatusNotification::GetNotiHandleFromJson(const picojson::object&
return status;
}
- if (val.contains("appControl") && !IsNull(noti_obj, "appControl")) {
+ if (noti_val.contains("appControl") && !IsNull(noti_obj, "appControl")) {
status = SetApplicationControl(
app_control,
common::FromJson(noti_obj, "appControl"));
@@ -351,7 +292,7 @@ PlatformResult StatusNotification::GetNotiHandleFromJson(const picojson::object&
}
}
- if (val.contains("appId") && !IsNull(noti_obj, "appId")) {
+ if (noti_val.contains("appId") && !IsNull(noti_obj, "appId")) {
status = SetApplicationId(app_control,
common::FromJson(noti_obj, "appId"));
if (status.IsError()) {
@@ -361,43 +302,30 @@ PlatformResult StatusNotification::GetNotiHandleFromJson(const picojson::object&
const std::string& progress_type =
common::FromJson(noti_obj, "progressType");
- status = SetImage(*noti_handle, NOTIFICATION_IMAGE_TYPE_LIST_5, progress_type);
+ status = SetImage(tmp_noti, NOTIFICATION_IMAGE_TYPE_LIST_5, progress_type);
if (status.IsError()) {
return status;
}
double progressValue;
- if (val.contains("progressValue") && !IsNull(noti_obj, "progressValue")) {
+ if (noti_val.contains("progressValue") && !IsNull(noti_obj, "progressValue")) {
progressValue = common::FromJson(noti_obj, "progressValue");
}
else {
progressValue = -1;
}
- status = SetProgressValue(*noti_handle, progress_type, progressValue,
+ status = SetProgressValue(tmp_noti, progress_type, progressValue,
is_update);
if (status.IsError()) {
return status;
}
- status = SetText(*noti_handle,
- NOTIFICATION_TEXT_TYPE_TITLE,
- common::FromJson(noti_obj, "title"));
- if (status.IsError()) {
- return status;
- }
-
- if (val.contains("content") && !IsNull(noti_obj, "content")) {
- status = SetText(*noti_handle,
- NOTIFICATION_TEXT_TYPE_CONTENT,
- common::FromJson(noti_obj, "content"));
- if (status.IsError()) {
- return status;
- }
- }
+ status = SetAppControl(tmp_noti, app_control);
+ CHECK_ERROR(status);
- status = SetAppControl(*noti_handle, app_control);
+ *noti_handle = tmp_noti_ptr.release();
return PlatformResult(ErrorCode::NO_ERROR);
}
diff --git a/src/notification/user_notification.cc b/src/notification/user_notification.cc
index 0d5cacd..147aa69 100644
--- a/src/notification/user_notification.cc
+++ b/src/notification/user_notification.cc
@@ -16,6 +16,7 @@
#include "notification/user_notification.h"
+#include "common/converter.h"
#include "common/logger.h"
#include "common/scope_exit.h"
@@ -35,27 +36,206 @@ PlatformResult UserNotification::ToJson(int id,
app_control_h app_handle,
picojson::object* out_ptr) {
LoggerD("Enter");
+ PlatformResult ret = AddCommonMembersToJson(id, noti_handle, out_ptr);
+ CHECK_ERROR(ret);
+
+ std::string noti_type_str;
+ ret = AddTypeToJson(noti_handle, "userType", out_ptr, ¬i_type_str);
+ CHECK_ERROR(ret);
+
+ ret = AddTextContentsToJson(noti_handle, out_ptr);
+ CHECK_ERROR(ret);
+
+ ret = AddImagesToJson(noti_handle, out_ptr);
+ CHECK_ERROR(ret);
+
+ ret = AddThumbnailsToJson(noti_handle, out_ptr);
+ CHECK_ERROR(ret);
+
+ ret = AddActionsToJson(noti_handle, out_ptr);
+ CHECK_ERROR(ret);
+
+ ret = AddGroupContentsToJson(noti_handle, out_ptr);
+ CHECK_ERROR(ret);
+
+ ret = AddLedsToJson(noti_handle, out_ptr);
+ CHECK_ERROR(ret);
+
+ return PlatformResult(ErrorCode::NO_ERROR);
+}
+
+PlatformResult UserNotification::GetNotiHandleFromJson(const picojson::object& args,
+ bool is_update,
+ notification_h *noti_handle) {
+ LoggerD("Enter");
+ picojson::object noti_obj =
+ common::FromJson(args, "notification");
+ picojson::value noti_val(noti_obj);
+
+ notification_h tmp_noti = nullptr;
+ PlatformResult status = InitNotiFromJson(noti_obj, is_update, &tmp_noti);
+ CHECK_ERROR(status);
+ std::unique_ptr::type, int(*)(notification_h)>
+ tmp_noti_ptr(tmp_noti, ¬ification_free); // automatically release the memory
+
+ status = SetCommonMembersFromJson(noti_val, tmp_noti);
+ CHECK_ERROR(status);
+
+ status = SetTextContentsFromJson(noti_val, tmp_noti);
+ CHECK_ERROR(status);
+
+ status = SetImagesFromJson(noti_val, tmp_noti);
+ CHECK_ERROR(status);
+
+ status = SetThumbnailsFromJson(noti_val, tmp_noti);
+ CHECK_ERROR(status);
+
+ status = SetActionsFromJson(noti_val, tmp_noti);
+ CHECK_ERROR(status);
+
+ status = SetGroupContentsFromJson(noti_val, tmp_noti);
+ CHECK_ERROR(status);
+
+ status = SetLedsFromJson(noti_val, tmp_noti);
+ CHECK_ERROR(status);
+
+ *noti_handle = tmp_noti_ptr.release();
+
+ return PlatformResult(ErrorCode::NO_ERROR);
+}
+
+PlatformResult UserNotification::PostUserNotification(const picojson::object& args,
+ bool is_update,
+ picojson::object* out_ptr) {
+ LoggerD("Enter");
+ return PostNotification(args, is_update, out_ptr, GetNotiHandleFromJson);
+}
+
+PlatformResult UserNotification::AddTextContentsToJson(notification_h noti_handle,
+ picojson::object* out_ptr) {
+ LoggerD("Enter");
+ picojson::object& out = *out_ptr;
+
+ picojson::value text_contents = picojson::value(picojson::object());
+ picojson::object& text_contents_obj = text_contents.get();
+
+ out["textContents"] = text_contents;
+ return PlatformResult(ErrorCode::NO_ERROR);
+}
+
+PlatformResult UserNotification::AddImagesToJson(notification_h noti_handle,
+ picojson::object* out_ptr) {
+ LoggerD("Enter");
+ picojson::object& out = *out_ptr;
+
+ picojson::value text_contents = picojson::value(picojson::object());
+ picojson::object& text_contents_obj = text_contents.get();
+
+ out["images"] = text_contents;
+ return PlatformResult(ErrorCode::NO_ERROR);
+}
+
+PlatformResult UserNotification::AddThumbnailsToJson(notification_h noti_handle,
+ picojson::object* out_ptr) {
+ LoggerD("Enter");
+ picojson::object& out = *out_ptr;
+
+ picojson::value text_contents = picojson::value(picojson::object());
+ picojson::object& text_contents_obj = text_contents.get();
+
+ out["thumbnails"] = text_contents;
+ return PlatformResult(ErrorCode::NO_ERROR);
+}
+
+PlatformResult UserNotification::AddActionsToJson(notification_h noti_handle,
+ picojson::object* out_ptr) {
+ LoggerD("Enter");
+ picojson::object& out = *out_ptr;
+
+ picojson::value text_contents = picojson::value(picojson::object());
+ picojson::object& text_contents_obj = text_contents.get();
+
+ out["actions"] = text_contents;
+ return PlatformResult(ErrorCode::NO_ERROR);
+}
+
+PlatformResult UserNotification::AddGroupContentsToJson(notification_h noti_handle,
+ picojson::object* out_ptr) {
+ LoggerD("Enter");
+ picojson::object& out = *out_ptr;
+
+ picojson::value text_contents = picojson::value(picojson::object());
+ picojson::object& text_contents_obj = text_contents.get();
+
+ out["groupContents"] = text_contents;
+ return PlatformResult(ErrorCode::NO_ERROR);
+}
+
+PlatformResult UserNotification::AddLedsToJson(notification_h noti_handle,
+ picojson::object* out_ptr) {
+ LoggerD("Enter");
+ picojson::object& out = *out_ptr;
+
+ picojson::value text_contents = picojson::value(picojson::object());
+ picojson::object& text_contents_obj = text_contents.get();
+
+ out["leds"] = text_contents;
+ return PlatformResult(ErrorCode::NO_ERROR);
+}
+
+PlatformResult UserNotification::SetTextContentsFromJson(const picojson::value& noti_value,
+ notification_h noti_handle) {
+ LoggerD("Enter");
+
return LogAndCreateResult(ErrorCode::NOT_SUPPORTED_ERR,
"Not implemented yet",
("Not implemented yet"));
}
-PlatformResult UserNotification::GetNotiHandleFromJson(const picojson::object& args,
- bool is_update,
- notification_h *noti_handle){
+PlatformResult UserNotification::SetImagesFromJson(const picojson::value& noti_value,
+ notification_h noti_handle) {
LoggerD("Enter");
+
return LogAndCreateResult(ErrorCode::NOT_SUPPORTED_ERR,
"Not implemented yet",
("Not implemented yet"));
}
-PlatformResult UserNotification::PostUserNotification(const picojson::object& args,
- bool is_update,
- picojson::object* out_ptr) {
+PlatformResult UserNotification::SetThumbnailsFromJson(const picojson::value& noti_value,
+ notification_h noti_handle) {
LoggerD("Enter");
- return PostNotification(args, is_update, out_ptr, GetNotiHandleFromJson);
+
+ return LogAndCreateResult(ErrorCode::NOT_SUPPORTED_ERR,
+ "Not implemented yet",
+ ("Not implemented yet"));
+}
+
+PlatformResult UserNotification::SetActionsFromJson(const picojson::value& noti_value,
+ notification_h noti_handle) {
+ LoggerD("Enter");
+
+ return LogAndCreateResult(ErrorCode::NOT_SUPPORTED_ERR,
+ "Not implemented yet",
+ ("Not implemented yet"));
+}
+
+PlatformResult UserNotification::SetGroupContentsFromJson(const picojson::value& noti_value,
+ notification_h noti_handle) {
+ LoggerD("Enter");
+
+ return LogAndCreateResult(ErrorCode::NOT_SUPPORTED_ERR,
+ "Not implemented yet",
+ ("Not implemented yet"));
}
+PlatformResult UserNotification::SetLedsFromJson(const picojson::value& noti_value,
+ notification_h noti_handle) {
+ LoggerD("Enter");
+
+ return LogAndCreateResult(ErrorCode::NOT_SUPPORTED_ERR,
+ "Not implemented yet",
+ ("Not implemented yet"));
+}
} // namespace notification
} // namespace extension
diff --git a/src/notification/user_notification.h b/src/notification/user_notification.h
index a0fb44e..4a5f284 100644
--- a/src/notification/user_notification.h
+++ b/src/notification/user_notification.h
@@ -34,6 +34,32 @@ class UserNotification : public CommonNotification {
static common::PlatformResult PostUserNotification(const picojson::object& args,
bool is_update,
picojson::object* out_ptr);
+
+ static common::PlatformResult AddTextContentsToJson(notification_h noti_handle,
+ picojson::object* out_ptr);
+ static common::PlatformResult AddImagesToJson(notification_h noti_handle,
+ picojson::object* out_ptr);
+ static common::PlatformResult AddThumbnailsToJson(notification_h noti_handle,
+ picojson::object* out_ptr);
+ static common::PlatformResult AddActionsToJson(notification_h noti_handle,
+ picojson::object* out_ptr);
+ static common::PlatformResult AddGroupContentsToJson(notification_h noti_handle,
+ picojson::object* out_ptr);
+ static common::PlatformResult AddLedsToJson(notification_h noti_handle,
+ picojson::object* out_ptr);
+
+ static common::PlatformResult SetTextContentsFromJson(const picojson::value& noti_val,
+ notification_h noti_handle);
+ static common::PlatformResult SetImagesFromJson(const picojson::value& noti_val,
+ notification_h noti_handle);
+ static common::PlatformResult SetThumbnailsFromJson(const picojson::value& noti_val,
+ notification_h noti_handle);
+ static common::PlatformResult SetActionsFromJson(const picojson::value& noti_val,
+ notification_h noti_handle);
+ static common::PlatformResult SetGroupContentsFromJson(const picojson::value& noti_val,
+ notification_h noti_handle);
+ static common::PlatformResult SetLedsFromJson(const picojson::value& noti_val,
+ notification_h noti_handle);
private:
UserNotification();
virtual ~UserNotification();
--
2.7.4