1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CHROMECAST_APP_ANDROID_CAST_CRASH_REPORTER_CLIENT_ANDROID_H_
6 #define CHROMECAST_APP_ANDROID_CAST_CRASH_REPORTER_CLIENT_ANDROID_H_
8 #include "base/compiler_specific.h"
9 #include "components/crash/app/crash_reporter_client.h"
11 namespace chromecast
{
13 class CastCrashReporterClientAndroid
14 : public crash_reporter::CrashReporterClient
{
16 explicit CastCrashReporterClientAndroid(const std::string
& process_type
);
17 ~CastCrashReporterClientAndroid() override
;
19 static bool GetCrashDumpLocation(const std::string
& process_type
,
20 base::FilePath
* crash_dir
);
22 // crash_reporter::CrashReporterClient implementation:
23 void GetProductNameAndVersion(const char** product_name
,
24 const char** version
) override
;
25 base::FilePath
GetReporterLogFilename() override
;
26 bool GetCrashDumpLocation(base::FilePath
* crash_dir
) override
;
27 int GetAndroidMinidumpDescriptor() override
;
28 bool GetCollectStatsConsent() override
;
29 bool EnableBreakpadForProcess(const std::string
& process_type
) override
;
30 size_t RegisterCrashKeys() override
;
33 std::string process_type_
;
35 DISALLOW_COPY_AND_ASSIGN(CastCrashReporterClientAndroid
);
38 } // namespace chromecast
40 #endif // CHROMECAST_APP_ANDROID_CAST_CRASH_REPORTER_CLIENT_ANDROID_H_