onParam<T> method

  1. @protected
Stream<T> onParam<T>(
  1. Comparable key
)

Subscribe to a series of param by key.

Implementation

@protected
Stream<T> onParam<T>(Comparable key) {
  final sc = StreamController<T>();
  sc
    ..onListen = () {
      paramStreamCtrls[key] ??= <StreamController<dynamic>>{};
      paramStreamCtrls[key]?.add(sc);
      // sink lastest value.
      final value = getParam<T>(key);
      if (value != null) {
        sc.add(value);
      }
    }
    ..onCancel = () {
      paramStreamCtrls[key]?.remove(sc);
    };
  return sc.stream;
}