subscribe method Null safety

void subscribe(
  1. Observer observer,
  2. List<String> events
)

Subscribes an observer to a provided array of event types. The observable will hold a strong reference to an observer instance, therefore, in order to stop receiving notifications, caller must call unsubscribe with an observer instance used for an initial subscription.

Implementation

void subscribe(Observer observer, List<String> events) {
  events.forEach((element) {
    _mapboxMapsPlatform.addEventListener(element);
    if (_observersMap[element] == null) {
      // Haven't subscribed this event
      _observersMap[element] = [observer];
    } else {
      // Have subscribed this event, just add observer to ths list
      _observersMap[element]!.add(observer);
    }
  });
  _mapboxMapsPlatform.observers.add((argument) {
    // Notify all the observers registered with this event.
    _observersMap[argument.type]?.forEach((element) {
      element(argument);
    });
  });
}