Account.prototype.getExtendedData = function() {
- if (T_.isFunction(arguments[0])) {
+ if (T_.isFunction(arguments[0]) || arguments.length > 1) {
var args = validator_.validateArgs(arguments, [
{
name : 'successCallback',
- type : types_.FUNCTION,
- optional : false,
- nullable : false
+ type : types_.FUNCTION
},
{
name : 'errorCallback',
args.errorCallback(native_.getErrorObject(result));
}
} else {
+ var data = native_.getResultObject(result);
+ for (var i = 0; i < data.length; ++i) {
+ Object.freeze(data[i]);
+ }
args.successCallback(native_.getResultObject(result));
}
}
if (ACCOUNT_ERROR_NONE != ret) {
if (ACCOUNT_ERROR_RECORD_NOT_FOUND == ret) {
LoggerE("There is no extended data value for %s", key.c_str());
- REPORT_ERROR(out, NotFoundException("There is no extended data value for specified key"));
+ out["status"] = picojson::value("success");
+ out["result"] = picojson::value();
} else {
LoggerE("Failed to get custom field");
REPORT_ERROR(out, UnknownException(GetErrorMsg(ret)));
if (ACCOUNT_ERROR_NONE != ret) {
LoggerE("Failed to set custom field");
REPORT_ERROR(out, UnknownException(GetErrorMsg(ret)));
+ return;
+ }
+
+ ret = account_update_to_db_by_id(account, account_id);
+ if (ACCOUNT_ERROR_NONE != ret) {
+ LoggerE("Failed to update account in database");
+ REPORT_ERROR(out, UnknownException(GetErrorMsg(ret)));
} else {
out["status"] = picojson::value("success");
}