1 // Copyright (c) 2012 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_BACKEND_UNRECOVERABLE_ERROR_HANDLER_H_ 6 #define CHROME_BROWSER_SYNC_BACKEND_UNRECOVERABLE_ERROR_HANDLER_H_ 7 8 #include <string> 9 10 #include "base/location.h" 11 #include "base/memory/weak_ptr.h" 12 13 #include "sync/internal_api/public/util/unrecoverable_error_handler.h" 14 #include "sync/internal_api/public/util/weak_handle.h" 15 16 class ProfileSyncService; 17 namespace browser_sync { 18 19 class BackendUnrecoverableErrorHandler 20 : public syncer::UnrecoverableErrorHandler { 21 public: 22 BackendUnrecoverableErrorHandler( 23 const syncer::WeakHandle<ProfileSyncService>& service); 24 virtual ~BackendUnrecoverableErrorHandler(); 25 virtual void OnUnrecoverableError(const tracked_objects::Location& from_here, 26 const std::string& message) OVERRIDE; 27 28 private: 29 syncer::WeakHandle<ProfileSyncService> service_; 30 }; 31 } // namespace browser_sync 32 #endif // CHROME_BROWSER_SYNC_BACKEND_UNRECOVERABLE_ERROR_HANDLER_H_ 33 34