| Index: sync/notifier/non_blocking_invalidator.cc
|
| diff --git a/sync/notifier/non_blocking_invalidator.cc b/sync/notifier/non_blocking_invalidator.cc
|
| index a306aa3d841afee08d96c3be7bb328da0944fbed..32ffd9e9fa1b7561bfc5f15ee174872ade25f927 100644
|
| --- a/sync/notifier/non_blocking_invalidator.cc
|
| +++ b/sync/notifier/non_blocking_invalidator.cc
|
| @@ -36,6 +36,8 @@ class NonBlockingInvalidator::Core
|
| const std::string& client_info);
|
| void Teardown();
|
| void UpdateRegisteredIds(const ObjectIdSet& ids);
|
| + void Acknowledge(const invalidation::ObjectId& id,
|
| + const AckHandle& ack_handle);
|
| void SetUniqueId(const std::string& unique_id);
|
| void UpdateCredentials(const std::string& email, const std::string& token);
|
|
|
| @@ -102,6 +104,12 @@ void NonBlockingInvalidator::Core::UpdateRegisteredIds(const ObjectIdSet& ids) {
|
| invalidation_notifier_->UpdateRegisteredIds(this, ids);
|
| }
|
|
|
| +void NonBlockingInvalidator::Core::Acknowledge(const invalidation::ObjectId& id,
|
| + const AckHandle& ack_handle) {
|
| + DCHECK(network_task_runner_->BelongsToCurrentThread());
|
| + invalidation_notifier_->Acknowledge(id, ack_handle);
|
| +}
|
| +
|
| void NonBlockingInvalidator::Core::SetUniqueId(const std::string& unique_id) {
|
| DCHECK(network_task_runner_->BelongsToCurrentThread());
|
| invalidation_notifier_->SetUniqueId(unique_id);
|
| @@ -130,7 +138,7 @@ void NonBlockingInvalidator::Core::OnIncomingInvalidation(
|
|
|
| NonBlockingInvalidator::NonBlockingInvalidator(
|
| const notifier::NotifierOptions& notifier_options,
|
| - const InvalidationStateMap& initial_max_invalidation_versions,
|
| + const InvalidationStateMap& initial_invalidation_state_map,
|
| const std::string& invalidation_bootstrap_data,
|
| const WeakHandle<InvalidationStateTracker>&
|
| invalidation_state_tracker,
|
| @@ -148,7 +156,7 @@ NonBlockingInvalidator::NonBlockingInvalidator(
|
| &NonBlockingInvalidator::Core::Initialize,
|
| core_.get(),
|
| notifier_options,
|
| - initial_max_invalidation_versions,
|
| + initial_invalidation_state_map,
|
| invalidation_bootstrap_data,
|
| invalidation_state_tracker,
|
| client_info))) {
|
| @@ -190,6 +198,20 @@ void NonBlockingInvalidator::UnregisterHandler(InvalidationHandler* handler) {
|
| registrar_.UnregisterHandler(handler);
|
| }
|
|
|
| +void NonBlockingInvalidator::Acknowledge(const invalidation::ObjectId& id,
|
| + const AckHandle& ack_handle) {
|
| + DCHECK(parent_task_runner_->BelongsToCurrentThread());
|
| + if (!network_task_runner_->PostTask(
|
| + FROM_HERE,
|
| + base::Bind(
|
| + &NonBlockingInvalidator::Core::Acknowledge,
|
| + core_.get(),
|
| + id,
|
| + ack_handle))) {
|
| + NOTREACHED();
|
| + }
|
| +}
|
| +
|
| InvalidatorState NonBlockingInvalidator::GetInvalidatorState() const {
|
| DCHECK(parent_task_runner_->BelongsToCurrentThread());
|
| return registrar_.GetInvalidatorState();
|
|
|