blob: 0ee7c8079c5206180374d4567f6ddc985292fc7b [file] [log] [blame]
// Copyright 2012 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#import "ios/chrome/browser/sync/sync_observer_bridge.h"
#import "base/check.h"
#import "components/sync/service/sync_service.h"
#if !defined(__has_feature) || !__has_feature(objc_arc)
#error "This file requires ARC support."
#endif
SyncObserverBridge::SyncObserverBridge(id<SyncObserverModelBridge> delegate,
syncer::SyncService* sync_service)
: delegate_(delegate) {
DCHECK(delegate);
if (sync_service)
scoped_observation_.Observe(sync_service);
}
SyncObserverBridge::~SyncObserverBridge() {}
void SyncObserverBridge::OnStateChanged(syncer::SyncService* sync) {
[delegate_ onSyncStateChanged];
}
void SyncObserverBridge::OnSyncConfigurationCompleted(
syncer::SyncService* sync) {
if ([delegate_ respondsToSelector:@selector(onSyncConfigurationCompleted)])
[delegate_ onSyncConfigurationCompleted];
}