Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(290)

Unified Diff: components/invalidation/invalidation_logger.h

Issue 1191393008: Introduce a layering in the invalidation component as public and impl (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Explicitly forbid content to prevent future additions Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « components/invalidation/invalidation_handler.cc ('k') | components/invalidation/invalidation_logger.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/invalidation/invalidation_logger.h
diff --git a/components/invalidation/invalidation_logger.h b/components/invalidation/invalidation_logger.h
deleted file mode 100644
index fe445087771dd1b0fd81e286be15707a4374f662..0000000000000000000000000000000000000000
--- a/components/invalidation/invalidation_logger.h
+++ /dev/null
@@ -1,102 +0,0 @@
-// Copyright 2014 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef COMPONENTS_INVALIDATION_INVALIDATION_LOGGER_H_
-#define COMPONENTS_INVALIDATION_INVALIDATION_LOGGER_H_
-
-#include <map>
-#include <set>
-
-#include "base/memory/scoped_ptr.h"
-#include "base/observer_list.h"
-#include "components/invalidation/invalidation_util.h"
-#include "components/invalidation/invalidator_state.h"
-
-namespace base {
-class DictionaryValue;
-} // namespace base
-
-namespace syncer {
-class InvalidationHandler;
-class ObjectIdInvalidationMap;
-} // namespace syncer
-
-namespace invalidation {
-
-class InvalidationLoggerObserver;
-
-// This class is in charge of logging invalidation-related information.
-// It is used store the state of the InvalidatorService that owns this object
-// and then rebroadcast it to observers than can display it accordingly
-// (like a debugging page). This class only stores lightweight state, as in
-// which services are registered and listening for certain objects, and the
-// status of the InvalidatorService (in order not to increase unnecesary
-// memory usage).
-//
-// Observers can be registered and will be called to be notified of any
-// status change immediatly. They can log there the history of what messages
-// they receive.
-
-class InvalidationLogger {
-
- public:
- InvalidationLogger();
- ~InvalidationLogger();
-
- // Pass through to any registered InvalidationLoggerObservers.
- // We will do local logging here too.
- void OnRegistration(const std::string& details);
- void OnUnregistration(const std::string& details);
- void OnStateChange(const syncer::InvalidatorState& new_state);
- void OnUpdateIds(std::map<std::string, syncer::ObjectIdSet> updated_ids);
- void OnDebugMessage(const base::DictionaryValue& details);
- void OnInvalidation(const syncer::ObjectIdInvalidationMap& details);
-
- // Triggers messages to be sent to the Observers to provide them with
- // the current state of the logging.
- void EmitContent();
-
- // Add and remove observers listening for messages.
- void RegisterObserver(InvalidationLoggerObserver* debug_observer);
- void UnregisterObserver(InvalidationLoggerObserver* debug_observer);
- bool IsObserverRegistered(
- const InvalidationLoggerObserver* debug_observer) const;
-
- private:
- // Send to every Observer a OnStateChange event with the latest state.
- void EmitState();
-
- // Send to every Observer many OnUpdateIds events, each with one registrar
- // and every objectId it currently has registered.
- void EmitUpdatedIds();
-
- // Send to every Observer a vector with the all the current registered
- // handlers.
- void EmitRegisteredHandlers();
-
- // The list of every observer currently listening for notifications.
- base::ObserverList<InvalidationLoggerObserver> observer_list_;
-
- // The last InvalidatorState updated by the InvalidatorService.
- syncer::InvalidatorState last_invalidator_state_;
- base::Time last_invalidator_state_timestamp_;
-
- // The map that contains every object id that is currently registered
- // and its owner.
- std::map<std::string, syncer::ObjectIdSet> latest_ids_;
-
- // The map that counts how many invalidations per objectId there has been.
- syncer::ObjectIdCountMap invalidation_count_;
-
- // The name of all invalidatorHandler registered (note that this is not
- // necessarily the same as the keys of latest_ids_, because they might
- // have not registered any object id).
- std::multiset<std::string> registered_handlers_;
-
- DISALLOW_COPY_AND_ASSIGN(InvalidationLogger);
-};
-
-} // namespace invalidation
-
-#endif // COMPONENTS_INVALIDATION_INVALIDATION_LOGGER_H_
« no previous file with comments | « components/invalidation/invalidation_handler.cc ('k') | components/invalidation/invalidation_logger.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698