summaryrefslogtreecommitdiffstats
path: root/chromium/components/breakpad/app/breakpad_client.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/components/breakpad/app/breakpad_client.h')
-rw-r--r--chromium/components/breakpad/app/breakpad_client.h147
1 files changed, 0 insertions, 147 deletions
diff --git a/chromium/components/breakpad/app/breakpad_client.h b/chromium/components/breakpad/app/breakpad_client.h
deleted file mode 100644
index 09a50474a41..00000000000
--- a/chromium/components/breakpad/app/breakpad_client.h
+++ /dev/null
@@ -1,147 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef COMPONENTS_BREAKPAD_APP_BREAKPAD_CLIENT_H_
-#define COMPONENTS_BREAKPAD_APP_BREAKPAD_CLIENT_H_
-
-#include <string>
-
-#include "base/strings/string16.h"
-#include "build/build_config.h"
-
-namespace base {
-class FilePath;
-}
-
-#if defined(OS_MACOSX)
-// We don't want to directly include
-// breakpad/src/client/mac/Framework/Breakpad.h here, so we repeat the
-// definition of BreakpadRef.
-//
-// On Mac, when compiling without breakpad support, a stub implementation is
-// compiled in. Not having any includes of the breakpad library allows for
-// reusing this header for the stub.
-typedef void* BreakpadRef;
-#endif
-
-namespace breakpad {
-
-class BreakpadClient;
-
-// Setter and getter for the client. The client should be set early, before any
-// breakpad code is called, and should stay alive throughout the entire runtime.
-void SetBreakpadClient(BreakpadClient* client);
-
-#if defined(BREAKPAD_IMPLEMENTATION)
-// Breakpad's embedder API should only be used by breakpad.
-BreakpadClient* GetBreakpadClient();
-#endif
-
-// Interface that the embedder implements.
-class BreakpadClient {
- public:
- BreakpadClient();
- virtual ~BreakpadClient();
-
- // Sets the Breakpad client ID, which is a unique identifier for the client
- // that is sending crash reports. After it is set, it should not be changed.
- virtual void SetClientID(const std::string& client_id);
-
-#if defined(OS_WIN)
- // Returns true if an alternative location to store the minidump files was
- // specified. Returns true if |crash_dir| was set.
- virtual bool GetAlternativeCrashDumpLocation(base::FilePath* crash_dir);
-
- // Returns a textual description of the product type and version to include
- // in the crash report.
- virtual void GetProductNameAndVersion(const base::FilePath& exe_path,
- base::string16* product_name,
- base::string16* version,
- base::string16* special_build,
- base::string16* channel_name);
-
- // Returns true if a restart dialog should be displayed. In that case,
- // |message| and |title| are set to a message to display in a dialog box with
- // the given title before restarting, and |is_rtl_locale| indicates whether
- // to display the text as RTL.
- virtual bool ShouldShowRestartDialog(base::string16* title,
- base::string16* message,
- bool* is_rtl_locale);
-
- // Returns true if it is ok to restart the application. Invoked right before
- // restarting after a crash.
- virtual bool AboutToRestart();
-
- // Returns true if the crash report uploader supports deferred uploads.
- virtual bool GetDeferredUploadsSupported(bool is_per_user_install);
-
- // Returns true if the running binary is a per-user installation.
- virtual bool GetIsPerUserInstall(const base::FilePath& exe_path);
-
- // Returns true if larger crash dumps should be dumped.
- virtual bool GetShouldDumpLargerDumps(bool is_per_user_install);
-
- // Returns the result code to return when breakpad failed to respawn a
- // crashed process.
- virtual int GetResultCodeRespawnFailed();
-
- // Invoked when initializing breakpad in the browser process.
- virtual void InitBrowserCrashDumpsRegKey();
-
- // Invoked before attempting to write a minidump.
- virtual void RecordCrashDumpAttempt(bool is_real_crash);
-#endif
-
-#if defined(OS_POSIX) && !defined(OS_MACOSX) && !defined(OS_IOS)
- // Returns a textual description of the product type and version to include
- // in the crash report.
- virtual void GetProductNameAndVersion(std::string* product_name,
- std::string* version);
-
- virtual base::FilePath GetReporterLogFilename();
-#endif
-
- // The location where minidump files should be written. Returns true if
- // |crash_dir| was set.
- virtual bool GetCrashDumpLocation(base::FilePath* crash_dir);
-
-#if defined(OS_POSIX)
- // Sets a function that'll be invoked to dump the current process when
- // without crashing.
- virtual void SetDumpWithoutCrashingFunction(void (*function)());
-#endif
-
- // Register all of the potential crash keys that can be sent to the crash
- // reporting server. Returns the size of the union of all keys.
- virtual size_t RegisterCrashKeys();
-
- // Returns true if running in unattended mode (for automated testing).
- virtual bool IsRunningUnattended();
-
- // Returns true if the user has given consent to collect stats.
- virtual bool GetCollectStatsConsent();
-
-#if defined(OS_WIN) || defined(OS_MACOSX)
- // Returns true if breakpad is enforced via management policies. In that
- // case, |breakpad_enabled| is set to the value enforced by policies.
- virtual bool ReportingIsEnforcedByPolicy(bool* breakpad_enabled);
-#endif
-
-#if defined(OS_ANDROID)
- // Returns the descriptor key of the android minidump global descriptor.
- virtual int GetAndroidMinidumpDescriptor();
-#endif
-
-#if defined(OS_MACOSX)
- // Install additional breakpad filter callbacks.
- virtual void InstallAdditionalFilters(BreakpadRef breakpad);
-#endif
-
- // Returns true if breakpad should run in the given process type.
- virtual bool EnableBreakpadForProcess(const std::string& process_type);
-};
-
-} // namespace breakpad
-
-#endif // COMPONENTS_BREAKPAD_APP_BREAKPAD_CLIENT_H_