override fun hasChangesExcepting()

in dnq-transient-store/src/main/kotlin/com/jetbrains/teamsys/dnq/database/TransientEntityImpl.kt [274:287]


    override fun hasChangesExcepting(properties: Array<String>): Boolean {
        val session = threadSessionOrThrow
        val changedLinks = session.transientChangesTracker.getChangedLinksDetailed(this).orEmpty()
        val changedProperties = session.transientChangesTracker.getChangedProperties(this).orEmpty()

        return if (changedLinks.isEmpty() && changedProperties.isEmpty()) {
            false
        } else {
            // all properties have to be changed
            val exceptedChanges = properties.count { it in changedLinks || it in changedProperties }
            val totalChanges = changedLinks.size + changedProperties.size
            totalChanges > exceptedChanges
        }
    }