}
private void putAndFireEvent(String key, JsonArray newValue, String sessionId, String userId) {
assert null != newValue;
Object newObject = JsonSerializer.deserializeObject(newValue, model.objects);
ValueChangedEvent event =
new ValueChangedEventImpl(event(sessionId, userId).set("property", key).set("oldValue",
get(key)).set("newValue", newObject));
if (snapshot.has(key)) {
JsonArray oldValue = snapshot.getArray(key);
model.addOrRemoveParent(oldValue, id, false);