diff -r 000000000000 -r 6474c204b198 uriloader/prefetch/nsIPrefetchService.idl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/uriloader/prefetch/nsIPrefetchService.idl Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,34 @@ +/* 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/. */ + +#include "nsISupports.idl" + +interface nsIURI; +interface nsIDOMNode; +interface nsISimpleEnumerator; + +[scriptable, uuid(bc4dbb34-b148-11e2-b82c-08002734a811)] +interface nsIPrefetchService : nsISupports +{ + /** + * Enqueue a request to prefetch the specified URI. + * + * @param aURI the URI of the document to prefetch + * @param aReferrerURI the URI of the referring page + * @param aSource the DOM node (such as a tag) that requested this + * fetch, or null if the prefetch was not requested by a DOM node. + * @param aExplicit the link element has an explicit prefetch link type + */ + void prefetchURI(in nsIURI aURI, + in nsIURI aReferrerURI, + in nsIDOMNode aSource, + in boolean aExplicit); + + /** + * Enumerate the items in the prefetch queue. + */ + nsISimpleEnumerator enumerateQueue(); + + // XXX do we need a way to cancel prefetch requests? +};