Chromium Code Reviews| Index: chrome/browser/sync/glue/extension_setting_data_type_controller.h |
| diff --git a/chrome/browser/sync/glue/extension_setting_data_type_controller.h b/chrome/browser/sync/glue/extension_setting_data_type_controller.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..42468c1b08daac60bf141806a4e2ca82264b08c9 |
| --- /dev/null |
| +++ b/chrome/browser/sync/glue/extension_setting_data_type_controller.h |
| @@ -0,0 +1,60 @@ |
| +// Copyright (c) 2011 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 CHROME_BROWSER_SYNC_GLUE_EXTENSION_SETTING_DATA_TYPE_CONTROLLER_H__ |
| +#define CHROME_BROWSER_SYNC_GLUE_EXTENSION_SETTING_DATA_TYPE_CONTROLLER_H__ |
| +#pragma once |
| + |
| +#include <string> |
| + |
| +#include "base/compiler_specific.h" |
| +#include "chrome/browser/sync/glue/non_frontend_data_type_controller.h" |
| +#include "chrome/browser/sync/profile_sync_factory.h" |
|
akalin
2011/09/21 05:41:53
forward-declare instead
not at google - send to devlin
2011/09/21 06:22:41
Done.
|
| + |
| +class ExtensionSettings; |
| +class ExtensionSettingsUIWrapper; |
| + |
| +namespace browser_sync { |
| + |
| +class ExtensionSettingDataTypeController |
| + : public NonFrontendDataTypeController { |
| + public: |
| + ExtensionSettingDataTypeController( |
| + ProfileSyncFactory* profile_sync_factory, |
| + Profile* profile, |
| + ProfileSyncService* profile_sync_service); |
| + virtual ~ExtensionSettingDataTypeController(); |
| + |
| + // NonFrontendDataTypeController implementation |
| + virtual syncable::ModelType type() const OVERRIDE; |
| + virtual browser_sync::ModelSafeGroup model_safe_group() const OVERRIDE; |
| + |
| + private: |
| + // NonFrontendDataTypeController implementation. |
| + virtual bool StartModels() OVERRIDE; |
| + virtual bool StartAssociationAsync() OVERRIDE; |
| + virtual void CreateSyncComponents() OVERRIDE; |
| + virtual bool StopAssociationAsync() OVERRIDE; |
| + virtual void RecordUnrecoverableError( |
| + const tracked_objects::Location& from_here, |
| + const std::string& message) OVERRIDE; |
| + virtual void RecordAssociationTime(base::TimeDelta time) OVERRIDE; |
| + virtual void RecordStartFailure(StartResult result) OVERRIDE; |
| + |
| + // Starts sync association with |extension_settings|. Callback from |
| + // RunWithSettings of |extension_settings_ui_wrapper_| on FILE thread. |
| + void StartAssociationWithExtensionSettings( |
| + ExtensionSettings* extension_settings); |
| + |
| + ExtensionSettingsUIWrapper* extension_settings_ui_wrapper_; |
| + ExtensionSettings* extension_settings_; |
|
akalin
2011/09/21 05:41:53
add a comment that extension_settings_ is used onl
not at google - send to devlin
2011/09/21 06:22:41
Done.
|
| + |
| + ProfileSyncService* profile_sync_service_; |
| + |
| + DISALLOW_COPY_AND_ASSIGN(ExtensionSettingDataTypeController); |
| +}; |
| + |
| +} // namespace browser_sync |
| + |
| +#endif // CHROME_BROWSER_SYNC_GLUE_EXTENSION_SETTING_DATA_TYPE_CONTROLLER_H__ |