in dnq-transient-store/src/main/kotlin/jetbrains/exodus/entitystore/TransientChangesMultiplexer.kt [83:95]
override fun addListener(e: Entity, listener: IEntityListener<*>) {
if ((e as TransientEntity).isNew) {
throw IllegalStateException("Entity is not saved into database - you can't listen to it.")
}
val id = FullEntityId(e.store, e.getId())
rwl.write {
if (isOpen) {
instanceToListeners
.getOrPut(id) { ConcurrentLinkedQueue() }
.add(listener)
}
}
}