nsIDownloadProgressListener
出典: MDC
nsIDownloadProgressListener インタフェースは、アプリケーションや拡張機能が、ダウンロードマネージャによって処理されているダウンロードの状況を監視する方法を提供します。開発者は、自分のコードでこのインタフェースを実装し、nsIDownloadManager の addListener() 関数を呼び出すだけで、監視を開始できます。
ダウンロードマネージャの状況を監視する必要がなくなったら、nsIDownloadManager の removeListener() 関数を呼び出せば監視が中止されます。
ダウンロードの状況に変更があると、ダウンロードマネージャによって、ここで説明されているメソッドが呼び出されるので、必要なタイミングで処理を行えます。
このインタフェースの挙動は、nsIWebProgress インタフェースと非常に似ています。
目次 |
nsIDownloadProgressListener は toolkit/components/downloads/public/nsIDownloadProgressListener.idl で定義されています。これは scriptable で
非凍結です。 (Mozilla 1.9から更新されていません)
継承元: nsISupports
[編集] メソッドの概要
void onDownloadStateChange(in short aState, in nsIDownload aDownload)
|
void onProgressChange(in nsIWebProgress aWebProgress, in nsIRequest aRequest, in long long aCurSelfProgress, in long long aMaxSelfProgress, in long long aCurTotalProgress, in long long aMaxTotalProgress, in nsIDownload aDownload)
|
廃止 void onStatusChange(in nsIWebProgress aWebProgress, in nsIRequest aRequest, in nsresult aStatus, in wstring aMessage, in nsIDownload aDownload)
|
廃止 void onLocationChange(in nsIWebProgress aWebProgress, in nsIRequest aRequest, in nsIURI aLocation, in nsIDownload aDownload)x
|
void onSecurityChange(in nsIWebProgress aWebProgress, in nsIRequest aRequest, in unsigned long aState, in nsIDownload aDownload)
|
[編集] 属性
| 属性 | 型 | 説明 |
document
| nsIDOMDocument
| ダウンロードマネージャのウィンドウを表すダウンロードドキュメント。 |
[編集] メソッド
[編集] onDownloadStateChange()
特定のダウンロードの状況に変更があったときに呼び出されます。
void onDownloadStateChange( in short aState, in nsIDownload aDownload );
[編集] 引数
- aState
- ダウンロードの変更前の状況。取り得る値の一覧 は
nsIDownloadManagerを参照してください。
- aDownload
- ダウンロード状況に変更があったファイルを表す
nsIDownloadオブジェクト。このオブジェクトから、ダウンロードの変更後の状況を取得できます。
[編集] onStateChange()
特定のダウンロードの状況に変更があったときに呼び出されます。
void onStateChange( in nsIWebProgress aWebProgress, in nsIRequest aRequest, in unsigned long aStateFlags, in nsresult aStatus, in nsIDownload aDownload );
[編集] 引数
- aWebProgress
- ダウンロードを監視するためにダウンロードマネージャによって利用される
nsIWebProgressインスタンス。
- aRequest
- 状況を変更した
nsIChannel。この引数はNULLを取ることができません。
- aStateFlags
- ダウンロードの変更後の状況を示すフラグ。この値は、
nsIWebProgressListenerの記事に書かれている 状況遷移フラグ のいずれかの組み合わせになります。
- aStatus
- ダウンロードの変更後の状況に関する情報。詳しくは
nsIWebProgressListener]] の [[nsIWebProgressListener#onStateChange|onStateChange()を参照してください。これはnsIDownloadManagerの状況を示す定数 のいずれかになる場合もあります。
- aDownload
- 状況が変更されたダウンロード。
[編集] onProgressChange()
ダウンロードの進捗レベルがダウンロードによって変更されたときに呼び出されます。
void onProgressChange( in nsIWebProgress aWebProgress, in nsIRequest aRequest, in long long aCurSelfProgress, in long long aMaxSelfProgress, in long long aCurTotalProgress, in long long aMaxTotalProgress, in nsIDownload aDownload );
[編集] 引数
- aWebProgress
- ダウンロードを監視するためにダウンロードマネージャによって利用される
nsIWebProgressインスタンス。
- aRequest
- 状況を変更した
nsIChannel。この引数はNULLを取ることができません。
- aCurSelfProgress
- aDownload で指定されたダウンロードに対して行われた、現在の進捗の量。
- aMaxSelfProgress
- ダウンロード完了を示すために達成しなければならない、個別進捗状況の値。
- aCurTotalProgress
- すべてのダウンロードに対して行われた、現在の進捗の量。
- aMaxTotalProgress
- すべてのダウンロード完了を示すために達成しなければならない、合計進捗状況の値。
- aDownload
- 進捗状況が aCurSelfProgress と aMaxSelfProgress の引数によって表される
nsIDownloadオブジェクト。
[編集] onStatusChange()
ダウンロードのリクエストの状況に変更があったときに呼び出されます。受け取る状況メッセージは、ユーザに直接表示することを意図したものです。
void onStatusChange( in nsIWebProgress aWebProgress, in nsIRequest aRequest, in nsresult aStatus, in wstring aMessage, in nsIDownload aDownload );
[編集] 引数
- aWebProgress
- ダウンロードを監視するためにダウンロードマネージャによって利用される
nsIWebProgressインスタンス。
- nsIChannel
- 状況を変更した
nsIChannel。この引数はNULLを取ることができません。
- aStatus
- ダウンロードの変更後の状況に関する情報。詳しくは
nsIWebProgressListener]] の [[nsIWebProgressListener#onStateChange|onStateChange()を参照してください。
- aMessage
- 画面上に表示されることを意図した、ユーザが読める形での状況メッセージ
- aDownload
- 状況が変更されたダウンロード。
[編集] onLocationChange()
void onLocationChange( in nsIWebProgress aWebProgress, in nsIRequest aRequest, in nsIURI aLocation, in nsIDownload aDownload );
[編集] 引数
- aWebProgress
- ダウンロードを監視するためにダウンロードマネージャによって利用される
nsIWebProgressインスタンス。
- aRequest
- 状況を変更した
nsIChannel。この引数はNULLを取ることができません。
- aLocation
- ダウンロード中のファイルの URI。
- aDownload
- ダウンロード中のファイルを表す
nsIDownloadオブジェクト。
[編集] onSecurityChange()
ダウンロード中に使われるセキュリティレベルが変更されたときに呼び出されます。例えば、最初のリクエストが HTTPS を通じて行われ、その後ダウンロードが HTTP に変わった場合、この関数が呼び出され、その遷移を通知します。
void onSecurityChange( in nsIWebProgress aWebProgress, in nsIRequest aRequest, in unsigned long aState, in nsIDownload aDownload );
[編集] 引数
- aWebProgress
- ダウンロードを監視するためにダウンロードマネージャによって利用される
nsIWebProgressインスタンス。
- aRequest
- 状況を変更した
nsIChannel。この引数はNULLを取ることができません。
- aState
- ダウンロードの変更後の状況。取り得る値の一覧 は
nsIDownloadManagerを参照してください。
- aDownload
- セキュリティレベルが変更されたダウンロード。