Skip to content

Commit 9f8522f

Browse files
committed
added null safety
1 parent 5f395a9 commit 9f8522f

File tree

6 files changed

+23
-24
lines changed

6 files changed

+23
-24
lines changed

lib/src/EnhancedEventEmitter.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ Logger _logger = Logger('EnhancedEventEmitter');
88

99
class EnhancedEventEmitter extends EventEmitter {
1010
EnhancedEventEmitter() : super();
11-
void safeEmit(String event, [Map<String, dynamic> args]) {
11+
void safeEmit(String event, [Map<String, dynamic>? args]) {
1212
try {
1313
emit(event, args);
1414
} catch (error) {
@@ -19,7 +19,7 @@ class EnhancedEventEmitter extends EventEmitter {
1919
}
2020

2121
Future<dynamic> safeEmitAsFuture(String event,
22-
[Map<String, dynamic> args]) async {
22+
[Map<String, dynamic>? args]) async {
2323
try {
2424
return emitAsFuture(event, args);
2525
} catch (error) {

lib/src/message.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ final logger = new Logger('Message');
88
class Message {
99
static JsonEncoder encoder = new JsonEncoder();
1010
static JsonDecoder decoder = new JsonDecoder();
11-
static Map<String, dynamic> parse(dynamic raw) {
11+
static Map<String, dynamic>? parse(dynamic raw) {
1212
var object;
1313
final message = Map<String, dynamic>();
1414

lib/src/peer.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ class Peer extends EnhancedEventEmitter {
2323
var _sents = Map<String, dynamic>();
2424

2525
// Transport.
26-
TransportInterface _transport;
26+
late TransportInterface _transport;
2727

2828
Peer(TransportInterface transport) {
2929
_transport = transport;

lib/src/transports/NativeTransport.dart

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,12 @@ import 'TransportInterface.dart';
88
final _logger = Logger('Logger::NativeTransport');
99

1010
class Transport extends TransportInterface {
11-
bool _closed;
12-
String _url;
13-
dynamic _options;
14-
WebSocket _ws;
11+
late bool _closed;
12+
late String _url;
13+
late dynamic _options;
14+
WebSocket? _ws;
1515

16-
Transport(String url, {dynamic options})
17-
: super(url, options: options) {
16+
Transport(String url, {dynamic options}) : super(url, options: options) {
1817
_logger.debug('constructor() [url:$url, options:$options]');
1918
this._closed = false;
2019
this._url = url;
@@ -34,7 +33,7 @@ class Transport extends TransportInterface {
3433
this.safeEmit('close');
3534

3635
try {
37-
this._ws.close();
36+
this._ws?.close();
3837
} catch (error) {
3938
_logger.error('close() | error closing the WebSocket: $error');
4039
}
@@ -43,7 +42,7 @@ class Transport extends TransportInterface {
4342
@override
4443
Future send(message) async {
4544
try {
46-
this._ws.add(jsonEncode(message));
45+
this._ws?.add(jsonEncode(message));
4746
} catch (error) {
4847
_logger.warn('send() failed:$error');
4948
}
@@ -68,7 +67,7 @@ class Transport extends TransportInterface {
6867

6968
_runWebSocket() async {
7069
WebSocket.connect(this._url, protocols: ['protoo']).then((ws) {
71-
if (ws?.readyState == WebSocket.open) {
70+
if (ws.readyState == WebSocket.open) {
7271
this._ws = ws;
7372
_onOpen();
7473

lib/src/transports/WebTransport.dart

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@ import 'TransportInterface.dart';
88
final _logger = Logger('Logger::WebTransport');
99

1010
class Transport extends TransportInterface {
11-
bool _closed;
12-
String _url;
13-
dynamic _options;
14-
WebSocket _ws;
11+
late bool _closed;
12+
late String _url;
13+
late dynamic _options;
14+
WebSocket? _ws;
1515

1616
Transport(String url, {dynamic options}) : super(url, options: options) {
1717
_logger.debug('constructor() [url:$url, options:$options]');
@@ -33,7 +33,7 @@ class Transport extends TransportInterface {
3333
this.safeEmit('close');
3434

3535
try {
36-
this._ws.close();
36+
this._ws?.close();
3737
} catch (error) {
3838
_logger.error('close() | error closing the WebSocket: $error');
3939
}
@@ -42,32 +42,32 @@ class Transport extends TransportInterface {
4242
@override
4343
Future send(message) async {
4444
try {
45-
this._ws.send(jsonEncode(message));
45+
this._ws?.send(jsonEncode(message));
4646
} catch (error) {
4747
_logger.warn('send() failed:$error');
4848
}
4949
}
5050

5151
_runWebSocket() {
5252
this._ws = new WebSocket(this._url, 'protoo');
53-
this._ws.onOpen.listen((e) {
53+
this._ws?.onOpen.listen((e) {
5454
_logger.debug('onOpen');
5555
this.safeEmit('open');
5656
});
5757

58-
this._ws.onClose.listen((e) {
58+
this._ws?.onClose.listen((e) {
5959
_logger.warn(
6060
'WebSocket "close" event [wasClean:${e.wasClean}, code:${e.code}, reason:"${e.reason}"]');
6161
this._closed = true;
6262

6363
this.safeEmit('close');
6464
});
6565

66-
this._ws.onError.listen((e) {
66+
this._ws?.onError.listen((e) {
6767
_logger.error('WebSocket "error" event');
6868
});
6969

70-
this._ws.onMessage.listen((e) {
70+
this._ws?.onMessage.listen((e) {
7171
final message = Message.parse(e.data);
7272

7373
if (message == null) return;

pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ version: 0.3.0
33
description: Dart version of the protoo-client library.
44
homepage: https://github.com/cloudwebrtc/dart-protoo-client
55
environment:
6-
sdk: ">=2.7.0 <3.0.0"
6+
sdk: ">=2.12.0 <3.0.0"
77

88
dependencies:
99
events2: ^1.0.0

0 commit comments

Comments
 (0)