initialize method

  1. @override
  2. @mustCallSuper
Future<void> initialize(
  1. DataEndPoint dataEndPoint,
  2. MasterDeviceDeployment deployment,
  3. Stream<DataPoint> data
)
override

Initialize the data manager by specifying the dataEndPoint, study deployment, and the stream of data events to handle.

Implementation

@override
@mustCallSuper
Future<void> initialize(
  DataEndPoint dataEndPoint,
  MasterDeviceDeployment deployment,
  Stream<DataPoint> data,
) async {
  assert(deployment is SmartphoneDeployment,
      'Deployment must be a SmartphoneDeployment');

  info('Initializing $runtimeType...');
  _deployment = deployment as SmartphoneDeployment;
  _dataEndPoint = dataEndPoint;

  _subscription = data.listen(
    (dataPoint) => onDataPoint(dataPoint),
    onError: onError,
    onDone: onDone,
  );

  // TODO - remove...
  events.listen((event) => debug('$runtimeType - $event'));
  addEvent(DataManagerEvent(DataManagerEventTypes.INITIALIZED));
}