Firefox 3 では、ダウンロードマネージャにも改良が行われ、複数進捗リスナーの設定、データ管理への Storage API の使用、ダウンロードの再開など、様々な機能が提供されます。さらに、新しい nsIDownloadManagerUI
インタフェースを実装することで、ダウンロードマネージャのユーザインタフェースに対して、機能の追加や置き換えが可能になりました。
註: これらの変更によって、ダウンロードマネージャを使ったコードに多少の変更が必要となります。いくつかのメソッドに小幅な変更が行われています。
ダウンロードマネージャのインタフェース
nsIDownloadManager
- アプリケーションと拡張機能に対して、ダウンロードマネージャへのアクセスを提供します。ダウンロードリストへのファイルの追加・削除、過去と現在のダウンロードに関する情報の取得、ダウンロードの進捗状況に応じた通知のリクエストなどを行うことができます。
nsIDownload
- ダウンロードリストに含まれるファイルに関する情報を提供します。これらのファイルは、ダウンロード待機中、ダウンロード中、あるいはダウンロードが完了したものを指します。
nsIDownloadProgressListener
- アプリケーションや拡張機能は、このインタフェースを実装することで、ダウンロードの進捗状況に変更があった際に通知を受け取ることができます。
nsIDownloadManagerUI
- このインタフェースを実装することで、ダウンロードマネージャのユーザインタフェースの追加や変更が可能になります。
ダウンロードマネージャに関する他のドキュメント
- Download Manager preferences
- この記事では、ダウンロードマネージャで利用される設置項目と、それらの規定値の一覧を掲載しています。
- The Download Manager schema
- この記事では、各ダウンロード項目に関する情報を保存、追跡するために利用されるデータベース形式について説明しています。
例
- ダウンロードの監視
- 新しいダウンロードマネージャ API を使って、過去と現在のダウンロードと、それらの状態を示した、ダウンロードログウィンドウを作成する方法を解説した例です。ダウンロードの開始時間と終了時間、ダウンロード速度などの実装例を参照できるほか、Storage API のデモも含まれています。