Subclasses
Attributes
From fuelIBookmark
The uri of the bookmark.
From fuelIBrowserTab
Interface representing a browser tab. The current uri of this tab.
From imgIRequest
The URI the image load was started with. Note that this might not be the actual URI for the image (e.g. if HTTP redirects happened during the load).
From nsIChannel
The URI corresponding to the channel. Its value is immutable.
The original URI used to construct the channel. This is used in the case of a redirect or URI "resolution" (e.g. resolving a resource: URI to a file: URI) so that the original pre-redirect URI can still be obtained. This is never null. Attempts to set it to null must throw. NOTE: this is distinctly different from the http Referer (referring URI), which is typically the page that contained the original URI (accessible from nsIHttpChannel).
From nsIContextMenuInfo
From nsIDOMPopupBlockedEvent
The URI of the window that was blocked.
From nsIDocShellLoadInfo
This is the referrer for the load. */
From nsIDownload
The referrer uri of the download. This is only valid for HTTP downloads, and can be null.
The source of the transfer.
The target of the transfer.
From nsIFaviconService
The default favicon URI
From nsIFeedContainer
Returns the primary link for the feed or entry.
From nsIFeedElementBase
The baseURI for the Entry or Feed.
From nsIFeedGenerator
A URI associated with the software.
From nsIFeedPerson
A URI associated with the person (e.g. a homepage).
From nsIFeedResult
An XSLT stylesheet available to transform the source of the feed. Some feeds include this information in a processing instruction. It's generally intended for clients with specific feed capabilities.
The address from which the feed was fetched.
From nsIFeedTextConstruct
If the text construct contains (X)HTML, relative references in the content should be resolved against this base URI.
From nsIFilePicker
Get the nsIURI for the file or directory. @return Returns the file currently selected
From nsIGeolocationRequest
From nsIHelperAppLauncher
The source uri
From nsIHistoryEntry
A readonly property that returns the URI of the current entry. The object returned is of type nsIURI
From nsIHttpChannel
Get/set the HTTP referrer URI. This is the address (URI) of the resource from which this channel's URI was obtained (see RFC2616 section 14.36). This attribute may only be set before the channel is opened. NOTE: The channel may silently refuse to set the Referer header if the URI does not pass certain security checks (e.g., a "https://" URL will never be sent as the referrer for a plaintext HTTP request). The implementation is not required to throw an exception when the referrer URI is rejected. @throws NS_ERROR_IN_PROGRESS if set after the channel has been opened.
From nsIHttpChannelInternal
An http channel can own a reference to the document URI
From nsIImageLoadingContent
Gets the URI of the current request, if available. Otherwise, returns the last URI that this content tried to load, or null if there haven't been any such attempts.
From nsIIncrementalDownload
The URI being fetched.
The URI being fetched after any redirects have been followed. This attribute is set just prior to calling OnStartRequest on the observer passed to the start method.
From nsIJARURI
Returns the root URI (the one for the actual JAR file) for this JAR (e.g., http://www.big.com/blue.jar).
From nsIMicrosummary
From nsIMicrosummaryGenerator
From nsIMozIconURI
iconFile the file URL contained within this moz-icon url, or null.
From nsINavHistoryQuery
This is a URI to match, to, for example, find out every time you visited a given URI. Use uriIsPrefix to control whether this is an exact match.
From nsINavHistoryResultNode
This URI can be used as an image source URI and will give you the favicon for the page. It is *not* the URI of the favicon, but rather something that will resolve to the actual image. In most cases, this is an annotation URI that will query the favicon service. If the entry has no favicon, this is the chrome URI of the default favicon. If the favicon originally lived in chrome, this will be the original chrome URI of the icon.
From nsINestedURI
The inner URI for this nested URI. This must not return null if the getter succeeds; URIs that have no inner must not QI to this interface. Dynamically changing whether there is an inner URI is not allowed. Modifying the returned URI must not in any way modify the nested URI; this means the returned URI must be either immutable or a clone.
The innermost URI for this nested URI. This must not return null if the getter succeeds. This is equivalent to repeatedly calling innerURI while the returned URI QIs to nsINestedURI. Modifying the returned URI must not in any way modify the nested URI; this means the returned URI must be either immutable or a clone.
From nsIOfflineCacheUpdate
The manifest for the offline application being updated.
From nsIPrincipal
The codebase URI to which this principal pertains. This is generally the document URI.
The domain URI to which this principal pertains. This is congruent with HTMLDocument.domain, and may be null. Setting this has no effect on the URI.
From nsISAXXMLReader
The base URI.
From nsISHEntry
Referrer URI */
From nsISearchEngine
A nsIURI corresponding to the engine's icon, stored locally. May be null.
From nsISearchSubmission
The URI to submit a search to.
From nsIWebNavigation
The currently loaded URI or null.
The referring URI for the currently loaded URI or null.
From nsIXPIInstallInfo
The original URI calling the install. This is the URI that would have been checked against the whitelist if necessary.
Returns
From nsIAnnotationService
Returns a URI that can be used to access the given binary annotation. This function does NOT check that the annotation exists. Also, note that you can only load URIs for annotations that have have a valid MIME type set by setAnnotationBinary. No non-URI valid chars in name, especially colon, which will mess up parsing.
From nsIChromeRegistry
Resolve a chrome URL to an loadable URI using the information in the registry. Does not modify aChromeURL. Chrome URLs are allowed to be specified in "shorthand", leaving the "file" portion off. In that case, the URL is expanded to: chrome://package/provider/package.ext where "ext" is: "xul" for a "content" package, "css" for a "skin" package, and "dtd" for a "locale" package. @param aChromeURL the URL that is to be converted.
From nsICommandLine
Resolves a URI argument into a URI. This method has platform-specific logic for converting an absolute URI or a relative file-path into the appropriate URI object; it gracefully handles win32 C:\ paths which would confuse the ioservice if passed directly. @param aArgument The command-line argument to resolve.
From nsICookiePermission
getOriginatingURI
determines the originating URI for a load given a channel, for third-party
cookie blocking. this is done by leveraging the loadgroup of the channel to
find the root content docshell, and the URI associated with its principal.
if the root content docshell or its principal's URI cannot be obtained,
this method will throw.
@param aChannel
the channel for the load trying to get or set cookies
@return the originating URI.
From nsIFaviconService
Retrieves the URI of the favicon for the given page.
@param aPageURI
URI of the page whose favicon is desired
@returns The URI of the favicon associated with that page. Returning a
URI here does NOT mean that we have data for this favicon, only
that we know what the favicon should be.
@throws NS_ERROR_NOT_AVAILABLE
When the page is not found or it has no favicon.
For a given page, this will give you a URI that, when displayed in chrome,
will result in the given page's favicon. Unlike the other get functions,
we needn't have heard of the page or its favicon: the default one will
be returned in this case.
@see getFaviconLinkForIcon
This function only adds the extra level of indirection, looking up
the favicon based on the page URI and using the default if not found.
@param aPageURI
URI of the page whose favicon is desired
@returns A URI that will give you the icon image. This is NOT the URI of
the icon as set on the page, but a URI that will give you the
data out of the favicon service. For a normal page with a
favicon we've stored, this will be an annotation URI which will
then cause the corresponding favicon data to be loaded from this
service. For pages where we don't have a favicon, this will be a
chrome URI of the default icon for a web page.
For a given icon URI, this will return a URI that will result in the image.
In most cases, this is an annotation URI. For chrome, this will do nothing
and return the input URI.
@param aFaviconURI
The URI of an icon in the favicon service.
@returns A URI that will load the desired icon. This is NOT the URI of the
icon as set on the page, but a URI that will give you the data
out of the favicon service. For a normal page with a favicon
we've stored, this will be an annotation URI which will then
cause the corresponding favicon data to be loaded from this
service. For pages where we don't have a favicon, this will be a
chrome URI of the default icon for a web page. For chrome, the
output will be the same as the input.
No validity checking is done. If you pass an icon URI that we've
never seen, you'll get back a URI that references an invalid
icon. The moz-anno protocol handler's special case for "favicon"
annotations will detect most invalid icons and it will resolve to
the default icon, although without caching. For invalid chrome
URIs, you'll get a broken image.
From nsIFileProtocolHandler
This method constructs a new file URI @param aFile nsIFile @return reference to a new nsIURI object
Takes a local file and tries to interpret it as an internet shortcut (e.g. .url files on windows). @param file The local file to read @return The URI the file refers to @throw NS_ERROR_NOT_AVAILABLE if the OS does not support such files. @throw NS_ERROR_NOT_AVAILABLE if this file is not an internet shortcut.
From nsIIOService
This method constructs a new URI from a nsIFile. @param aFile specifies the file path @return reference to a new nsIURI object
This method constructs a new URI by determining the scheme of the URI spec, and then delegating the construction of the URI to the protocol handler for that scheme. QueryInterface can be used on the resulting URI object to obtain a more specific type of URI. @see nsIProtocolHandler::newURI
From nsILivemarkService
Gets the URI of the syndication feed associated with a livemark container.
@param container The folder ID of a livemark container
@returns nsIURI representing the URI of the feed; if the livemark
container doesn't have a valid feed URI, null will be returned
of the nsIURI object returned will be the empty string.
@throws NS_ERROR_INVALID_ARG if the folder ID isn't known or identifies
a folder that isn't a livemark container
@throws NS_ERROR_MALFORMED_URI if the site URI annotation has
somehow been corrupted (and can't be turned into an nsIURI)
Gets the URI of the website associated with a livemark container.
@param container The folder ID of a livemark container
@returns nsIURI representing the URI of the website; if the livemark
container doesn't have a valid site URI, null will be returned
@throws NS_ERROR_INVALID_ARG if the folder ID isn't known or identifies
a folder that isn't a livemark container
@throws NS_ERROR_MALFORMED_URI if the site URI annotation has
somehow been corrupted (and can't be turned into an nsIURI)
From nsINavBookmarksService
Get the URI for a bookmark item.
Used to see if the given URI is bookmarked, or any page that redirected to it is bookmarked. For example, if I bookmark "mozilla.org" by manually typing it in, and follow the bookmark, I will get redirected to "www.mozilla.org". Logically, this new page is also bookmarked. This function, if given "www.mozilla.org", will return the URI of the bookmark, in this case "mozilla.org". If there is no bookmarked page found, it will return NULL.
Returns the URI associated with the given keyword. Empty if no such keyword is found.
From nsINetUtil
Take aURI and produce an immutable version of it for the caller. If aURI is immutable this will be aURI itself; otherwise this will be a clone, marked immutable if possible. Passing null to this method is allowed; in that case it will return null.
From nsIProtocolHandler
Makes a URI object that is suitable for loading by this protocol,
where the URI string is given as an UTF-8 string. The caller may
provide the charset from which the URI string originated, so that
the URI string can be translated back to that charset (if necessary)
before communicating with, for example, the origin server of the URI
string. (Many servers do not support UTF-8 IRIs at the present time,
so we must be careful about tracking the native charset of the origin
server.)
@param aSpec - the URI string in UTF-8 encoding. depending
on the protocol implementation, unicode character
sequences may or may not be %xx escaped.
@param aOriginCharset - the charset of the document from which this URI
string originated. this corresponds to the
charset that should be used when communicating
this URI to an origin server, for example. if
null, then UTF-8 encoding is assumed (i.e.,
no charset transformation from aSpec).
@param aBaseURI - if null, aSpec must specify an absolute URI.
otherwise, aSpec may be resolved relative
to aBaseURI, depending on the protocol.
If the protocol has no concept of relative
URI aBaseURI will simply be ignored.
From nsIResProtocolHandler
Gets the substitution for the root key. @throws NS_ERROR_NOT_AVAILABLE if none exists.
From nsIURI
Clones the current URI. For some protocols, this is more than just an optimization. For example, under MacOS, the spec of a file URL does not necessarily uniquely identify a file since two volumes could share the same name.
From nsIURIFixup
Converts an internal URI (e.g. a wyciwyg URI) into one which we can
expose to the user, for example on the URL bar.
@param aURI The URI to be converted
@return nsIURI The converted, exposable URI
@throws NS_ERROR_MALFORMED_URI when the exposable portion of aURI is malformed
@throws NS_ERROR_UNKNOWN_PROTOCOL when we can't get a protocol handler service
for the URI scheme.
Converts the specified string into a URI, first attempting to correct any errors in the syntax or other vagaries. Returns a wellformed URI or nsnull if it can't. @param aURIText Candidate URI. @param aFixupFlags Flags that govern ways the URI may be fixed up.
Converts the specified keyword string into a URI. Note that it's the caller's responsibility to check whether keywords are enabled and whether aKeyword is a sensible keyword.
Parameters
From fuelIBookmarkFolder
Adds a new child bookmark to this folder.
@param aTitle
The title of bookmark.
@param aURI
The uri of bookmark.
From fuelIBrowserTab
Load a new URI into this browser tab.
@param aURI
The uri to load into the browser tab
From fuelIWindow
Open a new browser tab, pointing to the specified URI.
@param aURI
The uri to open the browser tab to
From imgICache
Find Properties Used to get properties such as 'type' and 'content-disposition' 'type' is a nsISupportsCString containing the images' mime type such as 'image/png' 'content-disposition' will be a nsISupportsCString containing the header If you call this before any data has been loaded from a URI, it will succeed, but come back empty. @param uri The URI to look up. @returns NULL if the URL was not found in the cache
Evict images from the cache.
@param uri The URI to remove.
@return NS_OK if \a uri was removed from the cache.
NS_ERROR_NOT_AVAILABLE if \a uri was unable to be removed from the cache.
From imgILoader
Start the load and decode of an image.
@param aURI the URI to load
@param aInitialDocumentURI the URI that 'initiated' the load -- used for 3rd party cookie blocking
@param aReferrerURI the 'referring' URI
@param aLoadGroup Loadgroup to put the image load into
@param aObserver the observer
@param aCX some random data
@param aLoadFlags Load flags for the request
@param aCacheKey cache key to use for a load if the original
image came from a request that had post data
@param aRequest A newly created, unused imgIRequest object or NULL for one to
be created for you.
libpr0n does NOT keep a strong ref to the observer; this prevents
reference cycles. This means that callers of loadImage should
make sure to Cancel() the resulting request before the observer
goes away.
[noscript]
imgIRequest
loadImage(in nsIURI aURI, in nsIURI aInitialDocumentURL, in nsIURI aReferrerURI, in nsILoadGroup aLoadGroup, in imgIDecoderObserver aObserver, in nsISupports aCX, in nsLoadFlags aLoadFlags, in nsISupports cacheKey, in imgIRequest aRequest)
Start the load and decode of an image.
@param aURI the URI to load
@param aInitialDocumentURI the URI that 'initiated' the load -- used for 3rd party cookie blocking
@param aReferrerURI the 'referring' URI
@param aLoadGroup Loadgroup to put the image load into
@param aObserver the observer
@param aCX some random data
@param aLoadFlags Load flags for the request
@param aCacheKey cache key to use for a load if the original
image came from a request that had post data
@param aRequest A newly created, unused imgIRequest object or NULL for one to
be created for you.
libpr0n does NOT keep a strong ref to the observer; this prevents
reference cycles. This means that callers of loadImage should
make sure to Cancel() the resulting request before the observer
goes away.
[noscript]
imgIRequest
loadImage(in nsIURI aURI, in nsIURI aInitialDocumentURL, in nsIURI aReferrerURI, in nsILoadGroup aLoadGroup, in imgIDecoderObserver aObserver, in nsISupports aCX, in nsLoadFlags aLoadFlags, in nsISupports cacheKey, in imgIRequest aRequest)
Start the load and decode of an image.
@param aURI the URI to load
@param aInitialDocumentURI the URI that 'initiated' the load -- used for 3rd party cookie blocking
@param aReferrerURI the 'referring' URI
@param aLoadGroup Loadgroup to put the image load into
@param aObserver the observer
@param aCX some random data
@param aLoadFlags Load flags for the request
@param aCacheKey cache key to use for a load if the original
image came from a request that had post data
@param aRequest A newly created, unused imgIRequest object or NULL for one to
be created for you.
libpr0n does NOT keep a strong ref to the observer; this prevents
reference cycles. This means that callers of loadImage should
make sure to Cancel() the resulting request before the observer
goes away.
[noscript]
imgIRequest
loadImage(in nsIURI aURI, in nsIURI aInitialDocumentURL, in nsIURI aReferrerURI, in nsILoadGroup aLoadGroup, in imgIDecoderObserver aObserver, in nsISupports aCX, in nsLoadFlags aLoadFlags, in nsISupports cacheKey, in imgIRequest aRequest)
From nsIAboutModule
A method to get the flags that apply to a given about: URI. The URI passed in is guaranteed to be one of the URIs that this module registered to deal with.
Constructs a new channel for the about protocol module. @param aURI the uri of the new channel
From nsIAnnotationObserver
Called when an annotation value is set. It could be a new annotation, or it could be a new value for an existing annotation.
Called when an annotation is deleted. If aName is empty, then ALL annotations for the given URI have been deleted. This is not called when annotations are expired (normally happens when the app exits).
From nsIAnnotationService
Copies all annotations from the source to the destination URI/item. If the destination already has an annotation with the same name as one on the source, it will be overwritten if aOverwriteDest is set. Otherwise, the destination URIs will be preferred. All the source annotations will stay as-is. If you don't want them any more, use removePageAnnotations on that URI.
Copies all annotations from the source to the destination URI/item. If the destination already has an annotation with the same name as one on the source, it will be overwritten if aOverwriteDest is set. Otherwise, the destination URIs will be preferred. All the source annotations will stay as-is. If you don't want them any more, use removePageAnnotations on that URI.
Returns a URI that can be used to access the given binary annotation. This function does NOT check that the annotation exists. Also, note that you can only load URIs for annotations that have have a valid MIME type set by setAnnotationBinary. No non-URI valid chars in name, especially colon, which will mess up parsing.
Retrieves the value of a given annotation. Throws an error if the annotation does not exist. Throws for binary annotations, for which getPageAnnotationBinary/getItemAnnotationBinary should be used. C++ consumers may use the type-specific methods. The type-specific methods throw if the given annotation is set in a different type.
@see getPageAnnotation. This also returns the MIME type.
@see getPageAnnotation
Retrieves info about an existing annotation. aMimeType will be empty
if the value was not binary data.
aType will be one of TYPE_* constansts above
example JS:
var flags = {}, exp = {}, mimeType = {};
annotator.getAnnotationInfo(myURI, "foo", flags, exp, mimeType);
// now you can use 'exp.value' and 'flags.value'
@see getPageAnnotation
Get the names of all annotations for this URI.
example JS:
var annotations = annotator.getPageAnnotations(myURI, {});
void
getPageAnnotationNames(in nsIURI aURI, out unsigned long count, [array, retval, size_is(count)] out nsIVariant result)
@see getPageAnnotation
Retrieves the type of an existing annotation
Use getAnnotationInfo if you need this along with the mime-type etc.
@param aURI
the uri on which the annotation is set
@param aName
the annotation name
@return one of the TYPE_* constants above
@throws if the annotation is not set
Removes a specific annotation. Succeeds even if the annotation is not found.
Removes all annotations for the given page/item. We may want some other similar functions to get annotations with given flags (once we have flags defined).
Sets an annotation, overwriting any previous annotation with the same URL/name. IT IS YOUR JOB TO NAMESPACE YOUR ANNOTATION NAMES. Use the form "namespace/value", so your name would be like "bills_extension/page_state" or "history/thumbnail". Do not use characters that are not valid in URLs such as spaces, ":", commas, or most other symbols. You should stick to ASCII letters and numbers plus "_", "-", and "/". aExpiration is one of EXPIRE_* above. aFlags should be 0 for now, some flags will be defined in the future. NOTE: ALL ANNOTATIONS WILL GET DELETED WHEN THE PAGE IS REMOVED FROM HISTORY, UNLESS YOU USE THE EXPIRE_NEVER FLAG. This means that if you create an annotation on a random unvisited URI, it will get deleted when the browser shuts down. Otherwise, things can exist in history as annotations but the user has no way of knowing it, potentially violating their privacy expectations about actions such as "Clear history." If there is an important annotation that the user wants to keep, you should make sure that you use EXPIRE_NEVER. This will ensure the item is never completely deleted from the Places database. The annotation "favicon" is special. Favicons are stored in the favicon service, but are special cased in the protocol handler so they look like annotations. Do not set favicons using this service, it will not work. Binary annotations should be set using setItemAnnotationBinary/setPageAnnotationBinary. For other types, only C++ consumers may use the type-specific methods.
void
setPageAnnotation(in nsIURI aURI, in AUTF8String aName, in nsIVariant aValue, in long aFlags, in unsigned short aExpiration)
Sets an annotation just like setAnnotationString, but takes a double as input.
Sets an annotation just like setAnnotationString, but takes an Int32 as input.
Sets an annotation just like setAnnotationString, but takes an Int64 as input.
Returns a list of all URIs having a given annotation.
From nsIAppShellService
nsIXULWindow
createTopLevelWindow(in nsIXULWindow aParent, in nsIURI aUrl, in PRUint32 aChromeMask, in long aInitialWidth, in long aInitialHeight, in nsIAppShell aAppShell)
From nsIBrowserDOMWindow
Load a URI
@param aURI the URI to open. null is allowed. If null is passed in, no
load will be done, though the window the load would have
happened in will be returned.
@param aWhere see possible values described above.
@param aOpener window requesting the open (can be null).
@param aContext the context in which the URI is being opened. This
is used only when aWhere == OPEN_DEFAULTWINDOW.
@return the window into which the URI was opened.
From nsIBrowserHistory
addPageWithDetails Adds a page to history with specific time stamp information. This is used in the History migrator.
hidePage Hide the specified URL from being enumerated (and thus displayed in the UI) If the page hasn't been visited yet, then it will be added as if it was visited, and then marked as hidden
markPageAsTyped Designate the url as having been explicitly typed in by the user, so it's okay to be an autocomplete result.
removePages Remove a bunch of pages from history Notice that this does not call observers for performance reasons, instead setting aDoBatchNotify true will send Begin/EndUpdateBatch
From nsICRLManager
From nsIChromeRegistry
Resolve a chrome URL to an loadable URI using the information in the registry. Does not modify aChromeURL. Chrome URLs are allowed to be specified in "shorthand", leaving the "file" portion off. In that case, the URL is expanded to: chrome://package/provider/package.ext where "ext" is: "xul" for a "content" package, "css" for a "skin" package, and "dtd" for a "locale" package. @param aChromeURL the URL that is to be converted.
returns whether XPCNativeWrappers are enabled for aURI.
From nsIContentDispatchChooser
Asks the user what to do with the content.
@param aHander
The interface describing the details of how this content should or
can be handled.
@param aWindowContext
The parent window context to show this chooser. This can be null,
and some implementations may not care about it. Generally, you'll
want to pass an nsIDOMWindow in so the chooser can be properly
parented when opened.
@param aURI
The URI of the resource that we are asking about.
@param aReason
The reason why we are asking (see above).
void
ask(in nsIHandlerInfo aHandler, in nsIInterfaceRequestor aWindowContext, in nsIURI aURI, in unsigned long aReason)
From nsIContentPolicy
Should the resource at this location be loaded?
ShouldLoad will be called before loading the resource at aContentLocation
to determine whether to start the load at all.
@param aContentType the type of content being tested. This will be one
one of the TYPE_* constants.
@param aContentLocation the location of the content being checked; must
not be null
@param aRequestOrigin OPTIONAL. the location of the resource that
initiated this load request; can be null if
inapplicable
@param aContext OPTIONAL. the nsIDOMNode or nsIDOMWindow that
initiated the request, or something that can QI
to one of those; can be null if inapplicable.
@param aMimeTypeGuess OPTIONAL. a guess for the requested content's
MIME type, based on information available to
the request initiator (e.g., an OBJECT's type
attribute); does not reliably reflect the
actual MIME type of the requested content
@param aExtra an OPTIONAL argument, pass-through for non-Gecko
callers to pass extra data to callees.
@return ACCEPT or REJECT_*
@note shouldLoad can be called while the DOM and layout of the document
involved is in an inconsistent state. This means that implementors of
this method MUST NOT do any of the following:
1) Modify the DOM in any way (e.g. setting attributes is a no-no).
2) Query any DOM properties that depend on layout (e.g. offset*
properties).
3) Query any DOM properties that depend on style (e.g. computed style).
4) Query any DOM properties that depend on the current state of the DOM
outside the "context" node (e.g. lengths of node lists).
5) [JavaScript implementations only] Access properties of any sort on any
object without using XPCNativeWrapper (either explicitly or
implicitly). Due to various DOM0 things, this leads to item 4.
If you do any of these things in your shouldLoad implementation, expect
unpredictable behavior, possibly including crashes, content not showing
up, content showing up doubled, etc. If you need to do any of the things
above, do them off timeout or event.
short
shouldLoad(in unsigned long aContentType, in nsIURI aContentLocation, in nsIURI aRequestOrigin, in nsISupports aContext, in ACString aMimeTypeGuess, in nsISupports aExtra)
Should the resource be processed?
ShouldProcess will be called once all the information passed to it has
been determined about the resource, typically after part of the resource
has been loaded.
@param aContentType the type of content being tested. This will be one
one of the TYPE_* constants.
@param aContentLocation OPTIONAL; the location of the resource being
requested: MAY be, e.g., a post-redirection URI
for the resource.
@param aRequestOrigin OPTIONAL. the location of the resource that
initiated this load request; can be null if
inapplicable
@param aContext OPTIONAL. the nsIDOMNode or nsIDOMWindow that
initiated the request, or something that can QI
to one of those; can be null if inapplicable.
@param aMimeType the MIME type of the requested resource (e.g.,
image/png), as reported by the networking library,
if available (may be empty if inappropriate for
the type, e.g., TYPE_REFRESH).
@param aExtra an OPTIONAL argument, pass-through for non-Gecko
callers to pass extra data to callees.
@return ACCEPT or REJECT_*
@note shouldProcess can be called while the DOM and layout of the document
involved is in an inconsistent state. See the note on shouldLoad to see
what this means for implementors of this method.
short
shouldProcess(in unsigned long aContentType, in nsIURI aContentLocation, in nsIURI aRequestOrigin, in nsISupports aContext, in ACString aMimeType, in nsISupports aExtra)
Should the resource at this location be loaded?
ShouldLoad will be called before loading the resource at aContentLocation
to determine whether to start the load at all.
@param aContentType the type of content being tested. This will be one
one of the TYPE_* constants.
@param aContentLocation the location of the content being checked; must
not be null
@param aRequestOrigin OPTIONAL. the location of the resource that
initiated this load request; can be null if
inapplicable
@param aContext OPTIONAL. the nsIDOMNode or nsIDOMWindow that
initiated the request, or something that can QI
to one of those; can be null if inapplicable.
@param aMimeTypeGuess OPTIONAL. a guess for the requested content's
MIME type, based on information available to
the request initiator (e.g., an OBJECT's type
attribute); does not reliably reflect the
actual MIME type of the requested content
@param aExtra an OPTIONAL argument, pass-through for non-Gecko
callers to pass extra data to callees.
@return ACCEPT or REJECT_*
@note shouldLoad can be called while the DOM and layout of the document
involved is in an inconsistent state. This means that implementors of
this method MUST NOT do any of the following:
1) Modify the DOM in any way (e.g. setting attributes is a no-no).
2) Query any DOM properties that depend on layout (e.g. offset*
properties).
3) Query any DOM properties that depend on style (e.g. computed style).
4) Query any DOM properties that depend on the current state of the DOM
outside the "context" node (e.g. lengths of node lists).
5) [JavaScript implementations only] Access properties of any sort on any
object without using XPCNativeWrapper (either explicitly or
implicitly). Due to various DOM0 things, this leads to item 4.
If you do any of these things in your shouldLoad implementation, expect
unpredictable behavior, possibly including crashes, content not showing
up, content showing up doubled, etc. If you need to do any of the things
above, do them off timeout or event.
short
shouldLoad(in unsigned long aContentType, in nsIURI aContentLocation, in nsIURI aRequestOrigin, in nsISupports aContext, in ACString aMimeTypeGuess, in nsISupports aExtra)
Should the resource be processed?
ShouldProcess will be called once all the information passed to it has
been determined about the resource, typically after part of the resource
has been loaded.
@param aContentType the type of content being tested. This will be one
one of the TYPE_* constants.
@param aContentLocation OPTIONAL; the location of the resource being
requested: MAY be, e.g., a post-redirection URI
for the resource.
@param aRequestOrigin OPTIONAL. the location of the resource that
initiated this load request; can be null if
inapplicable
@param aContext OPTIONAL. the nsIDOMNode or nsIDOMWindow that
initiated the request, or something that can QI
to one of those; can be null if inapplicable.
@param aMimeType the MIME type of the requested resource (e.g.,
image/png), as reported by the networking library,
if available (may be empty if inappropriate for
the type, e.g., TYPE_REFRESH).
@param aExtra an OPTIONAL argument, pass-through for non-Gecko
callers to pass extra data to callees.
@return ACCEPT or REJECT_*
@note shouldProcess can be called while the DOM and layout of the document
involved is in an inconsistent state. See the note on shouldLoad to see
what this means for implementors of this method.
short
shouldProcess(in unsigned long aContentType, in nsIURI aContentLocation, in nsIURI aRequestOrigin, in nsISupports aContext, in ACString aMimeType, in nsISupports aExtra)
From nsIContentPrefService
Get a pref.
Besides the regular string, integer, boolean, etc. values, this method
may return null (nsIDataType::VTYPE_EMPTY), which means the pref is set
to NULL in the database, as well as undefined (nsIDataType::VTYPE_VOID),
which means there is no record for this pref in the database.
@param aURI the URI for which to get the pref, or null to get
the global pref (applies to all URIs)
@param aName the name of the pref to get
@returns the value of the pref
Get the prefs that apply to the given URI. @param aURI the URI for which to retrieve prefs @returns a property bag of prefs
Check whether or not a pref exists. @param aURI the URI for which to check for the pref @param aName the name of the pref to check for
Remove a pref. @param aURI the URI for which to remove the pref @param aName the name of the pref to remove
Set a pref.
@param aURI the URI for which to set the pref, or null to set
the global pref (applies to all URIs)
@param aName the name of the pref to set
@param aValue the new value of the pref
From nsIContentURIGrouper
Determine the group to which the URI belongs. @param aURI the URI to group @returns the group to which the URI belongs
From nsICookiePermission
canAccess
this method is called to test whether or not the given URI/channel may
access the cookie database, either to set or get cookies.
@param aURI
the URI trying to access cookies
@param aChannel
the channel corresponding to aURI
@return one of the following nsCookieAccess values:
ACCESS_DEFAULT, ACCESS_ALLOW, or ACCESS_DENY
canSetCookie
this method is called to test whether or not the given URI/channel may
set a specific cookie. this method is always preceded by a call to
canAccess. it may modify the isSession and expiry attributes of the
cookie via the aIsSession and aExpiry parameters, in order to limit
or extend the lifetime of the cookie. this is useful, for instance, to
downgrade a cookie to session-only if it fails to meet certain criteria.
@param aURI
the URI trying to set the cookie
@param aChannel
the channel corresponding to aURI
@param aCookie
the cookie being added to the cookie database
@param aIsSession
when canSetCookie is invoked, this is the current isSession attribute
of the cookie. canSetCookie may leave this value unchanged to
preserve this attribute of the cookie.
@param aExpiry
when canSetCookie is invoked, this is the current expiry time of
the cookie. canSetCookie may leave this value unchanged to
preserve this attribute of the cookie.
@return true if the cookie can be set.
boolean
canSetCookie(in nsIURI aURI, in nsIChannel aChannel, in nsICookie2 aCookie, inout boolean aIsSession, inout PRInt64 aExpiry)
setAccess
this method is called to block cookie access for the given URI. this
may result in other URIs being blocked as well (e.g., URIs which share
the same host name).
@param aURI
the URI to block
@param aAccess
the new cookie access for the URI.
From nsICookieService
void
setCookieStringFromHttp(in nsIURI aURI, in nsIURI aFirstURI, in nsIPrompt aPrompt, in string aCookie, in string aServerTime, in nsIChannel aChannel)
void
setCookieString(in nsIURI aURI, in nsIPrompt aPrompt, in string aCookie, in nsIChannel aChannel)
void
setCookieStringFromHttp(in nsIURI aURI, in nsIURI aFirstURI, in nsIPrompt aPrompt, in string aCookie, in string aServerTime, in nsIChannel aChannel)
From nsIDOMParser
Initialize the principal and document and base URIs that the parser should
use for documents it creates. If this is not called, then a null
principal and its URI will be used. When creating a DOMParser via the JS
constructor, this will be called automatically. This method may only be
called once. If this method fails, all following parse attempts will
fail.
@param principal The principal to use for documents we create.
If this is null, a codebase principal will be created
based on documentURI; in that case the documentURI must
be non-null.
@param documentURI The documentURI to use for the documents we create.
If null, the principal's URI will be used;
in that case, the principal must be non-null and its
URI must be non-null.
@param baseURI The baseURI to use for the documents we create.
If null, the documentURI will be used.
@param scriptObject The object from which the context for event handling
can be got.
[noscript]
void
init(in nsIPrincipal principal, in nsIURI documentURI, in nsIURI baseURI, in nsIScriptGlobalObject scriptObject)
Initialize the principal and document and base URIs that the parser should
use for documents it creates. If this is not called, then a null
principal and its URI will be used. When creating a DOMParser via the JS
constructor, this will be called automatically. This method may only be
called once. If this method fails, all following parse attempts will
fail.
@param principal The principal to use for documents we create.
If this is null, a codebase principal will be created
based on documentURI; in that case the documentURI must
be non-null.
@param documentURI The documentURI to use for the documents we create.
If null, the principal's URI will be used;
in that case, the principal must be non-null and its
URI must be non-null.
@param baseURI The baseURI to use for the documents we create.
If null, the documentURI will be used.
@param scriptObject The object from which the context for event handling
can be got.
[noscript]
void
init(in nsIPrincipal principal, in nsIURI documentURI, in nsIURI baseURI, in nsIScriptGlobalObject scriptObject)
From nsIDOMParserJS
Just like nsIDOMParser.init, but callable from JS.
Just like nsIDOMParser.init, but callable from JS.
From nsIDOMPopupBlockedEvent
void
initPopupBlockedEvent(in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in nsIDOMWindow requestingWindow, in nsIURI popupWindowURI, in DOMString popupWindowName, in DOMString popupWindowFeatures)
From nsIDocShell
Loads the given URI. This method is identical to loadURI(...) except
that its parameter list is broken out instead of being packaged inside
of an nsIDocShellLoadInfo object...
@param aURI - The URI to load.
@param aReferrer - Referring URI
@param aOwner - Owner (security principal)
@param aInheritOwner - Flag indicating whether the owner of the current
document should be inherited if aOwner is null.
@param aStopActiveDoc - Flag indicating whether loading the current
document should be stopped.
@param aWindowTarget - Window target for the load.
@param aTypeHint - A hint as to the content-type of the resulting
data. May be null or empty if no hint.
@param aPostDataStream - Post data stream (if POSTing)
@param aHeadersStream - Stream containing "extra" request headers...
@param aLoadFlags - Flags to modify load behaviour. Flags are defined
in nsIWebNavigation.
@param aSHEntry - Active Session History entry (if loading from SH)
[noscript]
void
internalLoad(in nsIURI aURI, in nsIURI aReferrer, in nsISupports aOwner, in PRUint32 aFlags, in wstring aWindowTarget, in string aTypeHint, in nsIInputStream aPostDataStream, in nsIInputStream aHeadersStream, in unsigned long aLoadFlags, in nsISHEntry aSHEntry, in boolean firstParty, out nsIDocShell aDocShell, out nsIRequest aRequest)
Loads the given URI. This method is identical to loadURI(...) except
that its parameter list is broken out instead of being packaged inside
of an nsIDocShellLoadInfo object...
@param aURI - The URI to load.
@param aReferrer - Referring URI
@param aOwner - Owner (security principal)
@param aInheritOwner - Flag indicating whether the owner of the current
document should be inherited if aOwner is null.
@param aStopActiveDoc - Flag indicating whether loading the current
document should be stopped.
@param aWindowTarget - Window target for the load.
@param aTypeHint - A hint as to the content-type of the resulting
data. May be null or empty if no hint.
@param aPostDataStream - Post data stream (if POSTing)
@param aHeadersStream - Stream containing "extra" request headers...
@param aLoadFlags - Flags to modify load behaviour. Flags are defined
in nsIWebNavigation.
@param aSHEntry - Active Session History entry (if loading from SH)
[noscript]
void
internalLoad(in nsIURI aURI, in nsIURI aReferrer, in nsISupports aOwner, in PRUint32 aFlags, in wstring aWindowTarget, in string aTypeHint, in nsIInputStream aPostDataStream, in nsIInputStream aHeadersStream, in unsigned long aLoadFlags, in nsISHEntry aSHEntry, in boolean firstParty, out nsIDocShell aDocShell, out nsIRequest aRequest)
Loads a given stream. This will give priority to loading the requested
stream in the object implementing this interface. If it can't be loaded
here however, the URL dispatched will go through its normal process of
content loading.
@param aStream - The input stream that provides access to the data
to be loaded. This must be a blocking, threadsafe
stream implementation.
@param aURI - The URI representing the stream, or null.
@param aContentType - The type (MIME) of data being loaded (empty if unknown).
@param aContentCharset - The charset of the data being loaded (empty if unknown).
@param aLoadInfo - This is the extended load info for this load. This
most often will be null, but if you need to do
additional setup for this load you can get a
loadInfo object by calling createLoadInfo. Once
you have this object you can set the needed
properties on it and then pass it to loadStream.
[noscript]
void
loadStream(in nsIInputStream aStream, in nsIURI aURI, in ACString aContentType, in ACString aContentCharset, in nsIDocShellLoadInfo aLoadInfo)
For editors and suchlike who wish to change the URI associated with the document. Note if you want to get the current URI, use the read-only property on nsIWebNavigation.
Loads a given URI. This will give priority to loading the requested URI
in the object implementing this interface. If it can't be loaded here
however, the URL dispatcher will go through its normal process of content
loading.
@param uri - The URI to load.
@param loadInfo - This is the extended load info for this load. This
most often will be null, but if you need to do
additional setup for this load you can get a loadInfo
object by calling createLoadInfo. Once you have this
object you can set the needed properties on it and
then pass it to loadURI.
@param aLoadFlags - Flags to modify load behaviour. Flags are defined in
nsIWebNavigation. Note that using flags outside
LOAD_FLAGS_MASK is only allowed if passing in a
non-null loadInfo. And even some of those might not
be allowed. Use at your own risk.
[noscript]
void
loadURI(in nsIURI uri, in nsIDocShellLoadInfo loadInfo, in unsigned long aLoadFlags, in boolean firstParty)
From nsIDownloadHistory
Adds a download to history. This will also notify observers that the
URI aSource is visited with the topic NS_LINK_VISITED_EVENT_TOPIC if
aSource has not yet been visited.
@param aSource
The source of the download we are adding to history. This cannot be
null.
@param aReferrer
[optional] The referrer of source URI.
@param aStartTime
[optional] The time the download was started. If the start time
is not given, the current time is used.
@throws NS_ERROR_NOT_AVAILABLE
In a situation where a history implementation is not available,
where 'history implementation' refers to something like
nsIGlobalHistory and friends.
Adds a download to history. This will also notify observers that the
URI aSource is visited with the topic NS_LINK_VISITED_EVENT_TOPIC if
aSource has not yet been visited.
@param aSource
The source of the download we are adding to history. This cannot be
null.
@param aReferrer
[optional] The referrer of source URI.
@param aStartTime
[optional] The time the download was started. If the start time
is not given, the current time is used.
@throws NS_ERROR_NOT_AVAILABLE
In a situation where a history implementation is not available,
where 'history implementation' refers to something like
nsIGlobalHistory and friends.
From nsIDownloadManager
Creates an nsIDownload and adds it to be managed by the download manager.
@param aSource The source URI of the transfer. Must not be null.
@param aTarget The target URI of the transfer. Must not be null.
@param aDisplayName The user-readable description of the transfer.
Can be empty.
@param aMIMEInfo The MIME info associated with the target,
including MIME type and helper app when appropriate.
This parameter is optional.
@param startTime Time when the download started
@param aTempFile The location of a temporary file; i.e. a file in which
the received data will be stored, but which is not
equal to the target file. (will be moved to the real
target by the caller, when the download is finished)
May be null.
@param aCancelable An object that can be used to abort the download.
Must not be null.
@return The newly created download item with the passed-in properties.
@note This does not actually start a download. If you want to add and
start a download, you need to create an nsIWebBrowserPersist, pass it
as the aCancelable object, call this method, set the progressListener
as the returned download object, then call saveURI.
nsIDownload
addDownload(in short aDownloadType, in nsIURI aSource, in nsIURI aTarget, in AString aDisplayName, in nsIMIMEInfo aMIMEInfo, in PRTime aStartTime, in nsILocalFile aTempFile, in nsICancelable aCancelable)
Creates an nsIDownload and adds it to be managed by the download manager.
@param aSource The source URI of the transfer. Must not be null.
@param aTarget The target URI of the transfer. Must not be null.
@param aDisplayName The user-readable description of the transfer.
Can be empty.
@param aMIMEInfo The MIME info associated with the target,
including MIME type and helper app when appropriate.
This parameter is optional.
@param startTime Time when the download started
@param aTempFile The location of a temporary file; i.e. a file in which
the received data will be stored, but which is not
equal to the target file. (will be moved to the real
target by the caller, when the download is finished)
May be null.
@param aCancelable An object that can be used to abort the download.
Must not be null.
@return The newly created download item with the passed-in properties.
@note This does not actually start a download. If you want to add and
start a download, you need to create an nsIWebBrowserPersist, pass it
as the aCancelable object, call this method, set the progressListener
as the returned download object, then call saveURI.
nsIDownload
addDownload(in short aDownloadType, in nsIURI aSource, in nsIURI aTarget, in AString aDisplayName, in nsIMIMEInfo aMIMEInfo, in PRTime aStartTime, in nsILocalFile aTempFile, in nsICancelable aCancelable)
From nsIEffectiveTLDService
Returns the base domain of a URI; that is, the public suffix with a given
number of additional domain name parts. For example, the result of this method
for "www.bbc.co.uk", depending on the value of aAdditionalParts parameter, will
be:
0 (default) -> bbc.co.uk
1 -> www.bbc.co.uk
Similarly, the public suffix for "www.developer.mozilla.org" is "org", and the base
domain will be:
0 (default) -> mozilla.org
1 -> developer.mozilla.org
2 -> www.developer.mozilla.org
The base domain will be returned encoded in ASCII/ACE and will be normalized
according to RFC 3454, i.e. the same encoding returned by nsIURI::GetAsciiHost().
If consumers wish to compare the result of this method against the host from
another nsIURI, the host should be obtained using nsIURI::GetAsciiHost().
In the case of nested URIs, the innermost URI will be used.
@param aURI The URI to be analyzed
@param aAdditionalParts Number of domain name parts to be
returned in addition to the public suffix
@returns the base domain (public suffix plus the requested number of additional parts)
@throws NS_ERROR_UNEXPECTED
or other error returned by nsIIDNService::normalize when
the hostname contains characters disallowed in URIs
@throws NS_ERROR_INSUFFICIENT_DOMAIN_LEVELS
when there are insufficient subdomain levels in the hostname to satisfy the
requested aAdditionalParts value.
@throws NS_ERROR_HOST_IS_IP_ADDRESS
if aHost is a numeric IPv4 or IPv6 address (as determined by
the success of a call to PR_StringToNetAddr()).
@see getPublicSuffix()
Returns the public suffix of a URI. A public suffix is the highest-level domain
under which individual domains may be registered; it may therefore contain one
or more dots. For example, the public suffix for "www.bbc.co.uk" is "co.uk",
because the .uk TLD does not allow the registration of domains at the
second level ("bbc.uk" is forbidden).
The public suffix will be returned encoded in ASCII/ACE and will be normalized
according to RFC 3454, i.e. the same encoding returned by nsIURI::GetAsciiHost().
If consumers wish to compare the result of this method against the host from
another nsIURI, the host should be obtained using nsIURI::GetAsciiHost().
In the case of nested URIs, the innermost URI will be used.
@param aURI The URI to be analyzed
@returns the public suffix
@throws NS_ERROR_UNEXPECTED
or other error returned by nsIIDNService::normalize when
the hostname contains characters disallowed in URIs
@throws NS_ERROR_HOST_IS_IP_ADDRESS
if the host is a numeric IPv4 or IPv6 address (as determined by
the success of a call to PR_StringToNetAddr()).
From nsIExternalProtocolService
Used to load a URI via an external application. Might prompt the user for
permission to load the external application.
@param aURI
The URI to load
@param aWindowContext
The window to parent the dialog against, and, if a web handler
is chosen, it is loaded in this window as well. This parameter
may be ultimately passed nsIURILoader.openURI in the case of a
web handler, and aWindowContext is null or not present, web
handlers will fail. We need to do better than that; bug 394483
filed in order to track.
@note Embedders that do not expose the http protocol should not currently
use web-based protocol handlers, as handoff won't work correctly
(bug 394479).
Used to load a url via an external protocol handler (if one exists) @param aURL The url to load @deprecated Use LoadURI instead (See Bug 389565 for removal)
From nsIFaviconService
Adds a given favicon's URI to the failed favicon cache. The lifespan of the favicon cache is up to the caching system. This cache will also be written to if you use setAndLoadFaviconForPage and it encounters an error. @see isFailedFavicon
Retrieves the given favicon data. Throws if we don't have data.
If there is no data but we have an entry for this favicon, aDataLen will
be 0 and aData will be NULL.
@param aFaviconURI
URI of the favicon whose data is being read
@param aData
Output parameter where the binary favicon data will be placed.
This will be null if we have this URI but have no data associated
with it.
@param aDataLen
Output parameter where the size of the binary data will be placed.
@param aMimeType
Output parameter where the MIME type will be placed.
@throws NS_ERROR_NOT_AVAILABLE
Thrown when we have never heard of this favicon URI.
Retrieves the given favicon data as a data URL. Throws if we don't
have data.
If there is no data but we have an entry for this favicon, the return
value will be NULL.
@see getFaviconData
@param aFaviconURI
URI of the favicon whose data is being read
@returns A data URL containing the data of the favicon. This will be
null if we have this URL but have no data associated with it.
@throws NS_ERROR_NOT_AVAILABLE
Thrown when we have never heard of this favicon URL.
For a given icon URI, this will return a URI that will result in the image.
In most cases, this is an annotation URI. For chrome, this will do nothing
and return the input URI.
@param aFaviconURI
The URI of an icon in the favicon service.
@returns A URI that will load the desired icon. This is NOT the URI of the
icon as set on the page, but a URI that will give you the data
out of the favicon service. For a normal page with a favicon
we've stored, this will be an annotation URI which will then
cause the corresponding favicon data to be loaded from this
service. For pages where we don't have a favicon, this will be a
chrome URI of the default icon for a web page. For chrome, the
output will be the same as the input.
No validity checking is done. If you pass an icon URI that we've
never seen, you'll get back a URI that references an invalid
icon. The moz-anno protocol handler's special case for "favicon"
annotations will detect most invalid icons and it will resolve to
the default icon, although without caching. For invalid chrome
URIs, you'll get a broken image.
Checks to see if this favicon is in the failed favicon cache. Returns true if the favicon is in the failed cache, meaning you probably shouldn't try to load it. A false return value means that it's worth trying to load it. This allows you to avoid trying to load "foo.com/favicon.ico" for every page on a site that doesn't have a favicon.
Removes the given favicon from the failed favicon cache. If the icon is not in the cache, this function will silently succeed.
Same as SetFaviconUrlForPage except that this also attempts to set the
data by loading the favicon URI. An async request will be created for
this URI and if the data is available, it will asynchronously get
saved in the database without any further work from the caller.
If the icon data already exists, we won't normally try to re-load the
icon from the net (or more likely the cache). If the icon is in the
failed favicon cache we won't do anything. Use forceReload to force
a reload of the data. This will remove the favicon from the failed
cache. If it then fails again, it will be re-added to the failed cache.
SetFaviconUrlForPage and SetFaviconData will take any URI you provide
and save it. This function is intended for automatic usage, and will
only save favicons for "good" URIs, as defined by what gets added to
history. For "bad" URIs, this function will succeed and do nothing.
This function will also ignore the error page favicon URI
(chrome://global/skin/icons/warning-16.png). Icons that fail to load
will automatically be added to the failed favicon cache.
This function will not save favicons for non-bookmarked URIs when
history is disabled (expiration time is 0 days). The rest of the functions
here will always store favicons even when history is disabled.
@param aPageURI
URI of the page whose favicon is being set.
@param aFaviconURI
URI of the favicon to associate with the page.
@param aForceReload
Unset is normal behavior, we will only try to reload the favicon
if we don't have it or if it has expired from the cache. If set,
it will always try to reload the favicon.
Stores the data of a given favicon. You must specify the MIME type
unless you're clearing the data.
You can set the data even if you haven't called SetFaviconUrlForPage
yet. It will be stored but will not be associated with any page.
However, any favicons not associated with a visited web page, bookmark,
or "place:" URI will be expired when history cleanup is done. This might
be done at any time on a timer, so you should not let the message loop
run between calls or your icon may get deleted.
It is best to set the favicon data, and then associate it with a page.
This will make the notifications more efficient since the icon will
already have data when the set favicon observer messages goes out.
The expiration time is stored. This will be used if you call
SetAndLoadFaviconForPage to see whether the data needs reloading.
Do not use this function for chrome: icon URIs. You should reference the
chrome image yourself. The GetFaviconLinkForIcon/Page will ignore any
associated data if the favicon URI is "chrome:" and just return the same
chrome URI.
This function does NOT send out notifications that the data has changed.
Potentially, many pages could be referencing the favicon and they could
be visible in a history view or toolbar. But sending out those
notifications is very intensive. Those pages will keep the old icon
until they have been refreshed by other means.
This function tries to optimize the favicon size, if it is bigger
than defined limit we will try to convert it to a 16x16 png image. If the
conversion fails and favicon is bigger than our max accepted favicon size
we will fail and the favicon won't be saved.
@param aFaviconURI
URI of the favicon whose data is being set.
@param aData
Binary contents of the favicon to save
@param aDataLength
Length of binary data
@param aMimeType
MIME type of the data to store. This is important so that we know
what to report when the favicon is used.
@param aExpiration
Time in microseconds since the epoch when this favicon expires.
Until this time, we won't try to load it again.
@throws NS_ERROR_FAILURE
Thrown if the favicon is overbloated and won't be saved to the db.
Stores the data of a given favicon. The data is provided by a string
containing a data URL.
This function tries to optimize the favicon size, if it is bigger
than defined limit we will try to convert it to a 16x16 png image. If the
conversion fails and favicon is bigger than our max accepted favicon size
we will fail and the favicon won't be saved.
@see setFaviconData
@param aFaviconURI
URI of the favicon whose data is being set.
@param aDataURL
string containing a data URL that represents the contents of
the favicon to save
@param aExpiration
Time in microseconds since the epoch when this favicon expires.
Until this time, we won't try to load it again.
@throws NS_ERROR_FAILURE
Thrown if the favicon is overbloated and won't be saved to the db.
Declares that a given page uses a favicon with the given URI.
You needn't have specified any data at this point. An entry linking the
favicon with the page will be create with no data. You can populate it
later with SetFaviconData. However, any favicons not associated with a
visited web page, a bookmark, or a "place:" URI will be expired when
history cleanup is done * (typically at app shutdown, but also possibly
if the user clears their * cache or history).
This will send out history notifications if the new favicon has any data.
This means that you should try to set data first if you have it, otherwise
the page might not get a notification sent for it since data setting does
not send notifications.
@param aPageURI
URI of the page whose favicon is being set.
@param aFaviconURI
URI of the favicon to associate with the page.
Retrieves the URI of the favicon for the given page.
@param aPageURI
URI of the page whose favicon is desired
@returns The URI of the favicon associated with that page. Returning a
URI here does NOT mean that we have data for this favicon, only
that we know what the favicon should be.
@throws NS_ERROR_NOT_AVAILABLE
When the page is not found or it has no favicon.
For a given page, this will give you a URI that, when displayed in chrome,
will result in the given page's favicon. Unlike the other get functions,
we needn't have heard of the page or its favicon: the default one will
be returned in this case.
@see getFaviconLinkForIcon
This function only adds the extra level of indirection, looking up
the favicon based on the page URI and using the default if not found.
@param aPageURI
URI of the page whose favicon is desired
@returns A URI that will give you the icon image. This is NOT the URI of
the icon as set on the page, but a URI that will give you the
data out of the favicon service. For a normal page with a
favicon we've stored, this will be an annotation URI which will
then cause the corresponding favicon data to be loaded from this
service. For pages where we don't have a favicon, this will be a
chrome URI of the default icon for a web page.
Same as SetFaviconUrlForPage except that this also attempts to set the
data by loading the favicon URI. An async request will be created for
this URI and if the data is available, it will asynchronously get
saved in the database without any further work from the caller.
If the icon data already exists, we won't normally try to re-load the
icon from the net (or more likely the cache). If the icon is in the
failed favicon cache we won't do anything. Use forceReload to force
a reload of the data. This will remove the favicon from the failed
cache. If it then fails again, it will be re-added to the failed cache.
SetFaviconUrlForPage and SetFaviconData will take any URI you provide
and save it. This function is intended for automatic usage, and will
only save favicons for "good" URIs, as defined by what gets added to
history. For "bad" URIs, this function will succeed and do nothing.
This function will also ignore the error page favicon URI
(chrome://global/skin/icons/warning-16.png). Icons that fail to load
will automatically be added to the failed favicon cache.
This function will not save favicons for non-bookmarked URIs when
history is disabled (expiration time is 0 days). The rest of the functions
here will always store favicons even when history is disabled.
@param aPageURI
URI of the page whose favicon is being set.
@param aFaviconURI
URI of the favicon to associate with the page.
@param aForceReload
Unset is normal behavior, we will only try to reload the favicon
if we don't have it or if it has expired from the cache. If set,
it will always try to reload the favicon.
Declares that a given page uses a favicon with the given URI.
You needn't have specified any data at this point. An entry linking the
favicon with the page will be create with no data. You can populate it
later with SetFaviconData. However, any favicons not associated with a
visited web page, a bookmark, or a "place:" URI will be expired when
history cleanup is done * (typically at app shutdown, but also possibly
if the user clears their * cache or history).
This will send out history notifications if the new favicon has any data.
This means that you should try to set data first if you have it, otherwise
the page might not get a notification sent for it since data setting does
not send notifications.
@param aPageURI
URI of the page whose favicon is being set.
@param aFaviconURI
URI of the favicon to associate with the page.
From nsIFeedProcessor
Parse a feed asynchronously. The caller must then call the
nsIFeedProcessor's nsIStreamListener methods to drive the
parse. Do not call the other parse methods during an asynchronous
parse.
@param requestObserver The observer to notify on start/stop. This
argument can be null.
@param uri The base URI.
Parse a feed from an nsIInputStream. @param stream The input stream. @param uri The base URI.
Parse a feed from a string. @param str The string to parse. @param uri The base URI.
From nsIFeedResultService
Gets a Feed Handler object registered using addFeedResult.
@param uri
The URI of the feed a handler is being requested for
Unregisters a Feed Handler object registered using addFeedResult.
@param uri
The feed URI the handler was registered under. This must be
the same *instance* the feed was registered under.
From nsIFormSubmitObserver
void
notify(in nsIDOMHTMLFormElement formNode, in nsIDOMWindowInternal window, in nsIURI actionURL, out boolean cancelSubmit)
From nsIFrameLoader
Loads the specified URI in this frame. Behaves identically to loadFrame, except that this method allows specifying the URI to load.
From nsIGlobalHistory2
Add a URI to global history
@param aURI the URI of the page
@param aRedirect whether the URI was redirected to another location;
this is 'true' for the original URI which is
redirected.
@param aToplevel whether the URI is loaded in a top-level window
@param aReferrer the URI of the referring page
@note Docshell will not filter out URI schemes like chrome: data:
about: and view-source:. Embedders should consider filtering out
these schemes and others, e.g. mailbox: for the main URI and the
referrer.
Add a URI to global history
@param aURI the URI of the page
@param aRedirect whether the URI was redirected to another location;
this is 'true' for the original URI which is
redirected.
@param aToplevel whether the URI is loaded in a top-level window
@param aReferrer the URI of the referring page
@note Docshell will not filter out URI schemes like chrome: data:
about: and view-source:. Embedders should consider filtering out
these schemes and others, e.g. mailbox: for the main URI and the
referrer.
Checks to see whether the given URI is in history. @param aURI the uri to the page @return true if a URI has been visited
Set the page title for the given uri. URIs that are not already in global history will not be added. @param aURI the URI for which to set to the title @param aTitle the page title
From nsIGlobalHistory3
Get the Gecko flags for this URI. These flags are used by Gecko as hints to optimize page loading. Not all histories have them; this need not be supported (just return NS_ERROR_NOT_IMPLEMENTED. These flags are opaque and should not be interpreted by the history engine.
Set the Gecko flags for this URI. May fail if the history entry doesn't have any flags or if there is no entry for the URI.
From nsIGnomeVFSService
From nsIHandlerApp
Launches the application with the specified URI.
@param aURI
The URI to launch this application with
@param aWindowContext
Currently only relevant to web-handler apps. If given, this
represents the docshell to load the handler in and is passed
through to nsIURILoader.openURI. If this parameter is null or
not present, the web handler app implementation will attempt to
find/create a place to load the handler and do so. As of this
writing, it tries to load the web handler in a new window using
nsIBrowserDOMWindow.openURI. In the future, it may attempt to
have a more comprehensive strategy which could include handing
off to the system default browser (bug 394479).
From nsIHandlerInfo
Launches the application with the specified URI, in a way that
depends on the value of preferredAction. preferredAction must be
useHelperApp or useSystemDefault.
@note Only the URI scheme is used to determine how to launch. This is
essentially a pass-by-value operation. This means that in the case of
a file: URI, the handler that is registered for file: will be launched
and our code will not make any decision based on the content-type or
extension, though the invoked file: handler is free to do so.
@param aURI
The URI to launch this application with
@param aWindowContext
The window to parent the dialog against, and, if a web handler
is chosen, it is loaded in this window as well. See
nsIHandlerApp.launchWithURI for more details.
@throw NS_ERROR_INVALID_ARG if preferredAction is not valid for this
call. Other exceptions may be thrown.
From nsIIOService
Equivalent to newChannelFromURI(newURI(...))
This method constructs a new URI by determining the scheme of the URI spec, and then delegating the construction of the URI to the protocol handler for that scheme. QueryInterface can be used on the resulting URI object to obtain a more specific type of URI. @see nsIProtocolHandler::newURI
Creates a channel for a given URI. @param aURI nsIURI from which to make a channel @return reference to the new nsIChannel object
From nsIIncrementalDownload
Initialize the incremental download object. If the destination file
already exists, then only the remaining portion of the file will be
fetched.
NOTE: The downloader will create the destination file if it does not
already exist. It will create the file with the permissions 0600 if
needed. To affect the permissions of the file, consumers of this
interface may create an empty file at the specified destination prior to
starting the incremental download.
NOTE: Since this class may create a temporary file at the specified
destination, it is advisable for the consumer of this interface to specify
a file name for the destination that would not tempt the user into
double-clicking it. For example, it might be wise to append a file
extension like ".part" to the end of the destination to protect users from
accidentally running "blah.exe" before it is a complete file.
@param uri
The URI to fetch.
@param destination
The location where the file is to be stored.
@param chunkSize
The size of the chunks to fetch. A non-positive value results in
the default chunk size being used.
@param intervalInSeconds
The amount of time to wait between fetching chunks. Pass a
negative to use the default interval, or 0 to fetch the remaining
part of the file in one chunk.
From nsIInputStreamChannel
Sets the URI for this channel. This must be called before the channel is opened, and it may only be called once.
From nsIJARURI
Create a clone of the JAR URI with a new root URI (the URI for the actual JAR file).
From nsILivemarkService
Determines whether the feed URI is a currently registered livemark.
@param aFeedURI
Feed URI to look for.
@returns the found livemark folder id, or -1 if nothing was found.
Creates a new livemark @param folder The id of the parent folder @param name The name to show when displaying the livemark @param siteURI The URI of the site the livemark was created from @param feedURI The URI of the actual RSS feed @param index The index to insert at, or -1 to append @returns the ID of the folder for the livemark
Same as above, use during startup to avoid HTTP traffic
Sets the URI of the feed associated with a livemark container.
NOTE: The caller is responsible for reloading the livemark after
changing its feed URI (since the contents are likely to be different
given a different feed).
@param container The folder ID of a livemark container
@param feedURI nsIURI object representing the syndication feed URI
@throws NS_ERROR_INVALID_ARG if the folder ID isn't known or identifies
a folder that isn't a livemark container; also if the feedURI
argument isn't a valid nsIURI object
Creates a new livemark @param folder The id of the parent folder @param name The name to show when displaying the livemark @param siteURI The URI of the site the livemark was created from @param feedURI The URI of the actual RSS feed @param index The index to insert at, or -1 to append @returns the ID of the folder for the livemark
Same as above, use during startup to avoid HTTP traffic
Sets the URI of the website associated with a livemark container.
@param container The folder ID of a livemark container
@param siteURI nsIURI object representing the site URI, or null
to clear the site URI for this livemark container
@throws NS_ERROR_INVALID_ARG if the folder ID isn't known or identifies
a folder that isn't a livemark container; also if the siteURI
argument isn't a valid nsIURI object (or null)
From nsIMIMEService
Retrieves a ACString representation of the MIME type associated with this URI. The association is purely file extension to MIME type based. No attempt to determine the type via server headers or byte scanning is made. @param The URI the user wants MIME info on. @return The MIME type, if any.
From nsIMicrosummaryService
Install the microsummary generator from the resource at the supplied URI.
Callable by content via the addMicrosummaryGenerator() sidebar method.
@param generatorURI
the URI of the resource providing the generator
Create a microsummary for a given page URI and generator URI.
@param pageURI
the URI of the page to be summarized
@param generatorURI
the URI of the microsummary generator
@returns an nsIMicrosummary for the given page and generator URIs.
Return a microsummary generator for the given URI.
@param generatorURI
the URI of the generator
@returns an nsIMicrosummaryGenerator for the given URI.
Create a microsummary for a given page URI and generator URI.
@param pageURI
the URI of the page to be summarized
@param generatorURI
the URI of the microsummary generator
@returns an nsIMicrosummary for the given page and generator URIs.
Get the set of microsummaries available for a given page. The set
might change after this method returns, since this method will trigger
an asynchronous load of the page in question (if it isn't already loaded)
to see if it references any page-specific microsummaries.
If the caller passes a bookmark ID, and one of the microsummaries
is the current one for the bookmark, this method will retrieve content
from the datastore for that microsummary, which is useful when callers
want to display a list of microsummaries for a page that isn't loaded,
and they want to display the actual content of the selected microsummary
immediately (rather than after the content is asynchronously loaded).
@param pageURI
the URI of the page for which to retrieve available microsummaries
@param bookmarkID (optional)
the ID of the bookmark for which this method is being called
@returns an nsIMicrosummarySet of nsIMicrosummaries for the given page
From nsINavBookmarksService
Change the bookmarked URI for a bookmark. This changes which "place" the bookmark points at, which means all annotations, etc are carried along.
Returns the list of bookmark ids that contain the given URI.
TArray version of getBookmarksIdForURI for ease of use in C++ code. Pass in a reference to a TArray; it will get cleared and filled with the resulting list of folder IDs.
Used to see if the given URI is bookmarked, or any page that redirected to it is bookmarked. For example, if I bookmark "mozilla.org" by manually typing it in, and follow the bookmark, I will get redirected to "www.mozilla.org". Logically, this new page is also bookmarked. This function, if given "www.mozilla.org", will return the URI of the bookmark, in this case "mozilla.org". If there is no bookmarked page found, it will return NULL.
Retrieves the keyword for the given URI. Will be void string (null in JS) if no such keyword is found.
Inserts a child bookmark into the given folder.
@param aParentFolder
The id of the parent folder
@param aURI
The URI to insert
@param aIndex
The index to insert at, or DEFAULT_INDEX to append
@param aTitle
The title for the new bookmark
@return The ID of the newly-created bookmark.
Returns true if the given URI is in any bookmark folder. If you want the results to be redirect-aware, use getBookmarkedURIFor()
From nsINavHistoryObserver
This page and all of its visits are about to be deleted. Note: the page
may not necessarily have actually existed for this function to be called.
@param aURI
The URI being deleted.
This page and all of its visits are being deleted. Note: the page may not necessarily have actually existed for this function to be called. Delete notifications are only 99.99% accurate. Batch delete operations must be done in two steps, so first come notifications, then a bulk delete. If there is some error in the middle (for example, out of memory) then you'll get a notification and it won't get deleted. There's no easy way around this.
Called when a history entry expires. You will receive notifications that a specific visit has expired with the time of that visit. When the last visit for a history entry expires, the history entry itself is deleted and aWholeEntry is set. (If your observer only cares about URLs and not specific visits, it needs only to listen for aWholeEntry notifications). It is possible for a history entry to be deleted that has no visits if something is out of sync or after a bookmark is deleted that has no visits (thus freeing the history entry). In these cases, aVisitTime will be 0.
Called whenever either the "real" title or the custom title of the page changed. BOTH TITLES ARE ALWAYS INCLUDED in this notification, even though only one will change at a time. Often, consumers will want to display the user title if it is available, and fall back to the page title (the one specified in the <title> tag of the page). Note that there is a difference between an empty title and a NULL title. An empty string means that somebody specifically set the title to be nothing. NULL means nobody set it. From C++: use IsVoid() and SetIsVoid() to see whether an empty string is "null" or not (it will always be an empty string in either case).
Called when a resource is visited. This is called the first time a
resource (page, image, etc.) is seen as well as every subsequent time.
Normally, transition types of TRANSITION_EMBED (corresponding to images in
a page, for example) are not displayed in history results (unless
includeHidden is set). Many observers can ignore _EMBED notifications
(which will comprise the majority of visit notifications) to save work.
@param aVisitID ID of the visit that was just created.
@param aTime Time of the visit
@param aSessionID The ID of one connected sequence of visits.
@param aReferringID The ID of the visit the user came from. 0 if empty.
@param aTransitionType One of nsINavHistory.TRANSITION_*
@param aAdded Incremented by query nodes when the visited uri
belongs to them. If no such query exists, the
history result creates a new query node dynamically.
It is used in places views only and can be ignored.
From nsINavHistoryService
Call to manually add a visit for a specific page. This will probably not
be commonly used other than for backup/restore type operations. If the URI
does not have an entry in the history database already, one will be created
with no visits, no title, hidden, not typed. Adding a visit will
automatically increment the visit count for the visited page and will unhide
it and/or mark it typed according to the transition type.
@param aURI Visited page
@param aTime Time page was visited (microseconds)
@param aReferringURI The URI of the visit that generated this one. Use
null for no referrer.
@param aTranstitionType Type of transition: one of TRANSITION_* above
@param aIsRedirect True if the given visit redirects to somewhere else.
(ie you will create an visit out of here that is a
redirect transition). This causes this page to be
hidden in normal history views (unless it has been
unhidden by visiting it with a non-redirect).
@param aSessionID The session ID that this page belongs to. Use 0 for
no session.
@returns The ID of the created visit. This will be 0 if the URI is not
valid for adding to history (canAddURI = false).
Call to manually add a visit for a specific page. This will probably not
be commonly used other than for backup/restore type operations. If the URI
does not have an entry in the history database already, one will be created
with no visits, no title, hidden, not typed. Adding a visit will
automatically increment the visit count for the visited page and will unhide
it and/or mark it typed according to the transition type.
@param aURI Visited page
@param aTime Time page was visited (microseconds)
@param aReferringURI The URI of the visit that generated this one. Use
null for no referrer.
@param aTranstitionType Type of transition: one of TRANSITION_* above
@param aIsRedirect True if the given visit redirects to somewhere else.
(ie you will create an visit out of here that is a
redirect transition). This causes this page to be
hidden in normal history views (unless it has been
unhidden by visiting it with a non-redirect).
@param aSessionID The session ID that this page belongs to. Use 0 for
no session.
@returns The ID of the created visit. This will be 0 if the URI is not
valid for adding to history (canAddURI = false).
Returns true if this URI would be added to the history. You don't have to worry about calling this, addPageToSession/addURI will always check before actually adding the page. This function is public because some components may want to check if this page would go in the history (i.e. for annotations).
Gets the stored character-set for an URI.
@param aURI
URI to retrieve character-set for
@returns character-set, empty string if not found
This is just like markPageAsTyped (in nsIBrowserHistory, also implemented by the history service), but for bookmarks. It declares that the given URI is being opened as a result of following a bookmark. If this URI is loaded soon after this message has been received, that transition will be marked as following a bookmark.
Sets the character-set for an URI.
@param aURI
URI to set the character-set for
@param aCharset
character-set to be set
From nsINetUtil
Test whether the protocol handler for this URI or that for any of
its inner URIs has the given protocol flags. This will QI aURI to
nsINestedURI and walk the nested URI chain.
@param aURI the URI in question
@param aFlags the flags we're testing for.
@return whether any of the protocol handlers involved have all the flags
in aFlags.
Test whether the given URI's handler has the given protocol flags.
@param aURI the URI in question
@param aFlags the flags we're testing for.
@return whether the protocol handler for aURI has all the flags
in aFlags.
Take aURI and produce an immutable version of it for the caller. If aURI is immutable this will be aURI itself; otherwise this will be a clone, marked immutable if possible. Passing null to this method is allowed; in that case it will return null.
From nsIOfflineCacheUpdate
Initialize the update.
@param aManifestURI
The manifest URI to be checked.
@param aDocumentURI
The page that is requesting the update.
Initialize the update for partial processing.
@param aManifestURI
The manifest URI of the related cache.
@param aClientID
Client ID of the cache to store resource to. This ClientID
must be ID of cache in the cache group identified by
the manifest URI passed in the first parameter.
@param aDocumentURI
The page that is requesting the update. May be null
when this information is unknown.
Initialize the update.
@param aManifestURI
The manifest URI to be checked.
@param aDocumentURI
The page that is requesting the update.
Initialize the update for partial processing.
@param aManifestURI
The manifest URI of the related cache.
@param aClientID
Client ID of the cache to store resource to. This ClientID
must be ID of cache in the cache group identified by
the manifest URI passed in the first parameter.
@param aDocumentURI
The page that is requesting the update. May be null
when this information is unknown.
Add a dynamic URI to the offline cache as part of the update.
@param aURI
The URI to add.
From nsIOfflineCacheUpdateService
Schedule a cache update for a manifest when the document finishes loading.
void
scheduleOnDocumentStop(in nsIURI aManifestURI, in nsIURI aDocumentURI, in nsIDOMDocument aDocument)
Schedule a cache update for a given offline manifest. If an existing update is scheduled or running, that update will be returned. Otherwise a new update will be scheduled.
Schedule a cache update for a manifest when the document finishes loading.
void
scheduleOnDocumentStop(in nsIURI aManifestURI, in nsIURI aDocumentURI, in nsIDOMDocument aDocument)
Schedule a cache update for a given offline manifest. If an existing update is scheduled or running, that update will be returned. Otherwise a new update will be scheduled.
Checks whether a document at the given URI should have access
to the offline cache.
@param aURI
The URI to check
@param aPrefBranch
The pref branch to use to check the
offline-apps.allow_by_default pref. If not specified,
the pref service will be used.
From nsIParentalControlsService
Log an application specific parental controls
event.
@param aEntryType Constant defining the type of event.
@param aFlag A flag indicating if the subject content
was blocked.
@param aSource The URI source of the subject content.
@param aTarget The location the content was saved to if
no blocking occured.
Request that blocked URI(s) be allowed through parental
control filters. Returns true if the URI was successfully
overriden. Note, may block while native UI is shown.
@param aTarget(s) URI to be overridden. In the case of
multiple URI, the first URI in the array
should be the root URI of the site.
@param window Window that generates the event.
From nsIPermissionManager
Add permission information for a given URI and permission type. This
operation will cause the type string to be registered if it does not
currently exist. If a permission already exists for a given type, it
will be modified.
@param uri the uri to add the permission for
@param type a case-sensitive ASCII string, identifying the consumer.
Consumers should choose this string to be unique, with
respect to other consumers.
@param permission an integer representing the desired action (e.g. allow
or deny). The interpretation of this number is up to the
consumer, and may represent different actions for different
types. Consumers may use one of the enumerated permission
actions defined above, for convenience.
NOTE: UNKNOWN_ACTION (0) is reserved to represent the
default permission when no entry is found for a host, and
should not be used by consumers to indicate otherwise.
Test whether a website has permission to perform the given action.
This requires an exact hostname match, subdomains are not a match.
@param uri the uri to be tested
@param type a case-sensitive ASCII string, identifying the consumer
@param return see add(), param permission. returns UNKNOWN_ACTION when
there is no stored permission for this uri and / or type.
Test whether a website has permission to perform the given action.
@param uri the uri to be tested
@param type a case-sensitive ASCII string, identifying the consumer
@param return see add(), param permission. returns UNKNOWN_ACTION when
there is no stored permission for this uri and / or type.
From nsIPlacesTransactionsService
Transaction for creating a new live-bookmark item.
@see nsILivemarksService::createLivemark for documentation regarding the
first three arguments.
@param aContainerId
the identifier of the folder in which the live-bookmark should be
added.
@param [optional] aIndex
the index of the item in aContainer, pass -1 or nothing to create
the item at the end of aContainer.
@param [optional] aAnnotations
the annotations to set for the new live-bookmark.
@returns nsITransaction object
nsITransaction
createLivemark(in nsIURI aFeedURI, in nsIURI aSiteURI, in AString aName, in long long aContainerId, [optional] in long long aIndex, [optional] in nsIVariant aAnnotations)
Transaction for editing a bookmark's uri.
@param aBookmarkId
id of the bookmark to edit
@param aNewURI
new uri for the bookmark
@returns nsITransaction object
Transaction for creating a new live-bookmark item.
@see nsILivemarksService::createLivemark for documentation regarding the
first three arguments.
@param aContainerId
the identifier of the folder in which the live-bookmark should be
added.
@param [optional] aIndex
the index of the item in aContainer, pass -1 or nothing to create
the item at the end of aContainer.
@param [optional] aAnnotations
the annotations to set for the new live-bookmark.
@returns nsITransaction object
nsITransaction
createLivemark(in nsIURI aFeedURI, in nsIURI aSiteURI, in AString aName, in long long aContainerId, [optional] in long long aIndex, [optional] in nsIVariant aAnnotations)
Transaction for creating a new bookmark item
@param aURI
the uri of the new bookmark (nsIURI)
@param aContainerId
the identifier of the folder in which the bookmark should be added.
@param [optional] aIndex
the index of the item in aContainer, pass -1 or nothing to create
the item at the end of aContainer.
@param [optional] aTitle
the title of the new bookmark.
@param [optional] aKeyword
the keyword of the new bookmark.
@param [optional] aAnnotations
the annotations to set for the new bookmark.
@param [optional] aChildTransactions
child transactions to commit after creating the bookmark. Prefer
using any of the arguments above if possible. In general, a child
transations should be used only if the change it does has to be
reverted manually when removing the bookmark item.
a child transaction must support setting its bookmark-item
identifier via an "id" js setter.
@returns nsITransaction object
nsITransaction
createItem(in nsIURI aURI, in long long aContainerId, [optional] in long long aIndex, [optional] in AString aTitle, [optional] in AString aKeyword, [optional] in nsIVariant aAnnotations, [optional] in nsIVariant aChildTransactions)
Transaction for editting a live bookmark's feed URI.
@param aLivemarkId
id of the livemark
@param aURI
new feed uri
@returns nsITransaction object
Transaction for editing a live bookmark's site URI.
@param aLivemarkId
id of the livemark
@param aURI
new site uri
@returns nsITransaction object
Transaction for setting/unsetting a page annotation
@param aURI
URI of the page where to set annotation
@param aAnnotationObject
Object representing an annotation, containing the following
properties: name, flags, expires, type, mimeType (only used for
binary annotations), value.
If value is null the annotation will be removed
@returns nsITransaction object
Transaction for tagging a URL with the given set of tags. Current tags set
for the URL persist. It's the caller's job to check whether or not aURI
was already tagged by any of the tags in aTags, undoing this tags
transaction removes them all from aURL!
@param aURI
the URL to tag.
@param aTags
Array of tags to set for the given URL.
Transaction for removing tags from a URL. It's the caller's job to check
whether or not aURI isn't tagged by any of the tags in aTags, undoing this
tags transaction adds them all to aURL!
@param aURI
the URL to un-tag.
@param aTags
Array of tags to unset. pass null to remove all tags from the given
url.
From nsIPluginHost
[noscript]
void
instantiateFullPagePlugin(in string aMimeType, in nsIURI aURI, in nsIStreamListenerRef aStreamListener, in nsIPluginInstanceOwner aOwner)
[noscript]
void
instantiateEmbeddedPlugin(in string aMimeType, in nsIURI aURL, in nsIPluginInstanceOwner aOwner)
[noscript]
void
setUpPluginInstance(in string aMimeType, in nsIURI aURL, in nsIPluginInstanceOwner aOwner)
From nsIPopupWindowManager
Test whether a website has permission to show a popup window. @param uri is the URI to be tested @return one of the enumerated permission actions defined above
From nsIPrefetchService
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 <link> 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)
@status DEPRECATED This method is no longer used, and will throw NS_ERROR_NOT_IMPLEMENTED.
void
prefetchURIForOfflineUse(in nsIURI aURI, in nsIURI aReferrerURI, in nsIDOMNode aSource, in boolean aExplicit)
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 <link> 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)
@status DEPRECATED This method is no longer used, and will throw NS_ERROR_NOT_IMPLEMENTED.
void
prefetchURIForOfflineUse(in nsIURI aURI, in nsIURI aReferrerURI, in nsIDOMNode aSource, in boolean aExplicit)
From nsIPrincipal
Checks whether this principal is allowed to load the network resource
located at the given URI under the same-origin policy. This means that
codebase principals are only allowed to load resources from the same
domain, the system principal is allowed to load anything, and null
principals are not allowed to load anything.
If the load is allowed this function does nothing. If the load is not
allowed the function throws NS_ERROR_DOM_BAD_URI.
NOTE: Other policies might override this, such as the Access-Control
specification.
NOTE: The 'domain' attribute has no effect on the behaviour of this
function.
@param uri The URI about to be loaded.
@param report If true, will report a warning to the console service
if the load is not allowed.
@throws NS_ERROR_DOM_BAD_URI if the load is not allowed.
From nsIProtocolHandler
Makes a URI object that is suitable for loading by this protocol,
where the URI string is given as an UTF-8 string. The caller may
provide the charset from which the URI string originated, so that
the URI string can be translated back to that charset (if necessary)
before communicating with, for example, the origin server of the URI
string. (Many servers do not support UTF-8 IRIs at the present time,
so we must be careful about tracking the native charset of the origin
server.)
@param aSpec - the URI string in UTF-8 encoding. depending
on the protocol implementation, unicode character
sequences may or may not be %xx escaped.
@param aOriginCharset - the charset of the document from which this URI
string originated. this corresponds to the
charset that should be used when communicating
this URI to an origin server, for example. if
null, then UTF-8 encoding is assumed (i.e.,
no charset transformation from aSpec).
@param aBaseURI - if null, aSpec must specify an absolute URI.
otherwise, aSpec may be resolved relative
to aBaseURI, depending on the protocol.
If the protocol has no concept of relative
URI aBaseURI will simply be ignored.
Constructs a new channel from the given URI for this protocol handler.
From nsIProtocolProxyCallback
This method is called when proxy info is available or when an error
in the proxy resolution occurs.
@param aRequest
The value returned from asyncResolve.
@param aURI
The URI passed to asyncResolve.
@param aProxyInfo
The resulting proxy info or null if there is no associated proxy
info for aURI. As with the result of nsIProtocolProxyService's
resolve method, a null result implies that a direct connection
should be used.
@param aStatus
The status of the callback. This is a failure code if the request
could not be satisfied, in which case the value of aStatus
indicates the reason for the failure and aProxyInfo will be null.
void
onProxyAvailable(in nsICancelable aRequest, in nsIURI aURI, in nsIProxyInfo aProxyInfo, in nsresult aStatus)
From nsIProtocolProxyFilter
This method is called to apply proxy filter rules for the given URI
and proxy object (or list of proxy objects).
@param aProxyService
A reference to the Protocol Proxy Service. This is passed so that
implementations may easily access methods such as newProxyInfo.
@param aURI
The URI for which these proxy settings apply.
@param aProxy
The proxy (or list of proxies) that would be used by default for
the given URI. This may be null.
@return The proxy (or list of proxies) that should be used in place of
aProxy. This can be just be aProxy if the filter chooses not to
modify the proxy. It can also be null to indicate that a direct
connection should be used. Use aProxyService.newProxyInfo to
construct nsIProxyInfo objects.
nsIProxyInfo
applyFilter(in nsIProtocolProxyService aProxyService, in nsIURI aURI, in nsIProxyInfo aProxy)
From nsIProtocolProxyService
This method is an asychronous version of the resolve method. Unlike
resolve, this method is guaranteed not to block the calling thread
waiting for DNS queries to complete. This method is intended as a
substitute for resolve when the result is not needed immediately.
@param aURI
The URI to test.
@param aFlags
A bit-wise combination of the RESOLVE_ flags defined above. Pass
0 to specify the default behavior. Any additional bits that do
not correspond to a RESOLVE_ flag are reserved for future use.
@param aCallback
The object to be notified when the result is available.
@return An object that can be used to cancel the asychronous operation.
If canceled, the cancelation status (aReason) will be forwarded
to the callback's onProxyAvailable method via the aStatus param.
nsICancelable
asyncResolve(in nsIURI aURI, in unsigned long aFlags, in nsIProtocolProxyCallback aCallback)
If the proxy identified by aProxyInfo is unavailable for some reason,
this method may be called to access an alternate proxy that may be used
instead. As a side-effect, this method may affect future result values
from resolve/asyncResolve as well as from getFailoverForProxy.
@param aProxyInfo
The proxy that was unavailable.
@param aURI
The URI that was originally passed to resolve/asyncResolve.
@param aReason
The error code corresponding to the proxy failure. This value
may be used to tune the delay before this proxy is used again.
@throw NS_ERROR_NOT_AVAILABLE if there is no alternate proxy available.
This method returns a nsIProxyInfo instance that identifies a proxy to
be used for loading the given URI. Otherwise, this method returns null
indicating that a direct connection should be used.
@param aURI
The URI to test.
@param aFlags
A bit-wise combination of the RESOLVE_ flags defined above. Pass
0 to specify the default behavior. Any additional bits that do
not correspond to a RESOLVE_ flag are reserved for future use.
NOTE: If this proxy is unavailable, getFailoverForProxy may be called
to determine the correct secondary proxy to be used.
NOTE: If the protocol handler for the given URI supports
nsIProxiedProtocolHandler, then the nsIProxyInfo instance returned from
resolve may be passed to the newProxiedChannel method to create a
nsIChannel to the given URI that uses the specified proxy.
NOTE: However, if the nsIProxyInfo type is "http", then it means that
the given URI should be loaded using the HTTP protocol handler, which
also supports nsIProxiedProtocolHandler.
NOTE: If PAC is configured, and the PAC file has not yet been loaded,
then this method will return a nsIProxyInfo instance with a type of
"unknown" to indicate to the consumer that asyncResolve should be used
to wait for the PAC file to finish loading. Otherwise, the consumer
may choose to treat the result as type "direct" if desired.
@see nsIProxiedProtocolHandler::newProxiedChannel
From nsIProxiedProtocolHandler
Create a new channel with the given proxyInfo
From nsIRDFXMLParser
Create a stream listener that can be used to asynchronously parse RDF/XML. @param aSink the RDF datasource the will receive the data @param aBaseURI the base URI used to resolve relative references in the RDF/XML @return an nsIStreamListener object to handle the data
Parse a string of RDF/XML @param aSink the RDF datasource that will receive the data @param aBaseURI the base URI used to resolve relative references in the RDF/XML @param aSource a UTF8 string containing RDF/XML data.
From nsIRefreshURI
Parses the passed in header string and sets up a refreshURI if a "refresh" header is found. If docshell is busy loading a page currently, the request will be queued and executed when the current page finishes loading. @param aBaseURI base URI to resolve refresh uri with. @param aHeader The meta refresh header string.
Loads a URI immediately as if it were a refresh.
@param aURI The URI to refresh.
@param aMillis The number of milliseconds by which this refresh would
be delayed if it were not being forced.
@param aMetaRefresh Flag to indicate if this is a meta refresh.
Load a uri after waiting for aMillis milliseconds. If the docshell
is busy loading a page currently, the refresh request will be
queued and executed when the current load finishes.
@param aUri The uri to refresh.
@param aMillis The number of milliseconds to wait.
@param aRepeat Flag to indicate if the uri is to be
repeatedly refreshed every aMillis milliseconds.
@param aMetaRefresh Flag to indicate if this is a Meta refresh.
From nsIResProtocolHandler
Sets the substitution for the root key: resource://root/path ==> baseURI.resolve(path) A null baseURI removes the specified substitution. A root key should always be lowercase; however, this may not be enforced.
Utility function to resolve a resource URI. A resolved URI is not guaranteed to reference a resource that exists (ie. opening a channel to the resolved URI may fail). @throws NS_ERROR_NOT_AVAILABLE if resURI.host() is an unknown root key.
From nsISHEntry
Additional ways to create an entry */
[noscript]
void
create(in nsIURI URI, in AString title, in nsIInputStream inputStream, in nsILayoutHistoryState layoutHistoryState, in nsISupports cacheKey, in ACString contentType, in nsISupports owner)
From nsISHistoryListener
Called when navigating to a previous session history entry, for example due to a nsIWebNavigation::goBack() call. @param aBackURI The URI of the session history entry being navigated to. @return Whether the operation can proceed.
Called when navigating to a next session history entry, for example due to a nsIWebNavigation::goForward() call. @param aForwardURI The URI of the session history entry being navigated to. @return Whether the operation can proceed.
Called when navigating to a session history entry by index, for example, when nsIWebNavigation::gotoIndex() is called. @param aIndex The index in session history of the entry to be loaded. @param aGotoURI The URI of the session history entry to be loaded. @return Whether the operation can proceed.
Called when a new document is added to session history. New documents are added to session history by docshell when new pages are loaded in a frame or content area, for example via nsIWebNavigation::loadURI() @param aNewURI The URI of the document to be added to session history.
Called when the current document is reloaded, for example due to a
nsIWebNavigation::reload() call.
@param aReloadURI The URI of the document to be reloaded.
@param aReloadFlags Flags that indicate how the document is to be
refreshed. See constants on the nsIWebNavigation
interface.
@return Whether the operation can proceed.
@see nsIWebNavigation
From nsIScriptLoaderObserver
The script is available for evaluation. For inline scripts, this
method will be called synchronously. For externally loaded scripts,
this method will be called when the load completes.
@param aResult A result code representing the result of loading
a script. If this is a failure code, script evaluation
will not occur.
@param aElement The element being processed.
@param aIsInline Is this an inline script or externally loaded?
@param aURI What is the URI of the script (the document URI if
it is inline).
@param aLineNo At what line does the script appear (generally 1
if it is a loaded script).
From nsIScriptSecurityManager
Returns OK if aSourceURI and target have the same "origin" (scheme, host, and port). ReportError flag suppresses error reports for functions that don't need reporting.
Checks whether the running script is allowed to connect to aTargetURI
Returns OK if aJSContext and target have the same "origin" (scheme, host, and port).
Returns OK if aSourceURI and target have the same "origin" (scheme, host, and port). ReportError flag suppresses error reports for functions that don't need reporting.
Return a principal with the specified certificate fingerprint, subject name (the full name or concatenated set of names of the entity represented by the certificate), pretty name, certificate, and codebase URI. The certificate fingerprint and subject name MUST be nonempty; otherwise an error will be thrown. Similarly, aCert must not be null.
[noscript]
nsIPrincipal
getCertificatePrincipal(in AUTF8String aCertFingerprint, in AUTF8String aSubjectName, in AUTF8String aPrettyName, in nsISupports aCert, in nsIURI aURI)
Return a principal that has the same origin as aURI.
Check that content from "from" can load "uri". Will return error code NS_ERROR_DOM_BAD_URI if the load request should be denied. @param from the URI causing the load @param uri the URI that is being loaded @param flags the permission set, see above @deprecated Use checkLoadURIWithPrincipal instead of this function.
Check that content from "from" can load "uri". Will return error code NS_ERROR_DOM_BAD_URI if the load request should be denied. @param from the URI causing the load @param uri the URI that is being loaded @param flags the permission set, see above @deprecated Use checkLoadURIWithPrincipal instead of this function.
Check that the script currently running in context "cx" can load "uri". Will return error code NS_ERROR_DOM_BAD_URI if the load request should be denied. @param cx the JSContext of the script causing the load @param uri the URI that is being loaded
Check that content with principal aPrincipal can load "uri". Will return error code NS_ERROR_DOM_BAD_URI if the load request should be denied. @param aPrincipal the principal identifying the actor causing the load @param uri the URI that is being loaded @param flags the permission set, see above
From nsIScriptableUnescapeHTML
Appends the text to the element.
nsIDOMDocumentFragment
parseFragment(in AString fragment, in PRBool isXML, in nsIURI baseURI, in nsIDOMElement element)
From nsIStandardURL
Initialize a standard URL.
@param aUrlType - one of the URLTYPE_ flags listed above.
@param aDefaultPort - if the port parsed from the URL string matches
this port, then the port will be removed from the
canonical form of the URL.
@param aSpec - URL string.
@param aOriginCharset - the charset from which this URI string
originated. this corresponds to the charset
that should be used when communicating this
URI to an origin server, for example. if
null, then provide aBaseURI implements this
interface, the origin charset of aBaseURI will
be assumed, otherwise defaulting to UTF-8 (i.e.,
no charset transformation from aSpec).
@param aBaseURI - if null, aSpec must specify an absolute URI.
otherwise, aSpec will be resolved relative
to aBaseURI.
From nsIStyleSheetService
Synchronously loads a style sheet from |sheetURI| and adds it to the list of user or agent style sheets. A user sheet loaded via this API will come before userContent.css and userChrome.css in the cascade (so the rules in it will have lower precedence than rules in those sheets). An agent sheet loaded via this API will come after ua.css in the cascade (so the rules in it will have higher precedence than rules in ua.css). The relative ordering of two user or two agent sheets loaded via this API is undefined. Sheets added via this API take effect on all documents, including already-loaded ones, immediately.
Returns true if a style sheet at |sheetURI| has previously been added to the list of style sheets specified by |type|.
Remove the style sheet at |sheetURI| from the list of style sheets specified by |type|. The removal takes effect immediately, even for already-loaded documents.
From nsISystemProxySettings
See nsIProxyAutoConfig::getProxyForURI; this function behaves exactly the same way.
From nsITaggingService
Retrieves all tags set for the given URL.
@param aURI
a URL.
@returns array of tags (sorted by name).
Tags a URL with the given set of tags. Current tags set for the URL
persist. Tags in aTags which are already set for the given URL are
ignored.
@param aURI
the URL to tag.
@param aTags
Array of tags to set for the given URL. Each element within the
array can be either a tag name or a concrete itemId of a tag
container.
Removes tags from a URL. Tags from aTags which are not set for the
given URL are ignored.
@param aURI
the URL to un-tag.
@param aTags
Array of tags to unset. pass null to remove all tags from the given
url. Each element within the array can be either a tag name or a
concrete itemId of a tag container.
From nsITransfer
Initializes the transfer with certain properties. This function must
be called prior to accessing any properties on this interface.
@param aSource The source URI of the transfer. Must not be null.
@param aTarget The target URI of the transfer. Must not be null.
@param aDisplayName The user-readable description of the transfer.
Can be empty.
@param aMIMEInfo The MIME info associated with the target,
including MIME type and helper app when appropriate.
This parameter is optional.
@param startTime Time when the download started (ie, when the first
response from the server was received)
XXX presumably wbp and exthandler do this differently
@param aTempFile The location of a temporary file; i.e. a file in which
the received data will be stored, but which is not
equal to the target file. (will be moved to the real
target by the caller, when the download is finished)
May be null.
@param aCancelable An object that can be used to abort the download.
Must not be null.
Implementations are expected to hold a strong
reference to this object until the download is
finished, at which point they should release the
reference.
void
init(in nsIURI aSource, in nsIURI aTarget, in AString aDisplayName, in nsIMIMEInfo aMIMEInfo, in PRTime startTime, in nsILocalFile aTempFile, in nsICancelable aCancelable)
Initializes the transfer with certain properties. This function must
be called prior to accessing any properties on this interface.
@param aSource The source URI of the transfer. Must not be null.
@param aTarget The target URI of the transfer. Must not be null.
@param aDisplayName The user-readable description of the transfer.
Can be empty.
@param aMIMEInfo The MIME info associated with the target,
including MIME type and helper app when appropriate.
This parameter is optional.
@param startTime Time when the download started (ie, when the first
response from the server was received)
XXX presumably wbp and exthandler do this differently
@param aTempFile The location of a temporary file; i.e. a file in which
the received data will be stored, but which is not
equal to the target file. (will be moved to the real
target by the caller, when the download is finished)
May be null.
@param aCancelable An object that can be used to abort the download.
Must not be null.
Implementations are expected to hold a strong
reference to this object until the download is
finished, at which point they should release the
reference.
void
init(in nsIURI aSource, in nsIURI aTarget, in AString aDisplayName, in nsIMIMEInfo aMIMEInfo, in PRTime startTime, in nsILocalFile aTempFile, in nsICancelable aCancelable)
From nsIURI
An URI supports the following methods: URI equivalence test (not a strict string comparison). eg. http://foo.com:80/ == http://foo.com/
From nsIURIChecker
Initializes the URI checker. After this method is called, it is valid
to further configure the URI checker by calling its nsIRequest methods.
This method creates the channel that will be used to verify the URI.
In the case of the HTTP protocol, only a HEAD request will be issued.
@param aURI
The URI to be checked.
From nsIURIClassifier
Classify a URI.
@param aURI
The URI that should be checked by the URI classifier.
@param aCallback
The URI classifier will call this callback when the URI has been
classified.
@return <code>false</code> if classification is not necessary. The
callback will not be called.
<code>true</code> if classification will be performed. The
callback will be called.
From nsIURIContentListener
Gives the original content listener first crack at stopping a load before
it happens.
@param aURI URI that is being opened.
@return <code>false</code> if the load can continue;
<code>true</code> if the open should be aborted.
From nsIURIFixup
Converts an internal URI (e.g. a wyciwyg URI) into one which we can
expose to the user, for example on the URL bar.
@param aURI The URI to be converted
@return nsIURI The converted, exposable URI
@throws NS_ERROR_MALFORMED_URI when the exposable portion of aURI is malformed
@throws NS_ERROR_UNKNOWN_PROTOCOL when we can't get a protocol handler service
for the URI scheme.
From nsIURL
This method takes a uri and compares the two. The common uri portion
is returned as a string. The minimum common uri portion is the
protocol, and any of these if present: login, password, host and port
If no commonality is found, "" is returned. If they are identical, the
whole path with file/ref/etc. is returned. For file uris, it is
expected that the common spec would be at least "file:///" since '/' is
a shared common root.
Examples:
this.spec aURIToCompare.spec result
1) http://mozilla.org/ http://www.mozilla.org/ ""
2) http://foo.com/bar/ ftp://foo.com/bar/ ""
3) http://foo.com:8080/ http://foo.com/bar/ ""
4) ftp://user@foo.com/ ftp://user:pw@foo.com/ ""
5) ftp://foo.com/bar/ ftp://foo.com/bar ftp://foo.com/
6) ftp://foo.com/bar/ ftp://foo.com/bar/b.html ftp://foo.com/bar/
7) http://foo.com/a.htm#i http://foo.com/b.htm http://foo.com/
8) ftp://foo.com/c.htm#i ftp://foo.com/c.htm ftp://foo.com/c.htm
9) file:///a/b/c.html file:///d/e/c.html file:///
This method takes a uri and returns a substring of this if it can be made relative to the uri passed in. If no commonality is found, the entire uri spec is returned. If they are identical, "" is returned. Filename, query, etc are always returned except when uris are identical.
From nsIUrlClassifierUtils
Get the lookup string for a given URI. This normalizes the hostname, url-decodes the string, and strips off the protocol. @param uri URI to get the lookup key for. @returns String containing the canonicalized URI.
From nsIWebBrowserPersist
Save the specified URI to file.
@param aURI URI to save to file. Some implementations of this interface
may also support <CODE>nsnull</CODE> to imply the currently
loaded URI.
@param aCacheKey An object representing the URI in the cache or
<CODE>nsnull</CODE>. This can be a necko cache key,
an nsIWebPageDescriptor, or the currentDescriptor of an
nsIWebPageDescriptor.
@param aReferrer The referrer URI to pass with an HTTP request or
<CODE>nsnull</CODE>.
@param aPostData Post data to pass with an HTTP request or
<CODE>nsnull</CODE>.
@param aExtraHeaders Additional headers to supply with an HTTP request
or <CODE>nsnull</CODE>.
@param aFile Target file. This may be a nsILocalFile object or an
nsIURI object with a file scheme or a scheme that
supports uploading (e.g. ftp).
@see nsILocalFile
@see nsIURI
@see nsIInputStream
@return NS_OK Operation has been started.
@return NS_ERROR_INVALID_ARG One or more arguments was invalid.
void
saveURI(in nsIURI aURI, in nsISupports aCacheKey, in nsIURI aReferrer, in nsIInputStream aPostData, in string aExtraHeaders, in nsISupports aFile)
Save the specified URI to file.
@param aURI URI to save to file. Some implementations of this interface
may also support <CODE>nsnull</CODE> to imply the currently
loaded URI.
@param aCacheKey An object representing the URI in the cache or
<CODE>nsnull</CODE>. This can be a necko cache key,
an nsIWebPageDescriptor, or the currentDescriptor of an
nsIWebPageDescriptor.
@param aReferrer The referrer URI to pass with an HTTP request or
<CODE>nsnull</CODE>.
@param aPostData Post data to pass with an HTTP request or
<CODE>nsnull</CODE>.
@param aExtraHeaders Additional headers to supply with an HTTP request
or <CODE>nsnull</CODE>.
@param aFile Target file. This may be a nsILocalFile object or an
nsIURI object with a file scheme or a scheme that
supports uploading (e.g. ftp).
@see nsILocalFile
@see nsIURI
@see nsIInputStream
@return NS_OK Operation has been started.
@return NS_ERROR_INVALID_ARG One or more arguments was invalid.
void
saveURI(in nsIURI aURI, in nsISupports aCacheKey, in nsIURI aReferrer, in nsIInputStream aPostData, in string aExtraHeaders, in nsISupports aFile)
From nsIWebBrowserStream
Prepare to load a stream of data. When this function returns successfully,
it must be paired by a call to closeStream.
@param aBaseURI
The base URI of the data. Must not be null. Relative
URIs will be resolved relative to this URI.
@param aContentType
ASCII string giving the content type of the data. If rendering
content of this type is not supported, this method fails.
This string may include a charset declaration, for example:
text/html;charset=ISO-8859-1
@throw NS_ERROR_NOT_AVAILABLE
The requested content type is not supported.
@throw NS_ERROR_IN_PROGRESS
openStream was called twice without an intermediate closeStream.
From nsIWebNavigation
Loads a given URI. This will give priority to loading the requested URI
in the object implementing this interface. If it can't be loaded here
however, the URI dispatcher will go through its normal process of content
loading.
@param aURI
The URI string to load. For HTTP and FTP URLs and possibly others,
characters above U+007F will be converted to UTF-8 and then URL-
escaped per the rules of RFC 2396.
@param aLoadFlags
Flags modifying load behaviour. This parameter is a bitwise
combination of the load flags defined above. (Undefined bits are
reserved for future use.) Generally you will pass LOAD_FLAGS_NONE
for this parameter.
@param aReferrer
The referring URI. If this argument is null, then the referring
URI will be inferred internally.
@param aPostData
If the URI corresponds to a HTTP request, then this stream is
appended directly to the HTTP request headers. It may be prefixed
with additional HTTP headers. This stream must contain a "\r\n"
sequence separating any HTTP headers from the HTTP request body.
This parameter is optional and may be null.
@param aHeaders
If the URI corresponds to a HTTP request, then any HTTP headers
contained in this stream are set on the HTTP request. The HTTP
header stream is formatted as:
( HEADER "\r\n" )*
This parameter is optional and may be null.
void
loadURI(in wstring aURI, in unsigned long aLoadFlags, in nsIURI aReferrer, in nsIInputStream aPostData, in nsIInputStream aHeaders)
From nsIWebProgressListener
Called when the location of the window being watched changes. This is not
when a load is requested, but rather once it is verified that the load is
going to occur in the given window. For instance, a load that starts in a
window might send progress and status messages for the new site, but it
will not send the onLocationChange until we are sure that we are loading
this new page here.
@param aWebProgress
The nsIWebProgress instance that fired the notification.
@param aRequest
The associated nsIRequest. This may be null in some cases.
@param aLocation
The URI of the location that is being loaded.
From nsIWebProgressListener2
Notification that a refresh or redirect has been requested in aWebProgress
For example, via a <meta http-equiv="refresh"> or an HTTP Refresh: header
@param aWebProgress
The nsIWebProgress instance that fired the notification.
@param aRefreshURI
The new URI that aWebProgress has requested redirecting to.
@param aMillis
The delay (in milliseconds) before refresh.
@param aSameURI
True if aWebProgress is requesting a refresh of the
current URI.
False if aWebProgress is requesting a redirection to
a different URI.
@return True if the refresh may proceed.
False if the refresh should be aborted.
boolean
onRefreshAttempted(in nsIWebProgress aWebProgress, in nsIURI aRefreshURI, in long aMillis, in boolean aSameURI)
From nsIWindowCreator2
Create a new window. Gecko will/may call this method, if made
available to it, to create new windows.
@param parent Parent window, if any. Null if not. The newly created
window should be made a child/dependent window of
the parent, if any (and if the concept applies
to the underlying OS).
@param chromeFlags Chrome features from nsIWebBrowserChrome
@param contextFlags Flags about the context of the window being created.
@param uri The URL for which this window is intended. It can be null
or zero-length. The implementation of this interface
may use the URL to help determine what sort of window
to open or whether to cancel window creation. It will not
load the URL.
@param cancel Return |true| to reject window creation. If true the
implementation has determined the window should not
be created at all. The caller should not default
to any possible backup scheme for creating the window.
@return the new window. Will be null if canceled or an error occurred.
nsIWebBrowserChrome
createChromeWindow2(in nsIWebBrowserChrome parent, in PRUint32 chromeFlags, in PRUint32 contextFlags, in nsIURI uri, out boolean cancel)
From nsIWindowProvider
A method to request that this provider provide a window. The window
returned need not to have the right name or parent set on it; setting
those is the caller's responsibility. The provider can always return null
to have the caller create a brand-new window.
@param aParent Must not be null. This is the window that the caller wants
to use as the parent for the new window. Generally,
nsIWindowProvider implementors can expect to be somehow
related to aParent; the relationship may depend on the
nsIWindowProvider implementation.
@param aChromeFlags The chrome flags the caller will use to create a new
window if this provider returns null. See
nsIWebBrowserChrome for the possible values of this
field.
@param aPositionSpecified Whether the attempt to create a window is trying
to specify a position for the new window.
@param aSizeSpecified Whether the attempt to create a window is trying to
specify a size for the new window.
@param aURI The URI to be loaded in the new window. The nsIWindowProvider
implementation MUST NOT load this URI in the window it
returns. This URI is provided solely to help the
nsIWindowProvider implenentation make decisions; the caller
will handle loading the URI in the window returned if
provideWindow returns a window. Note that the URI may be null
if the load cannot be represented by a single URI (e.g. if
the load has extra load flags, POST data, etc).
@param aName The name of the window being opened. Setting the name on the
return value of provideWindow will be handled by the caller;
aName is provided solely to help the nsIWindowProvider
implementation make decisions.
@param aFeatures The feature string for the window being opened. This may
be empty. The nsIWindowProvider implementation is
allowed to apply the feature string to the window it
returns in any way it sees fit. See the nsIWindowWatcher
interface for details on feature strings.
@param aWindowIsNew [out] Whether the window being returned was just
created by the window provider implementation.
This can be used by callers to keep track of which
windows were opened by the user as opposed to
being opened programmatically. This should be set
to false if the window being returned existed
before the provideWindow() call. The value of this
out parameter is meaningless if provideWindow()
returns null.
@return A window the caller should use or null if the caller should just
create a new window. The returned window may be newly opened by
the nsIWindowProvider implementation or may be a window that
already existed.
@see nsIWindowWatcher for more information on aFeatures.
@see nsIWebBrowserChrome for more information on aChromeFlags.
nsIDOMWindow
provideWindow(in nsIDOMWindow aParent, in unsigned long aChromeFlags, in boolean aPositionSpecified, in boolean aSizeSpecified, in nsIURI aURI, in AString aName, in AUTF8String aFeatures, out boolean aWindowIsNew)
From nsIXMLHttpRequest
Initialize the object for use from C++ code with the principal, script
context, and owner window that should be used.
@param principal The principal to use for the request. This must not be
null.
@param scriptContext The script context to use for the request. May be
null.
@param ownerWindow The associated window for the request. May be null.
@param baseURI The base URI to use when resolving relative URIs. May be
null.
[noscript]
void
init(in nsIPrincipal principal, in nsIScriptContext scriptContext, in nsPIDOMWindow ownerWindow, in nsIURI baseURI)
From nsIXULChromeRegistry
Content should only be allowed to load chrome JS from certain packages. This method reflects the contentaccessible flag on packages. Do not pass non-chrome URIs to this method.
Installable skin XBL is not always granted the same privileges as other chrome. This asks the chrome registry whether scripts are allowed to be run for a particular chrome URI. Do not pass non-chrome URIs to this method.
From nsIXULOverlayProvider
Get the style overlays for a particular chrome URI. @param aURI The URI being loaded @return An enumerator of nsIURI for the overlays of this URI
Get the XUL overlays for a particular chrome URI. @param aURI The URI being loaded @return An enumerator of nsIURI for the overlays of this URI
From nsPICertNotification
void
onCertAvailable(in nsIURI aURI, in nsISupports aContext, in PRUint32 aStatus, in nsIPrincipal aPrincipal)
From nsPIPlacesHistoryListenersNotifier
Calls onPageExpired on registered listeners with the history service.
@param aURI
The nsIURI object representing the URI of the page being expired.
@param aVisitTime
The time, in microseconds, that the page being expired was visited.
@param aWholeEntry
Indicates if this is the last visit for this URI.