fake_invalidation_handler.h 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. // Copyright 2014 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. #ifndef COMPONENTS_INVALIDATION_IMPL_FAKE_INVALIDATION_HANDLER_H_
  5. #define COMPONENTS_INVALIDATION_IMPL_FAKE_INVALIDATION_HANDLER_H_
  6. #include <string>
  7. #include "components/invalidation/public/invalidation_handler.h"
  8. #include "components/invalidation/public/topic_invalidation_map.h"
  9. namespace invalidation {
  10. class FakeInvalidationHandler : public InvalidationHandler {
  11. public:
  12. explicit FakeInvalidationHandler(const std::string& owner);
  13. FakeInvalidationHandler(const FakeInvalidationHandler& other) = delete;
  14. FakeInvalidationHandler& operator=(const FakeInvalidationHandler& other) =
  15. delete;
  16. ~FakeInvalidationHandler() override;
  17. InvalidatorState GetInvalidatorState() const;
  18. const TopicInvalidationMap& GetLastInvalidationMap() const;
  19. int GetInvalidationCount() const;
  20. const std::string& GetInvalidatorClientId() const;
  21. // InvalidationHandler implementation.
  22. void OnInvalidatorStateChange(InvalidatorState state) override;
  23. void OnIncomingInvalidation(
  24. const TopicInvalidationMap& invalidation_map) override;
  25. std::string GetOwnerName() const override;
  26. bool IsPublicTopic(const Topic& topic) const override;
  27. void OnInvalidatorClientIdChange(const std::string& client_id) override;
  28. private:
  29. InvalidatorState state_ = DEFAULT_INVALIDATION_ERROR;
  30. TopicInvalidationMap last_invalidation_map_;
  31. int invalidation_count_ = 0;
  32. std::string owner_name_;
  33. std::string client_id_;
  34. };
  35. } // namespace invalidation
  36. #endif // COMPONENTS_INVALIDATION_IMPL_FAKE_INVALIDATION_HANDLER_H_