put method

  1. @override
VoidCallback put(
  1. TTPut request, [
  2. dynamic _,
  3. dynamic __
])
override

Send graph data for one or more nodes

@returns A function to be called to clean up callback listeners

Implementation

@override
VoidCallback put(TTPut request, [dynamic _, dynamic __]) {
  _store
      .writeGraph(request.graph)
      .then((node) => TTMsg(
          key: generateMessageId(),
          pos: request.msgId ?? '',
          err: null,
          ok: true))
      .catchError((err) {
    assert(() {
      // ignore: avoid_print
      print(err);
      return true;
    }());

    return TTMsg(
        key: generateMessageId(),
        pos: request.msgId ?? '',
        err: 'Error saving put',
        ok: false);
  }).then((msg) {
    ingest([msg]);
    if (!isNull(request.cb)) {
      request.cb!(msg);
    }
  });

  return noop;
}