diff --git a/blackberry10/VERSION b/blackberry10/VERSION index 688932aa..414a102c 100644 --- a/blackberry10/VERSION +++ b/blackberry10/VERSION @@ -1 +1 @@ -3.4.0-dev +3.5.0-dev diff --git a/blackberry10/javascript/cordova.blackberry10.js b/blackberry10/javascript/cordova.blackberry10.js index 545395da..47bb131c 100644 --- a/blackberry10/javascript/cordova.blackberry10.js +++ b/blackberry10/javascript/cordova.blackberry10.js @@ -1,5 +1,5 @@ // Platform: blackberry10 -// 3.4.0-dev-286dff2 +// 3.5.0-dev-ba3190d /* Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file @@ -19,8 +19,8 @@ under the License. */ ;(function() { -var CORDOVA_JS_BUILD_LABEL = '3.4.0-dev-286dff2'; -// file: lib/scripts/require.js +var CORDOVA_JS_BUILD_LABEL = '3.5.0-dev-ba3190d'; +// file: src/scripts/require.js /*jshint -W079 */ /*jshint -W020 */ @@ -98,7 +98,7 @@ if (typeof module === "object" && typeof require === "function") { module.exports.define = define; } -// file: lib/cordova.js +// file: src/cordova.js define("cordova", function(require, exports, module) { @@ -316,7 +316,7 @@ module.exports = cordova; }); -// file: lib/common/argscheck.js +// file: src/common/argscheck.js define("cordova/argscheck", function(require, exports, module) { var exec = require('cordova/exec'); @@ -382,7 +382,7 @@ moduleExports.enableChecks = true; }); -// file: lib/common/base64.js +// file: src/common/base64.js define("cordova/base64", function(require, exports, module) { var base64 = exports; @@ -438,7 +438,7 @@ function uint8ToBase64(rawData) { }); -// file: lib/common/builder.js +// file: src/common/builder.js define("cordova/builder", function(require, exports, module) { var utils = require('cordova/utils'); @@ -551,7 +551,7 @@ exports.replaceHookForTesting = function() {}; }); -// file: lib/common/channel.js +// file: src/common/channel.js define("cordova/channel", function(require, exports, module) { var utils = require('cordova/utils'), @@ -792,7 +792,7 @@ module.exports = channel; }); -// file: lib/blackberry10/exec.js +// file: src/blackberry10/exec.js define("cordova/exec", function(require, exports, module) { var cordova = require('cordova'), @@ -816,15 +816,42 @@ function RemoteFunctionCall(functionUri) { params[name] = encodeURIComponent(JSON.stringify(value)); }; - this.makeSyncCall = function () { + this.makeAsyncCall = function () { var requestUri = composeUri(), - request = createXhrRequest(requestUri, false), - response; + request = new XMLHttpRequest(), + didSucceed, + response, + fail = function () { + var callbackId = JSON.parse(decodeURIComponent(params.callbackId)); + response = JSON.parse(decodeURIComponent(request.responseText) || "null"); + cordova.callbacks[callbackId].fail && cordova.callbacks[callbackId].fail(response.msg, response); + delete cordova.callbacks[callbackId]; + }; + + request.open("POST", requestUri, true /* async */); + request.setRequestHeader("Content-Type", "application/json"); + request.timeout = 1000; // Timeout in 1000ms + request.ontimeout = fail; + request.onerror = fail; + + request.onload = function () { + response = JSON.parse(decodeURIComponent(request.responseText) || "null"); + if (request.status === 200) { + didSucceed = response.code === cordova.callbackStatus.OK || response.code === cordova.callbackStatus.NO_RESULT; + cordova.callbackFromNative( + JSON.parse(decodeURIComponent(params.callbackId)), + didSucceed, + response.code, + [ didSucceed ? response.data : response.msg ], + !!response.keepCallback + ); + } else { + fail(); + } + }; + request.send(JSON.stringify(params)); - response = JSON.parse(decodeURIComponent(request.responseText) || "null"); - return response; }; - } module.exports = function (success, fail, service, action, args) { @@ -832,7 +859,6 @@ module.exports = function (success, fail, service, action, args) { request = new RemoteFunctionCall(uri), callbackId = service + cordova.callbackId++, proxy, - response, name, didSucceed; @@ -856,31 +882,15 @@ module.exports = function (success, fail, service, action, args) { request.addParam(name, args[name]); } } - - response = request.makeSyncCall(); - if (response.code < 0) { - if (fail) { - fail(response.msg, response); - } - delete cordova.callbacks[callbackId]; - } else { - didSucceed = response.code === cordova.callbackStatus.OK || response.code === cordova.callbackStatus.NO_RESULT; - cordova.callbackFromNative( - callbackId, - didSucceed, - response.code, - [ didSucceed ? response.data : response.msg ], - !!response.keepCallback - ); - } + request.makeAsyncCall(); } }; }); -// file: lib/common/exec/proxy.js +// file: src/common/exec/proxy.js define("cordova/exec/proxy", function(require, exports, module) { @@ -910,7 +920,7 @@ module.exports = { }; }); -// file: lib/common/init.js +// file: src/common/init.js define("cordova/init", function(require, exports, module) { var channel = require('cordova/channel'); @@ -1024,7 +1034,7 @@ channel.join(function() { }); -// file: lib/common/modulemapper.js +// file: src/common/modulemapper.js define("cordova/modulemapper", function(require, exports, module) { var builder = require('cordova/builder'), @@ -1125,7 +1135,7 @@ exports.reset(); }); -// file: lib/blackberry10/platform.js +// file: src/blackberry10/platform.js define("cordova/platform", function(require, exports, module) { module.exports = { @@ -1167,10 +1177,11 @@ module.exports = { }); -// file: lib/common/pluginloader.js +// file: src/common/pluginloader.js define("cordova/pluginloader", function(require, exports, module) { var modulemapper = require('cordova/modulemapper'); +var urlutil = require('cordova/urlutil'); // Helper function to inject a