• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
3 // found in the LICENSE file.
4 
5 #ifndef CHROME_BROWSER_SYNC_UNRECOVERABLE_ERROR_HANDLER_H_
6 #define CHROME_BROWSER_SYNC_UNRECOVERABLE_ERROR_HANDLER_H_
7 #pragma once
8 
9 #include <string>
10 
11 #include "base/tracked.h"
12 
13 namespace browser_sync {
14 
15 class UnrecoverableErrorHandler {
16  public:
17   // Call this when normal operation detects that the chrome model and the
18   // syncer model are inconsistent, or similar.  The ProfileSyncService will
19   // try to avoid doing any work to avoid crashing or corrupting things
20   // further, and will report an error status if queried.
21   virtual void OnUnrecoverableError(const tracked_objects::Location& from_here,
22                                     const std::string& message) = 0;
23  protected:
~UnrecoverableErrorHandler()24   virtual ~UnrecoverableErrorHandler() { }
25 };
26 
27 }
28 
29 #endif  // CHROME_BROWSER_SYNC_UNRECOVERABLE_ERROR_HANDLER_H_
30