[Privilege] Fixes for TCT tests.
authorPawel Andruszkiewicz <p.andruszkie@samsung.com>
Tue, 21 Apr 2015 11:09:21 +0000 (13:09 +0200)
committerPawel Andruszkiewicz <p.andruszkie@samsung.com>
Mon, 27 Apr 2015 08:25:42 +0000 (10:25 +0200)
Change-Id: Ia86d0a28f48ab53fd17bdf5159a32dd7dea81a96

src/contact/js/contact_manager.js
src/content/js/manager.js
src/package/package_api.js
src/power/power_api.js

index 5cedb027b1cf406035e94f9ed514c7f9fbec3268..b1ba64d4b465167d9870226dd4d0f8c6df81e68c 100644 (file)
@@ -66,7 +66,9 @@ ContactManager.prototype.getAddressBooks = function() {
     }
   };
 
-  native_.call('ContactManager_getAddressBooks', {}, callback);
+  var result = native_.call('ContactManager_getAddressBooks', {}, callback);
+
+  _checkError(result);
 };
 
 // Gets the aggregation of all address books.
@@ -209,6 +211,8 @@ ContactManager.prototype.get = function() {
 
 // Updates a person in the address book synchronously.
 ContactManager.prototype.update = function() {
+  xwalk.utils.checkPrivilegeAccess('http://tizen.org/privilege/contact.write');
+
   // validation
   var args = validator_.validateArgs(arguments, [{
     name: 'person',
@@ -261,10 +265,12 @@ ContactManager.prototype.updateBatch = function() {
     native_.callIfPossible(args.successCallback);
   };
 
-  native_.call('ContactManager_updateBatch', {
+  var result = native_.call('ContactManager_updateBatch', {
     addressBook: {},
     batchArgs: _toJsonObject(args.persons)
   }, callback);
+
+  _checkError(result);
 };
 
 // Removes a person from the contact DB synchronously.
@@ -319,10 +325,12 @@ ContactManager.prototype.removeBatch = function() {
     native_.callIfPossible(args.successCallback);
   };
 
-  native_.call('ContactManager_removeBatch', {
+  var result = native_.call('ContactManager_removeBatch', {
     addressBook: {},
     batchArgs: _toJsonObject(args.personIds)
   }, callback);
+
+  _checkError(result);
 };
 
 // Gets an array of all Person objects from the contact DB or the ones that match the
@@ -382,7 +390,9 @@ ContactManager.prototype.find = function() {
     }
   };
 
-  native_.call('ContactManager_find', data, callback);
+  var result = native_.call('ContactManager_find', data, callback);
+
+  _checkError(result);
 };
 
 // Subscribes to receive notifications about persons' changes.
@@ -419,6 +429,8 @@ ContactManager.prototype.addChangeListener = function() {
 
 // Unsubscribes a persons' changes watch operation.
 ContactManager.prototype.removeChangeListener = function() {
+  xwalk.utils.checkPrivilegeAccess('http://tizen.org/privilege/contact.read');
+
   var args = validator_.validateArgs(arguments, [
     {
       name: 'watchId',
index 18f9871fb540f1ca7f22f5a162a378a27c0ce2e2..7b8f3bb42099bbab5b3c71585f4a00f27f98af39 100644 (file)
@@ -17,6 +17,8 @@ function ContentManager() {
 }
 
 ContentManager.prototype.update = function(content) {
+  xwalk.utils.checkPrivilegeAccess('http://tizen.org/privilege/content.write');
+
   var args = validator_.validateArgs(arguments, [
     {name: 'content', type: types_.PLATFORM_OBJECT, values: Content}
   ]);
@@ -51,7 +53,11 @@ ContentManager.prototype.updateBatch = function(contents, successCallback, error
     native_.callIfPossible(args.successCallback);
   };
 
-  native_.call('ContentManager_updateBatch', data, callback);
+  var result = native_.call('ContentManager_updateBatch', data, callback);
+
+  if (native_.isFailure(result)) {
+    throw native_.getErrorObject(result);
+  }
 };
 
 ContentManager.prototype.getDirectories = function(successCallback, errorCallback) {
@@ -122,7 +128,11 @@ ContentManager.prototype.find = function(successCallback, errorCallback, directo
     native_.callIfPossible(args.successCallback, out);
   };
 
-  native_.call('ContentManager_find', data, callback);
+  var result = native_.call('ContentManager_find', data, callback);
+
+  if (native_.isFailure(result)) {
+    throw native_.getErrorObject(result);
+  }
 };
 
 ContentManager.prototype.scanFile = function(contentURI, successCallback, errorCallback) {
@@ -149,7 +159,11 @@ ContentManager.prototype.scanFile = function(contentURI, successCallback, errorC
     native_.callIfPossible(args.successCallback, args.contentURI);
   };
 
-  native_.call('ContentManager_scanFile', data, callback);
+  var result = native_.call('ContentManager_scanFile', data, callback);
+
+  if (native_.isFailure(result)) {
+    throw native_.getErrorObject(result);
+  }
 };
 
 ContentManager.prototype.setChangeListener = function(changeCallback) {
index c5f297eb685faa14608c997f32da97664ed2ad15..6469096194f01e3aa6fec83912dbfaf0e27a5e83 100644 (file)
@@ -48,7 +48,7 @@ function callNative(cmd, args) {
   } else if (result['status'] == 'error') {
     var err = result['error'];
     if (err) {
-      throw new WebAPIException(err.name, err.message);
+      throw new WebAPIException(err);
     }
     return false;
   }
index fe40aefaa54b2b4421becdb2b59849679c1a4945..6d746a9cc1062a8a47b768c2f96d637cd811e9bb 100755 (executable)
@@ -19,21 +19,6 @@ function nextCallbackId() {
     return callbackId++;
 }
 
-var ExceptionMap = {
-    'UnknownError' : WebAPIException.UNKNOWN_ERR ,
-    'TypeMismatchError' : WebAPIException.TYPE_MISMATCH_ERR ,
-    'InvalidValuesError' : WebAPIException.INVALID_VALUES_ERR ,
-    'IOError' : WebAPIException.IO_ERR ,
-    'ServiceNotAvailableError' : WebAPIException.SERVICE_NOT_AVAILABLE_ERR ,
-    'SecurityError' : WebAPIException.SECURITY_ERR ,
-    'NetworkError' : WebAPIException.NETWORK_ERR ,
-    'NotSupportedError' : WebAPIException.NOT_SUPPORTED_ERR ,
-    'NotFoundError' : WebAPIException.NOT_FOUND_ERR ,
-    'InvalidAccessError' : WebAPIException.INVALID_ACCESS_ERR ,
-    'AbortError' : WebAPIException.ABORT_ERR ,
-    'QuotaExceededError' : WebAPIException.QUOTA_EXCEEDED_ERR ,
-}
-
 function callNative(cmd, args) {
     var json = {'cmd':cmd, 'args':args};
     var argjson = JSON.stringify(json);
@@ -52,11 +37,7 @@ function callNative(cmd, args) {
     } else if (result['status'] == 'error') {
         var err = result['error'];
         if(err) {
-            if(ExceptionMap[err.name]) {
-                throw new WebAPIException(ExceptionMap[err.name], err.message);
-            } else {
-                throw new WebAPIException(WebAPIException.UNKNOWN_ERR, err.message);
-            }
+            throw new WebAPIException(err);
         }
         return false;
     }