Index: chrome/browser/media/webrtc_log_uploader.h |
diff --git a/chrome/browser/media/webrtc_log_uploader.h b/chrome/browser/media/webrtc_log_uploader.h |
index 60225c60db7af29a6877dab53e4f4cac18cfd68f..a9620c35d761e883a353c31b20aa95e6ffbe8425 100644 |
--- a/chrome/browser/media/webrtc_log_uploader.h |
+++ b/chrome/browser/media/webrtc_log_uploader.h |
@@ -9,6 +9,7 @@ |
#include <vector> |
#include "base/basictypes.h" |
+#include "base/gtest_prod_util.h" |
#include "base/memory/ref_counted.h" |
#include "base/platform_file.h" |
#include "net/url_request/url_fetcher_delegate.h" |
@@ -27,11 +28,14 @@ typedef struct z_stream_s z_stream; |
class WebRtcLogURLRequestContextGetter; |
// WebRtcLogUploader uploads WebRTC logs, keeps count of how many logs have |
-// been started and denies further logs if a limit is reached. There must only |
-// be one object of this type. |
+// been started and denies further logs if a limit is reached. It also adds |
+// the timestamp and report ID of the uploded log to a text file. There must |
+// only be one object of this type. |
class WebRtcLogUploader : public net::URLFetcherDelegate { |
public: |
- WebRtcLogUploader(); |
+ // |upload_list_path| is the text file to add the uploaded log info to. It is |
+ // intended for testing. If empty the default path will be used. |
+ explicit WebRtcLogUploader(base::FilePath& upload_list_path); |
tommi (sloooow) - chröme
2013/07/01 12:01:01
instead of changing the constructor and add a File
Henrik Grunell
2013/07/01 13:26:22
Done.
|
virtual ~WebRtcLogUploader(); |
// net::URLFetcherDelegate implementation. |
@@ -54,6 +58,8 @@ class WebRtcLogUploader : public net::URLFetcherDelegate { |
const std::string& app_url); |
private: |
+ FRIEND_TEST_ALL_PREFIXES(WebRtcLogUploaderTest, Basic); |
+ |
// Sets up a multipart body to be uploaded. The body is produced according |
// to RFC 2046. |
void SetupMultipart(std::string* post_data, uint8* log_buffer, |
@@ -67,7 +73,18 @@ class WebRtcLogUploader : public net::URLFetcherDelegate { |
void ResizeForNextOutput(std::string* post_data, z_stream* stream); |
void DecreaseLogCount(); |
+ // Append information (time and report ID) about this uploaded log to a log |
+ // list file, limited to |kLogListLimitLines| entries. This list is used for |
+ // viewing the uploaded logs under chrome://webrtc-logs, see |
+ // WebRtcLogUploadList. The list has the format |
+ // time,id |
+ // time,id |
+ // etc. |
+ // where each line represents an uploaded log and "time" is Unix time. |
+ void AddUploadedLogInfoToUploadListFile(const std::string& report_id); |
+ |
int log_count_; |
+ base::FilePath upload_list_path_; |
DISALLOW_COPY_AND_ASSIGN(WebRtcLogUploader); |
}; |