Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2 * License, v. 2.0. If a copy of the MPL was not distributed with this
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5 #ifndef nsDownloader_h__
6 #define nsDownloader_h__
8 #include "nsIDownloader.h"
9 #include "nsCOMPtr.h"
11 class nsIFile;
12 class nsIOutputStream;
14 class nsDownloader : public nsIDownloader
15 {
16 public:
17 NS_DECL_ISUPPORTS
18 NS_DECL_NSIDOWNLOADER
19 NS_DECL_NSIREQUESTOBSERVER
20 NS_DECL_NSISTREAMLISTENER
22 nsDownloader() : mLocationIsTemp(false) {}
24 protected:
25 virtual ~nsDownloader();
27 static NS_METHOD ConsumeData(nsIInputStream *in,
28 void *closure,
29 const char *fromRawSegment,
30 uint32_t toOffset,
31 uint32_t count,
32 uint32_t *writeCount);
34 nsCOMPtr<nsIDownloadObserver> mObserver;
35 nsCOMPtr<nsIFile> mLocation;
36 nsCOMPtr<nsIOutputStream> mSink;
37 bool mLocationIsTemp;
38 };
40 #endif // nsDownloader_h__