nsIHandlerInfo gives access to the information about how a given protocol scheme or MIME-type is handled.
[scriptable, uuid(8e726396-3e02-467c-855e-5900e562ba42)]
interface nsIHandlerInfo : nsISupports
Constants
const
long
saveToDisk = 0
Used to indicate that we know nothing about what to do with this. You could consider this to be not initialized.
const
long
alwaysAsk = 1
const
long
useHelperApp = 2
const
long
handleInternally = 3
const
long
useSystemDefault = 4
Attributes
alwaysAskBeforeHandling: if true, we should always give the user a dialog asking how to dispose of this content.
attribute
boolean
alwaysAskBeforeHandling
A pretty name description of the associated default application. Only usable if hasDefaultHandler is true.
readonly attribute
AString
defaultDescription
A human readable description of the handler type
attribute
AString
description
Indicates whether a default application handler exists, i.e. whether launchWithFile with action = useSystemDefault is possible and defaultDescription will contain usable information.
readonly attribute
boolean
hasDefaultHandler
Applications that can handle this content type. The list will include the preferred handler, if any. Elements of this array are nsIHandlerApp objects, and this attribute will always reference an array, whether or not there are any possible handlers. If there are no possible handlers, the array will contain no elements, so just check its length (nsIArray::length) to see if there are any possible handlers.
readonly attribute
nsIMutableArray
possibleApplicationHandlers
preferredAction is how the user specified they would like to handle this content type: save to disk, use specified helper app, use OS default handler or handle using navigator; possible value constants listed below
attribute
nsHandlerInfoAction
preferredAction
The application the user has said they want associated with this content type. This is not always guaranteed to be set!!
attribute
nsIHandlerApp
preferredApplicationHandler
The type of this handler info. For MIME handlers, this is the MIME type. For protocol handlers, it's the scheme. @return String representing the type.
readonly attribute
ACString
type
Methods
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.
void
launchWithURI(in nsIURI aURI, [optional] in nsIInterfaceRequestor aWindowContext)
Compare to: