Source
void updateFromBase(List updates) { for (List data in updates) { if (data[0] is LocalNode) { LocalNode node = data[0]; if (data[1] == '+') { if (!subscriptions.containsKey(node.path)) { subscriptions[node.path] = new _QuerySubscription(this, node); } else { subscriptions[node.path].removed = false; } } else if (data[1] == '-') { if (subscriptions.containsKey(node.path)) { subscriptions[node.path].removed = true; updatePath(node.path); } } } } }