Index: chrome/browser/sync/js/js_mutation_event_observer.h |
diff --git a/chrome/browser/sync/js/js_transaction_observer.h b/chrome/browser/sync/js/js_mutation_event_observer.h |
similarity index 61% |
rename from chrome/browser/sync/js/js_transaction_observer.h |
rename to chrome/browser/sync/js/js_mutation_event_observer.h |
index e9ae2283f31baae9f8f5b233e455e97646f2ac7f..ced1d91d9b35170d32c68c0a88e62ecff5e7a71b 100644 |
--- a/chrome/browser/sync/js/js_transaction_observer.h |
+++ b/chrome/browser/sync/js/js_mutation_event_observer.h |
@@ -2,8 +2,8 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#ifndef CHROME_BROWSER_SYNC_JS_JS_TRANSACTION_OBSERVER_H_ |
-#define CHROME_BROWSER_SYNC_JS_JS_TRANSACTION_OBSERVER_H_ |
+#ifndef CHROME_BROWSER_SYNC_JS_JS_MUTATION_EVENT_OBSERVER_H_ |
+#define CHROME_BROWSER_SYNC_JS_JS_MUTATION_EVENT_OBSERVER_H_ |
#pragma once |
#include <string> |
@@ -11,6 +11,7 @@ |
#include "base/basictypes.h" |
#include "base/compiler_specific.h" |
#include "base/threading/non_thread_safe.h" |
+#include "chrome/browser/sync/internal_api/sync_manager.h" |
#include "chrome/browser/sync/syncable/transaction_observer.h" |
#include "chrome/browser/sync/util/weak_handle.h" |
@@ -23,15 +24,25 @@ namespace browser_sync { |
class JsEventDetails; |
class JsEventHandler; |
-// Routes SyncManager events to a JsEventHandler. |
-class JsTransactionObserver : public syncable::TransactionObserver { |
+// Observes all change- and transaction-related events and routes a |
+// summarized version to a JsEventHandler. |
+class JsMutationEventObserver |
+ : public sync_api::SyncManager::ChangeObserver, |
+ public syncable::TransactionObserver { |
public: |
- JsTransactionObserver(); |
+ JsMutationEventObserver(); |
- virtual ~JsTransactionObserver(); |
+ virtual ~JsMutationEventObserver(); |
void SetJsEventHandler(const WeakHandle<JsEventHandler>& event_handler); |
+ // sync_api::SyncManager::ChangeObserver implementation. |
+ virtual void OnChangesApplied( |
+ syncable::ModelType model_type, |
+ int64 write_transaction_id, |
+ const sync_api::ImmutableChangeRecordList& changes) OVERRIDE; |
+ virtual void OnChangesComplete(syncable::ModelType model_type) OVERRIDE; |
+ |
// syncable::TransactionObserver implementation. |
virtual void OnTransactionStart( |
const tracked_objects::Location& location, |
@@ -51,9 +62,9 @@ class JsTransactionObserver : public syncable::TransactionObserver { |
const tracked_objects::Location& from_here, |
const std::string& name, const JsEventDetails& details); |
- DISALLOW_COPY_AND_ASSIGN(JsTransactionObserver); |
+ DISALLOW_COPY_AND_ASSIGN(JsMutationEventObserver); |
}; |
} // namespace browser_sync |
-#endif // CHROME_BROWSER_SYNC_JS_JS_TRANSACTION_OBSERVER_H_ |
+#endif // CHROME_BROWSER_SYNC_JS_JS_MUTATION_EVENT_OBSERVER_H_ |