1 // Copyright 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_NOTIFIER_INVALIDATION_HANDLER_H_ 6 #define SYNC_NOTIFIER_INVALIDATION_HANDLER_H_ 7 8 #include "sync/base/sync_export.h" 9 #include "sync/notifier/invalidator_state.h" 10 11 namespace syncer { 12 13 class ObjectIdInvalidationMap; 14 15 class SYNC_EXPORT InvalidationHandler { 16 public: 17 // Called when the invalidator state changes. 18 virtual void OnInvalidatorStateChange(InvalidatorState state) = 0; 19 20 // Called when a invalidation is received. The per-id states are in 21 // |id_state_map| and the source is in |source|. Note that this may be 22 // called regardless of the current invalidator state. 23 virtual void OnIncomingInvalidation( 24 const ObjectIdInvalidationMap& invalidation_map) = 0; 25 26 protected: 27 virtual ~InvalidationHandler() {} 28 }; 29 30 } // namespace syncer 31 32 #endif // SYNC_NOTIFIER_INVALIDATION_HANDLER_H_ 33