Skip to content

Commit

Permalink
ef7ce0d fix(web worker): remove usages of deprecated zone API
Browse files Browse the repository at this point in the history
  • Loading branch information
yjbanov committed Nov 25, 2015
1 parent 4c29af8 commit 58c2ad7
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 15 deletions.
4 changes: 2 additions & 2 deletions BUILD_INFO
@@ -1,2 +1,2 @@
Wed Nov 25 01:19:45 UTC 2015
019cb41dd8f96ecdc801226bca8a1e4cbc1570a8
Wed Nov 25 19:34:34 UTC 2015
ef7ce0df1552b24a9df845b99f411d44b4a3a135
16 changes: 9 additions & 7 deletions lib/src/mock/ng_zone_mock.dart
@@ -1,13 +1,20 @@
library angular2.src.mock.ng_zone_mock;

import "package:angular2/src/core/zone/ng_zone.dart" show NgZone;
import "package:angular2/src/facade/async.dart"
show EventEmitter, ObservableWrapper;

class MockNgZone extends NgZone {
/** @internal */
dynamic /* () => void */ _onEventDone;
EventEmitter<dynamic> _mockOnEventDone;
MockNgZone() : super(enableLongStackTrace: false) {
/* super call moved to initializer */;
this._mockOnEventDone = new EventEmitter<dynamic>(false);
}
get onEventDone {
return this._mockOnEventDone;
}

dynamic run(Function fn) {
return fn();
}
Expand All @@ -16,12 +23,7 @@ class MockNgZone extends NgZone {
return fn();
}

void overrideOnEventDone(dynamic /* () => void */ fn,
[bool opt_waitForAsync = false]) {
this._onEventDone = fn;
}

void simulateZoneExit() {
this._onEventDone();
ObservableWrapper.callNext(this.onEventDone, null);
}
}
14 changes: 8 additions & 6 deletions lib/src/web_workers/shared/generic_message_bus.dart
Expand Up @@ -45,12 +45,14 @@ abstract class GenericMessageBusSink implements MessageBusSink {

void attachToZone(NgZone zone) {
_zone = zone;
_zone.overrideOnEventDone(() {
if (_messageBuffer.length > 0) {
sendMessages(_messageBuffer);
_messageBuffer.clear();
}
}, false);
_zone.runOutsideAngular(() {
_zone.onEventDone.listen((_) {
if (_messageBuffer.length > 0) {
sendMessages(_messageBuffer);
_messageBuffer.clear();
}
});
});
}

void initChannel(String channelName, [bool runInZone = true]) {
Expand Down

0 comments on commit 58c2ad7

Please sign in to comment.