blob: 3440a8af588a67f63ccde875f4dad71d70e4c4e0 [file] [log] [blame]
// Copyright 2019 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 COMPONENTS_SEND_TAB_TO_SELF_SEND_TAB_TO_SELF_MODEL_TYPE_CONTROLLER_H_
#define COMPONENTS_SEND_TAB_TO_SELF_SEND_TAB_TO_SELF_MODEL_TYPE_CONTROLLER_H_
#include "base/macros.h"
#include "components/sync/driver/model_type_controller.h"
namespace send_tab_to_self {
// Controls syncing of SEND_TAB_TO_SELF.
class SendTabToSelfModelTypeController : public syncer::ModelTypeController {
public:
// |delegate_for_full_sync_mode| must not be null.
// |delegate_for_transport_mode| can be null.
SendTabToSelfModelTypeController(
std::unique_ptr<syncer::ModelTypeControllerDelegate>
delegate_for_full_sync_mode,
std::unique_ptr<syncer::ModelTypeControllerDelegate>
delegate_for_transport_mode);
~SendTabToSelfModelTypeController() override;
// DataTypeController overrides.
void Stop(syncer::ShutdownReason shutdown_reason,
StopCallback callback) override;
private:
DISALLOW_COPY_AND_ASSIGN(SendTabToSelfModelTypeController);
};
} // namespace send_tab_to_self
#endif // COMPONENTS_SEND_TAB_TO_SELF_SEND_TAB_TO_SELF_MODEL_TYPE_CONTROLLER_H_