OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 CHROME_BROWSER_SYNC_UNRECOVERABLE_ERROR_HANDLER_H_ | 5 #ifndef CHROME_BROWSER_SYNC_UNRECOVERABLE_ERROR_HANDLER_H_ |
6 #define CHROME_BROWSER_SYNC_UNRECOVERABLE_ERROR_HANDLER_H_ | 6 #define CHROME_BROWSER_SYNC_UNRECOVERABLE_ERROR_HANDLER_H_ |
7 | 7 |
| 8 #include <string> |
| 9 |
| 10 #include "base/tracked.h" |
| 11 |
8 namespace browser_sync { | 12 namespace browser_sync { |
9 | 13 |
10 class UnrecoverableErrorHandler { | 14 class UnrecoverableErrorHandler { |
11 public: | 15 public: |
12 // Call this when normal operation detects that the chrome model and the | 16 // Call this when normal operation detects that the chrome model and the |
13 // syncer model are inconsistent, or similar. The ProfileSyncService will | 17 // syncer model are inconsistent, or similar. The ProfileSyncService will |
14 // try to avoid doing any work to avoid crashing or corrupting things | 18 // try to avoid doing any work to avoid crashing or corrupting things |
15 // further, and will report an error status if queried. | 19 // further, and will report an error status if queried. |
16 virtual void OnUnrecoverableError() = 0; | 20 virtual void OnUnrecoverableError(const tracked_objects::Location& from_here, |
| 21 const std::string& message) = 0; |
17 protected: | 22 protected: |
18 virtual ~UnrecoverableErrorHandler() { } | 23 virtual ~UnrecoverableErrorHandler() { } |
19 }; | 24 }; |
20 | 25 |
21 } | 26 } |
22 | 27 |
23 #endif // CHROME_BROWSER_SYNC_UNRECOVERABLE_ERROR_HANDLER_H_ | 28 #endif // CHROME_BROWSER_SYNC_UNRECOVERABLE_ERROR_HANDLER_H_ |
OLD | NEW |