michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: #include "nsISupports.idl" michael@0: michael@0: interface nsIURI; michael@0: michael@0: /** michael@0: * A service to make some AddonManager functionality available to C++ callers. michael@0: * Javascript callers should still use AddonManager.jsm directly. michael@0: */ michael@0: [scriptable, function, uuid(7b45d82d-7ad5-48d7-9b05-f32eb9818cd4)] michael@0: interface amIAddonManager : nsISupports michael@0: { michael@0: /** michael@0: * Synchronously map a URI to the corresponding Addon ID. michael@0: * michael@0: * Mappable URIs are limited to in-application resources belonging to the michael@0: * add-on, such as Javascript compartments, XUL windows, XBL bindings, etc. michael@0: * but do not include URIs from meta data, such as the add-on homepage. michael@0: * michael@0: * @param aURI michael@0: * The nsIURI to map michael@0: * @return michael@0: * true if the URI has been mapped successfully to an Addon ID michael@0: */ michael@0: boolean mapURIToAddonID(in nsIURI aURI, out AUTF8String aID); michael@0: };