1116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// Copyright 2014 The Chromium Authors. All rights reserved. 2116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// Use of this source code is governed by a BSD-style license that can be 3116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// found in the LICENSE file. 4116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 5116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "sync/test/trackable_mock_invalidation.h" 6116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 7116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "sync/test/mock_invalidation_tracker.h" 8116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 9116680a4aac90f2aa7413d9095a592090648e557Ben Murdochnamespace syncer { 10116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 11116680a4aac90f2aa7413d9095a592090648e557Ben MurdochTrackableMockInvalidation::TrackableMockInvalidation( 12116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch bool is_unknown_version, 13116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch int64 version, 14116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch const std::string& payload, 15116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch MockInvalidationTracker* tracker, 16116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch int tracking_id) 17116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch : MockInvalidation(is_unknown_version, version, payload), 18116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch tracker_(tracker), 19116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch tracking_id_(tracking_id) { 20116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} 21116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 22116680a4aac90f2aa7413d9095a592090648e557Ben MurdochTrackableMockInvalidation::~TrackableMockInvalidation() { 23116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} 24116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 25116680a4aac90f2aa7413d9095a592090648e557Ben Murdochvoid TrackableMockInvalidation::Acknowledge() { 26116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch if (tracker_) { 27116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch tracker_->Acknowledge(tracking_id_); 28116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch } 29116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} 30116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 31116680a4aac90f2aa7413d9095a592090648e557Ben Murdochvoid TrackableMockInvalidation::Drop() { 32116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch if (tracker_) { 33116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch tracker_->Drop(tracking_id_); 34116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch } 35116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} 36116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 37116680a4aac90f2aa7413d9095a592090648e557Ben Murdochint TrackableMockInvalidation::GetTrackingId() { 38116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch return tracking_id_; 39116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} 40116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 41116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} // namespace syncer 42