OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef COMPONENTS_CRASH_CONTENT_APP_CRASHPAD_H_ | 5 #ifndef COMPONENTS_CRASH_CONTENT_APP_CRASHPAD_H_ |
6 #define COMPONENTS_CRASH_CONTENT_APP_CRASHPAD_H_ | 6 #define COMPONENTS_CRASH_CONTENT_APP_CRASHPAD_H_ |
7 | 7 |
8 #include <time.h> | 8 #include <time.h> |
9 | 9 |
10 #include <map> | 10 #include <map> |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
65 // running. | 65 // running. |
66 void SetUploadConsent(bool consent); | 66 void SetUploadConsent(bool consent); |
67 | 67 |
68 // Determines whether uploads are enabled or disabled. This information is only | 68 // Determines whether uploads are enabled or disabled. This information is only |
69 // available in the browser process. | 69 // available in the browser process. |
70 bool GetUploadsEnabled(); | 70 bool GetUploadsEnabled(); |
71 | 71 |
72 enum class ReportUploadState { | 72 enum class ReportUploadState { |
73 NotUploaded, | 73 NotUploaded, |
74 Pending, | 74 Pending, |
75 Uploaded, | 75 Pending_UserRequested, |
| 76 Uploaded |
76 }; | 77 }; |
77 | 78 |
78 struct Report { | 79 struct Report { |
79 std::string local_id; | 80 std::string local_id; |
80 time_t capture_time; | 81 time_t capture_time; |
81 std::string remote_id; | 82 std::string remote_id; |
82 time_t upload_time; | 83 time_t upload_time; |
83 ReportUploadState state; | 84 ReportUploadState state; |
84 }; | 85 }; |
85 | 86 |
86 // Obtains a list of reports uploaded to the collection server. This function | 87 // Obtains a list of reports uploaded to the collection server. This function |
87 // only operates when called in the browser process. All reports in the Crashpad | 88 // only operates when called in the browser process. All reports in the Crashpad |
88 // database that have been successfully uploaded will be included in this list. | 89 // database that have been successfully uploaded will be included in this list. |
89 // The list will be sorted in descending order by report creation time (newest | 90 // The list will be sorted in descending order by report creation time (newest |
90 // reports first). | 91 // reports first). |
91 void GetReports(std::vector<Report>* reports); | 92 void GetReports(std::vector<Report>* reports); |
92 | 93 |
| 94 // Requests a user triggered upload for a crash report with a given id. |
| 95 void RequestSingleCrashUpload(const std::string& local_id); |
| 96 |
93 namespace internal { | 97 namespace internal { |
94 | 98 |
95 #if defined(OS_WIN) | 99 #if defined(OS_WIN) |
96 // Returns platform specific annotations. This is broken out on Windows only so | 100 // Returns platform specific annotations. This is broken out on Windows only so |
97 // that it may be reused by GetCrashKeysForKasko. | 101 // that it may be reused by GetCrashKeysForKasko. |
98 void GetPlatformCrashpadAnnotations( | 102 void GetPlatformCrashpadAnnotations( |
99 std::map<std::string, std::string>* annotations); | 103 std::map<std::string, std::string>* annotations); |
100 #endif // defined(OS_WIN) | 104 #endif // defined(OS_WIN) |
101 | 105 |
102 // The platform-specific portion of InitializeCrashpad(). | 106 // The platform-specific portion of InitializeCrashpad(). |
103 // Returns the database path, if initializing in the browser process. | 107 // Returns the database path, if initializing in the browser process. |
104 base::FilePath PlatformCrashpadInitialization(bool initial_client, | 108 base::FilePath PlatformCrashpadInitialization(bool initial_client, |
105 bool browser_process, | 109 bool browser_process, |
106 bool embedded_handler); | 110 bool embedded_handler); |
107 | 111 |
108 } // namespace internal | 112 } // namespace internal |
109 | 113 |
110 } // namespace crash_reporter | 114 } // namespace crash_reporter |
111 | 115 |
112 #endif // COMPONENTS_CRASH_CONTENT_APP_CRASHPAD_H_ | 116 #endif // COMPONENTS_CRASH_CONTENT_APP_CRASHPAD_H_ |
OLD | NEW |