callback->setLimit(limit);
callback->setOffset(offset);
callback->setAccountId(serviceId);
+ callback->setSortMode(sortMode);
auto json = std::shared_ptr<picojson::value>(new picojson::value(picojson::object()));
picojson::object& obj = json->get<picojson::object>();
callback->setLimit(limit);
callback->setOffset(offset);
callback->setAccountId(serviceId);
+ callback->setSortMode(sortMode);
auto json = std::shared_ptr<picojson::value>(new picojson::value(picojson::object()));
picojson::object& obj = json->get<picojson::object>();
LoggerD("Entered");
using namespace tizen;
+ picojson::value value;
+ try{
+ value = json.at(JSON_TO_SORT);
+ } catch(const std::out_of_range& e){
+ return SortModePtr();
+ }
+
auto dataSort = getValueFromJSONObject<picojson::object>(json, JSON_TO_SORT);
auto name = getValueFromJSONObject<std::string>(dataSort, JSON_TO_ATTRIBUTE_NAME);
auto ord = getValueFromJSONObject<std::string>(dataSort, JSON_TO_ORDER);
auto attributePtr = AttributeFilterPtr(new AttributeFilter(name));
attributePtr->setMatchFlag(filterMatch);
attributePtr->setMatchValue(AnyPtr(new Any(filter.at(JSON_TO_MATCH_VALUE))));
-
return attributePtr;
}
#include <string>
#include <vector>
#include <memory>
+#include <stdexcept>
#include "common/logger.h"
#include "common/picojson.h"
template <class T>
static T getValueFromJSONObject(const picojson::object& v, const std::string& key)
{
- if (v.at(key).is<T>()) {
- return v.at(key).get<T>();
+ picojson::value value;
+ try{
+ value = v.at(key);
+ } catch(const std::out_of_range& e){
+ return T();
+ }
+
+ if (value.is<T>()) {
+ return value.get<T>();
} else {
return T();
}