diff options
Diffstat (limited to 'addon-sdk/source/lib/sdk/url/utils.js')
-rw-r--r-- | addon-sdk/source/lib/sdk/url/utils.js | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/addon-sdk/source/lib/sdk/url/utils.js b/addon-sdk/source/lib/sdk/url/utils.js new file mode 100644 index 000000000..aa5759204 --- /dev/null +++ b/addon-sdk/source/lib/sdk/url/utils.js @@ -0,0 +1,29 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +"use strict"; + +module.metadata = { + "stability": "experimental" +}; + +const { Cc, Ci, Cr } = require("chrome"); +const IOService = Cc["@mozilla.org/network/io-service;1"]. + getService(Ci.nsIIOService); +const { isValidURI } = require("../url"); +const { method } = require("../../method/core"); + +function newURI (uri) { + if (!isValidURI(uri)) + throw new Error("malformed URI: " + uri); + return IOService.newURI(uri, null, null); +} +exports.newURI = newURI; + +var getURL = method('sdk/url:getURL'); +getURL.define(String, url => url); +getURL.define(function (object) { + return null; +}); +exports.getURL = getURL; |