The external helper app service is used for finding and launching platform specific external applications for a given MIME content type.
Inherits from: nsISupports Last changed in Gecko 1.7

Implemented by: @mozilla.org/uriloader/external-helper-app-service;1. To access this service, use:

var externalHelperAppService = Components.classes["@mozilla.org/uriloader/external-helper-app-service;1"]

Method overview

boolean applyDecodingForExtension(in AUTF8String aExtension, in ACString aEncodingType);
nsIStreamListener doContent(in ACString aMimeContentType, in nsIRequest aRequest, in nsIInterfaceRequestor aWindowContext, in boolean aForceSave);



Determines whether or not data whose filename has the specified extension should be decoded from the specified encoding type before being saved or delivered to helper applications.

boolean applyDecodingForExtension(
  in AUTF8String aExtension,
  in ACString aEncodingType
The filename extension to check.
The encoding type to check.
Return value

true if data from URLs with the specified extension and encoding should be decoded prior to saving the file or delivering it to a helper application; otherwise false.


Binds an external helper application to a stream listener. The caller should pump data into the returned stream listener. When the OnStopRequest is issued, the stream listener implementation will launch the helper app with this data.

nsIStreamListener doContent(
  in ACString aMimeContentType,
  in nsIRequest aRequest,
  in nsIInterfaceRequestor aWindowContext,
  in boolean aForceSave
The content type of the incoming data.
The request corresponding to the incoming data.
Use nsIServiceManager.getInterface() to retrieve properties like the DOM window or parent window; the service might need this in order to bring up dialogs.
true to always save this content to disk, regardless of nsIMIMEInfo and other such influences.
Return value

A nsIStreamListener which the caller should pump the data into.

Document Tags and Contributors

 Contributors to this page: def00111, Sheppy, SamB
 Last updated by: def00111,