mapEventToState method

  1. @override
Stream<BoraPushState> mapEventToState(
  1. BoraPushEvent event
)

Implementation

@override
Stream<BoraPushState> mapEventToState(BoraPushEvent event) async* {
  if (event is ConnectEvent) {
    try {
      _pushClient = BoraPushClient.connect(
        uri: event.uri,
        withCredentials: event.withCredentials,
        closeOnError: event.closeOnError,
      );

      yield ConnectedState(_pushClient.stream);
    } catch (e) {
      yield ErrorState('Failed to connect: $e');
    }
  } else if (event is CloseEvent) {
    _pushClient.close();
    yield ClosedState();
  }
}