| Index: chrome/browser/resources/net_internals/events_tracker.js
|
| diff --git a/chrome/browser/resources/net_internals/events_tracker.js b/chrome/browser/resources/net_internals/events_tracker.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..34ed91eb170fac3f310d0df5beba5b0b209e55b5
|
| --- /dev/null
|
| +++ b/chrome/browser/resources/net_internals/events_tracker.js
|
| @@ -0,0 +1,71 @@
|
| +// Copyright (c) 2012 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.
|
| +
|
| +var EventsTracker = (function() {
|
| + 'use strict';
|
| +
|
| + /**
|
| + * This class keeps track of all NetLog events.
|
| + * It receives events from the browser and when loading a log file, and passes
|
| + * them on to all its observers.
|
| + *
|
| + * @constructor
|
| + */
|
| + function EventsTracker() {
|
| + assertFirstConstructorCall(EventsTracker);
|
| +
|
| + this.capturedEvents_ = [];
|
| + this.observers_ = [];
|
| + }
|
| +
|
| + cr.addSingletonGetter(EventsTracker);
|
| +
|
| + EventsTracker.prototype = {
|
| + /**
|
| + * Returns a list of all captured events.
|
| + */
|
| + getAllCapturedEvents: function() {
|
| + return this.capturedEvents_;
|
| + },
|
| +
|
| + /**
|
| + * Returns the number of events that were captured.
|
| + */
|
| + getNumCapturedEvents: function() {
|
| + return this.capturedEvents_.length;
|
| + },
|
| +
|
| + /**
|
| + * Deletes all the tracked events, and notifies any observers.
|
| + */
|
| + deleteAllLogEntries: function() {
|
| + this.capturedEvents_ = [];
|
| + for (var i = 0; i < this.observers_.length; ++i)
|
| + this.observers_[i].onAllLogEntriesDeleted();
|
| + },
|
| +
|
| + /**
|
| + * Adds captured events, and broadcasts them to any observers.
|
| + */
|
| + addLogEntries: function(logEntries) {
|
| + this.capturedEvents_ = this.capturedEvents_.concat(logEntries);
|
| + for (var i = 0; i < this.observers_.length; ++i) {
|
| + this.observers_[i].onReceivedLogEntries(logEntries);
|
| + }
|
| + },
|
| +
|
| + /**
|
| + * Adds a listener of log entries. |observer| will be called back when new
|
| + * log data arrives or all entries are deleted:
|
| + *
|
| + * observer.onReceivedLogEntries(entries)
|
| + * observer.onAllLogEntriesDeleted()
|
| + */
|
| + addLogEntryObserver: function(observer) {
|
| + this.observers_.push(observer);
|
| + }
|
| + };
|
| +
|
| + return EventsTracker;
|
| +})();
|
|
|