123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
-
-
-
-
-
- var cordova = require('cordova');
- var execProxy = require('cordova/exec/proxy');
-
-
- module.exports = function (success, fail, service, action, args) {
-
- var proxy = execProxy.get(service, action);
-
- args = args || [];
-
- if (proxy) {
-
- var callbackId = service + cordova.callbackId++;
-
- if (typeof success === "function" || typeof fail === "function") {
- cordova.callbacks[callbackId] = {success: success, fail: fail};
- }
- try {
-
-
-
-
-
- var onSuccess = function (result, callbackOptions) {
- callbackOptions = callbackOptions || {};
- var callbackStatus;
-
-
-
-
- if (callbackOptions.status !== undefined && callbackOptions.status !== null) {
- callbackStatus = callbackOptions.status;
- }
- else {
- callbackStatus = cordova.callbackStatus.OK;
- }
- cordova.callbackSuccess(callbackOptions.callbackId || callbackId,
- {
- status: callbackStatus,
- message: result,
- keepCallback: callbackOptions.keepCallback || false
- });
- };
- var onError = function (err, callbackOptions) {
- callbackOptions = callbackOptions || {};
- var callbackStatus;
-
-
-
-
- if (callbackOptions.status !== undefined && callbackOptions.status !== null) {
- callbackStatus = callbackOptions.status;
- }
- else {
- callbackStatus = cordova.callbackStatus.OK;
- }
- cordova.callbackError(callbackOptions.callbackId || callbackId,
- {
- status: callbackStatus,
- message: err,
- keepCallback: callbackOptions.keepCallback || false
- });
- };
- proxy(onSuccess, onError, args);
-
- } catch (e) {
- console.log("Exception calling native with command :: " + service + " :: " + action + " ::exception=" + e);
- }
- } else {
-
- console.log("Error: exec proxy not found for :: " + service + " :: " + action);
-
- if(typeof fail === "function" ) {
- fail("Missing Command Error");
- }
- }
- };
|