Home | History | Annotate | Download | only in glue
      1 // Copyright 2014 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 #include "chrome/browser/sync/glue/local_device_info_provider_mock.h"
      6 
      7 namespace browser_sync {
      8 
      9 LocalDeviceInfoProviderMock::LocalDeviceInfoProviderMock()
     10   : is_initialized_(false) {}
     11 
     12 LocalDeviceInfoProviderMock::LocalDeviceInfoProviderMock(
     13     const std::string& guid,
     14     const std::string& client_name,
     15     const std::string& chrome_version,
     16     const std::string& sync_user_agent,
     17     const sync_pb::SyncEnums::DeviceType device_type,
     18     const std::string& signin_scoped_device_id)
     19   : is_initialized_(true) {
     20   local_device_info_.reset(
     21       new sync_driver::DeviceInfo(
     22           guid,
     23           client_name,
     24           chrome_version,
     25           sync_user_agent,
     26           device_type,
     27           signin_scoped_device_id));
     28 }
     29 
     30 LocalDeviceInfoProviderMock::~LocalDeviceInfoProviderMock() {}
     31 
     32 const sync_driver::DeviceInfo*
     33 LocalDeviceInfoProviderMock::GetLocalDeviceInfo() const {
     34   return is_initialized_ ? local_device_info_.get() : NULL;
     35 }
     36 
     37 std::string LocalDeviceInfoProviderMock::GetLocalSyncCacheGUID() const {
     38   return local_device_info_.get() ? local_device_info_->guid() : "";
     39 }
     40 
     41 void LocalDeviceInfoProviderMock::Initialize(
     42     const std::string& cache_guid, const std::string& signin_scoped_device_id) {
     43   // Ignored for the mock provider.
     44 }
     45 
     46 scoped_ptr<sync_driver::LocalDeviceInfoProvider::Subscription>
     47 LocalDeviceInfoProviderMock::RegisterOnInitializedCallback(
     48     const base::Closure& callback) {
     49   DCHECK(!is_initialized_);
     50   return callback_list_.Add(callback);
     51 }
     52 
     53 void LocalDeviceInfoProviderMock::SetInitialized(bool is_initialized) {
     54   is_initialized_ = is_initialized;
     55   if (is_initialized_) {
     56     callback_list_.Notify();
     57   }
     58 }
     59 
     60 }  // namespace browser_sync
     61 
     62