#include <TimeTracer.h>
#include <Logger.h>
#include <Export.h>
+#include "ContactUtility.h"
namespace DeviceAPI {
namespace Contact {
case ExceptionCodes::NotFoundException:
case ExceptionCodes::InvalidArgumentException:
LoggerE("Not Found error : " << addressBookId);
- oss << "No Contact id '" << addressBookId << "'";
+ oss << "No addressBookId id '" << addressBookId << "'";
return JSWebAPIErrorFactory::postException(context, exception, JSWebAPIErrorFactory::NOT_FOUND_ERROR, oss.str());
break;
case ExceptionCodes::PlatformException:
AceSecurityStatus status = CONTACT_CHECK_ACCESS(CONTACT_FUNCTION_API_CONTACT_MANAGER_GET);
TIZEN_SYNC_ACCESS_HANDLER(status, context, exception);
- if (argumentCount < 1) {
- /* 1st Argument must be string. */
- LoggerE("1st argument must not be undefined.");
- return JSWebAPIErrorFactory::postException(context, exception, JSWebAPIErrorFactory::NOT_FOUND_ERROR, "No Contact id 'undefined'");
- }
-
std::string id;
ContactConverterFactory::ConverterType converter = ContactConverterFactory::getConverter(context);
return JSWebAPIErrorFactory::postException(context, exception, JSWebAPIErrorFactory::TYPE_MISMATCH_ERROR, "");
}
+ if(!ContactUtility::checkStrIsUInt(id))
+ return JSWebAPIErrorFactory::postException(context, exception, JSWebAPIErrorFactory::INVALID_VALUES_ERROR, "");
+
EventContactManagerGetPtr dplEvent(new EventContactManagerGet());
dplEvent->setId(id);
{
case ExceptionCodes::NotFoundException:
case ExceptionCodes::InvalidArgumentException:
- oss << "No Contact id '" << person->getId() << "'";
+ oss << "No id '" << person->getId() << "'";
return JSWebAPIErrorFactory::postException(context, exception, JSWebAPIErrorFactory::NOT_FOUND_ERROR, oss.str());
break;
case ExceptionCodes::PlatformException:
} catch(const NullPointerException& err) {
return JSWebAPIErrorFactory::postException(context, exception, JSWebAPIErrorFactory::TYPE_MISMATCH_ERROR, "");
}
+ if(!ContactUtility::checkStrIsUInt(personId))
+ return JSWebAPIErrorFactory::postException(context, exception, JSWebAPIErrorFactory::INVALID_VALUES_ERROR, "");
EventContactManagerRemovePtr dplEvent(new EventContactManagerRemove());
case ExceptionCodes::NotFoundException:
case ExceptionCodes::InvalidArgumentException:
LoggerE("Not Found error : " << personId);
- oss << "No Contact id '" << personId << "'";
+ oss << "No id '" << personId << "'";
return JSWebAPIErrorFactory::postException(context, exception,
JSWebAPIErrorFactory::NOT_FOUND_ERROR, oss.str());
break;
EventContactManagerFindPtr dplEvent(new EventContactManagerFind());
Try {
- if (js3rdParamIsObject)
- dplEvent->setFilter(filterConverter->toFilter(arguments[2]));
+ if (js3rdParamIsObject){
+ FilterPtr filter = filterConverter->toFilter(arguments[2]);
+ if(filter)
+ dplEvent->setFilter(filter);
+ else
+ return JSWebAPIErrorFactory::postException(context, exception, JSWebAPIErrorFactory::TYPE_MISMATCH_ERROR, "3rd argument must be an Correct 'Filter object' or 'null'");
+ }
} Catch(Exception) {
LoggerE("Error on 3rd parameter conversion : " << _rethrown_exception.GetMessage());
return JSWebAPIErrorFactory::postException(context, exception, JSWebAPIErrorFactory::TYPE_MISMATCH_ERROR, "3rd argument must be an 'Filter object' or 'null'");
}
Try {
- if (js4thParamIsObject)
- dplEvent->setSortMode(filterConverter->toSortMode(arguments[3]));
+ if (js4thParamIsObject){
+ SortModePtr sortMode = filterConverter->toSortMode(arguments[3]);
+ dplEvent->setSortMode(sortMode);
+ }
} Catch(Exception) {
LoggerE("Error on 4th parameter conversion : " << _rethrown_exception.GetMessage());
return JSWebAPIErrorFactory::postException(context, exception, JSWebAPIErrorFactory::TYPE_MISMATCH_ERROR, "4th argument must be an 'SortMode object' or 'null'");
}
if (onpersonsadded == NULL && onpersonsupdated == NULL && onpersonsdeleted == NULL)
- ThrowMsg(ConversionException, "2nd argument must have at least one function");
+ ThrowMsg(ConversionException, "invalid 2nd argument");
} Catch(ConversionException) {
LoggerE("Error on conversion : " << _rethrown_exception.GetMessage());
ContactConverterFactory::ConverterType converter = ContactConverterFactory::getConverter(context);
long watchId = 0;
+ std::string id;
+
try {
ArgumentValidator validator(context, argumentCount, arguments);
watchId = validator.toLong(0, false, 0);
+ id = validator.toString(0, false);
} catch (const TypeMismatchException& err ) {
return JSWebAPIErrorFactory::postException(context, exception, err);
} catch(const BasePlatformException& err) {
} catch(const NullPointerException& err) {
return JSWebAPIErrorFactory::postException(context, exception, JSWebAPIErrorFactory::TYPE_MISMATCH_ERROR, "");
}
+ if(!ContactUtility::checkStrIsUInt(id))
+ return JSWebAPIErrorFactory::postException(context, exception, JSWebAPIErrorFactory::INVALID_VALUES_ERROR, "");
EventContactManagerRemoveChangeListenerPtr dplEvent(new EventContactManagerRemoveChangeListener());