blob: 13e55c7ad1cf5d97281e9ff389765309474855e3 [file] [log] [blame]
[email protected]0e7f2b72012-12-05 05:31:121// Copyright (c) 2012 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#ifndef SYNC_TOOLS_NULL_INVALIDATION_STATE_TRACKER_H_
6#define SYNC_TOOLS_NULL_INVALIDATION_STATE_TRACKER_H_
7
8#include "base/compiler_specific.h"
9#include "base/memory/weak_ptr.h"
10#include "sync/notifier/invalidation_state_tracker.h"
11
12namespace syncer {
13
14class NullInvalidationStateTracker
15 : public base::SupportsWeakPtr<NullInvalidationStateTracker>,
16 public InvalidationStateTracker {
17 public:
18 NullInvalidationStateTracker();
19 virtual ~NullInvalidationStateTracker();
20
21 virtual InvalidationStateMap GetAllInvalidationStates() const OVERRIDE;
22 virtual void SetMaxVersionAndPayload(const invalidation::ObjectId& id,
23 int64 max_invalidation_version,
24 const std::string& payload) OVERRIDE;
25 virtual void Forget(const ObjectIdSet& ids) OVERRIDE;
26
27 virtual std::string GetBootstrapData() const OVERRIDE;
28 virtual void SetBootstrapData(const std::string& data) OVERRIDE;
29
30 virtual void GenerateAckHandles(
31 const ObjectIdSet& ids,
32 const scoped_refptr<base::TaskRunner>& task_runner,
33 base::Callback<void(const AckHandleMap&)> callback) OVERRIDE;
34 virtual void Acknowledge(const invalidation::ObjectId& id,
35 const AckHandle& ack_handle) OVERRIDE;
36};
37
38} // namespace syncer
39
40#endif // SYNC_TOOLS_NULL_INVALIDATION_STATE_TRACKER_H_