| Index: chrome/browser/resources/sync_internals/sync_log.js
|
| diff --git a/chrome/browser/resources/sync_internals/sync_log.js b/chrome/browser/resources/sync_internals/sync_log.js
|
| index 0d281890bc8091dd5ea849225280de73dbddf1e4..44d1f257a054fff75b3e088c55e6a00eaf1f8e20 100644
|
| --- a/chrome/browser/resources/sync_internals/sync_log.js
|
| +++ b/chrome/browser/resources/sync_internals/sync_log.js
|
| @@ -11,6 +11,35 @@
|
| */
|
|
|
| cr.define('chrome.sync', function() {
|
| + 'use strict';
|
| +
|
| + var eventsByCategory = {
|
| + notifier: [
|
| + 'onIncomingNotification',
|
| + 'onNotificationStateChange',
|
| + ],
|
| +
|
| + manager: [
|
| + 'onActionableError',
|
| + 'onChangesApplied',
|
| + 'onChangesComplete',
|
| + 'onClearServerDataFailed',
|
| + 'onClearServerDataSucceeded',
|
| + 'onConnectionStatusChange',
|
| + 'onEncryptedTypesChanged',
|
| + 'onEncryptionComplete',
|
| + 'onInitializationComplete',
|
| + 'onPassphraseAccepted',
|
| + 'onPassphraseRequired',
|
| + 'onStopSyncingPermanently',
|
| + 'onSyncCycleCompleted',
|
| + ],
|
| +
|
| + transaction: [
|
| + 'onTransactionWrite',
|
| + ],
|
| + };
|
| +
|
| /**
|
| * Creates a new log object which then immediately starts recording
|
| * sync events. Recorded entries are available in the 'entries'
|
| @@ -21,21 +50,24 @@ cr.define('chrome.sync', function() {
|
| var Log = function() {
|
| var self = this;
|
|
|
| - var makeListener = function(service, event) {
|
| - return function(details) {
|
| - self.log_(service, event, details);
|
| + /**
|
| + * Creates a callback function to be invoked when an event arrives.
|
| + */
|
| + var makeCallback = function(categoryName, eventName) {
|
| + return function(e) {
|
| + self.log_(categoryName, eventName, e.details);
|
| };
|
| };
|
|
|
| - for (var eventType in chrome.sync.events) {
|
| - var events = chrome.sync.events[eventType];
|
| - for (var i = 0; i < events.length; ++i) {
|
| - var eventName = events[i];
|
| - var event = chrome.sync[eventName];
|
| - event.addListener(makeListener(eventType, eventName));
|
| + for (var categoryName in eventsByCategory) {
|
| + for (var i = 0; i < eventsByCategory[categoryName].length; ++i) {
|
| + var eventName = eventsByCategory[categoryName][i];
|
| + chrome.sync.events.addEventListener(
|
| + eventName,
|
| + makeCallback(categoryName, eventName));
|
| }
|
| }
|
| - };
|
| + }
|
|
|
| Log.prototype = {
|
| __proto__: cr.EventTarget.prototype,
|
|
|