From 12023073f43ad431a9acb5f28bb0a9abea4ab089 Mon Sep 17 00:00:00 2001 From: Fabio Berger Date: Sat, 11 Nov 2017 09:54:27 -0500 Subject: Use enum instead of boolean to avoid potential bugs from isRemoved incorrectly being set to true --- src/order_watcher/event_watcher.ts | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'src/order_watcher') diff --git a/src/order_watcher/event_watcher.ts b/src/order_watcher/event_watcher.ts index f86d1f59f..c9e72281c 100644 --- a/src/order_watcher/event_watcher.ts +++ b/src/order_watcher/event_watcher.ts @@ -10,9 +10,15 @@ import { import {AbiDecoder} from '../utils/abi_decoder'; import {intervalUtils} from '../utils/interval_utils'; import {assert} from '../utils/assert'; +import {utils} from '../utils/utils'; const DEFAULT_EVENT_POLLING_INTERVAL = 200; +enum LogEventState { + Removed, + Added, +} + /* * The EventWatcher watches for blockchain events at the specified block confirmation * depth. @@ -56,10 +62,8 @@ export class EventWatcher { } const removedEvents = _.differenceBy(this._lastEvents, pendingEvents, JSON.stringify); const newEvents = _.differenceBy(pendingEvents, this._lastEvents, JSON.stringify); - let isRemoved = true; - await this._emitDifferencesAsync(removedEvents, isRemoved, callback); - isRemoved = false; - await this._emitDifferencesAsync(newEvents, isRemoved, callback); + await this._emitDifferencesAsync(removedEvents, LogEventState.Removed, callback); + await this._emitDifferencesAsync(newEvents, LogEventState.Added, callback); this._lastEvents = pendingEvents; } private async _getEventsAsync(): Promise { @@ -78,11 +82,11 @@ export class EventWatcher { return events; } private async _emitDifferencesAsync( - logs: Web3.LogEntry[], isRemoved: boolean, callback: EventWatcherCallback, + logs: Web3.LogEntry[], logEventState: LogEventState, callback: EventWatcherCallback, ): Promise { for (const log of logs) { const logEvent = { - removed: isRemoved, + removed: logEventState === LogEventState.Removed, ...log, }; if (!_.isUndefined(this._intervalIdIfExists)) { -- cgit