function test_get() {
// This is an example on how to create an XPCOM in JS.
//var file = Components.classes["@mozilla.org/file/local;1"].createInstance();
// After the instance is created you use getService();
//var RDF = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService();
// This is a "short cut".
//var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
// This will add a download th
//nsIDownload addDownload ( PRInt16 downloadType , nsIURI source , nsIURI target , AString displayName , AString iconURL , nsIMIMEInfo MIMEInfo , PRTime startTime , nsILocalFile tempFile , nsICancelable cancelable )
var nsIFileProtocolHandler = Components.classes["@mozilla.org/network/protocol;1?name=file"].createInstance(Components.interfaces.nsIFileProtocolHandler);
var nsIFile = nsIFileProtocolHandler.getFileFromURLSpec("file://home/erm/tmp.pdf");
var nsIDownloadObserver = {
onDownloadComplete: function(nsIDownloader, nsresult, nsIFile) {
dump( "\nDownloadComplete" );
}
};
var nsIDownloader =
Components.classes["@mozilla.org/network/downloader;1"].createInstance();
nsIDownloader.QueryInterface(Components.interfaces.nsIDownloader);
nsIDownloader.init( nsIDownloadObserver, nsIFile );
var nsIIOService = Components.classes["@mozilla.org/network/io-service;1"].
getService(Components.interfaces.nsIIOService);
nsIHttpChannel = nsIIOService.newChannel("http://the-erm.com/591-096811-007A.pdf", "", null);
nsIHttpChannel.QueryInterface(Components.interfaces.nsIHttpChannel);
nsIHttpChannel.requestMethod = "GET"; // Optional as is default
nsIHttpChannel.asyncOpen( nsIDownloader, nsIFile );
}