StateSubscription<T extends GeneratedMessage>.of constructor
StateSubscription<T extends GeneratedMessage>.of (
- FirebaseSubscription firebaseSubscription,
- BuilderInfo builderInfoForType,
- FirebaseClient database
Creates a new instance which broadcasts updates from under the given Firebase node.
Implementation
factory StateSubscription.of(FirebaseSubscription firebaseSubscription,
BuilderInfo builderInfoForType,
FirebaseClient database) {
var subscription = firebaseSubscription.subscription;
var nodePath = firebaseSubscription.nodePath.value;
var itemAdded = database
.childAdded(nodePath)
.map((json) => parseIntoNewInstance<T>(builderInfoForType, json));
var itemChanged = database
.childChanged(nodePath)
.map((json) => parseIntoNewInstance<T>(builderInfoForType, json));
var itemRemoved = database.childRemoved(nodePath)
.map((json) => parseIntoNewInstance<T>(builderInfoForType, json));
return StateSubscription._(subscription, itemAdded, itemChanged, itemRemoved);
}