Home | History | Annotate | Download | only in glue
      1 // Copyright (c) 2011 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_GLUE_PREFERENCE_DATA_TYPE_CONTROLLER_H__
      6 #define CHROME_BROWSER_SYNC_GLUE_PREFERENCE_DATA_TYPE_CONTROLLER_H__
      7 #pragma once
      8 
      9 #include <string>
     10 
     11 #include "chrome/browser/sync/glue/frontend_data_type_controller.h"
     12 
     13 namespace browser_sync {
     14 
     15 class PreferenceDataTypeController : public FrontendDataTypeController {
     16  public:
     17   PreferenceDataTypeController(
     18       ProfileSyncFactory* profile_sync_factory,
     19       Profile* profile,
     20       ProfileSyncService* sync_service);
     21   virtual ~PreferenceDataTypeController();
     22 
     23   // FrontendDataTypeController implementation.
     24   virtual syncable::ModelType type() const;
     25 
     26  private:
     27   // FrontendDataTypeController implementations.
     28   virtual void CreateSyncComponents();
     29   virtual void RecordUnrecoverableError(
     30       const tracked_objects::Location& from_here,
     31       const std::string& message);
     32   virtual void RecordAssociationTime(base::TimeDelta time);
     33   virtual void RecordStartFailure(StartResult result);
     34 
     35   DISALLOW_COPY_AND_ASSIGN(PreferenceDataTypeController);
     36 };
     37 
     38 }  // namespace browser_sync
     39 
     40 #endif  // CHROME_BROWSER_SYNC_GLUE_PREFERENCE_DATA_TYPE_CONTROLLER_H__
     41