From 2e4cfa6a266bdb982369e1d64e26c685b63eb71c Mon Sep 17 00:00:00 2001 From: andrii0lomakin Date: Wed, 11 Sep 2024 16:45:35 +0200 Subject: [PATCH] OEntity#resetToNew method was added. --- .../kotlin/jetbrains/exodus/entitystore/orientdb/OEntity.kt | 2 ++ .../exodus/entitystore/orientdb/OReadonlyVertexEntity.kt | 4 ++++ .../jetbrains/exodus/entitystore/orientdb/OVertexEntity.kt | 4 ++++ 3 files changed, 10 insertions(+) diff --git a/entity-store/src/main/kotlin/jetbrains/exodus/entitystore/orientdb/OEntity.kt b/entity-store/src/main/kotlin/jetbrains/exodus/entitystore/orientdb/OEntity.kt index 98c498a2d..f698ad967 100644 --- a/entity-store/src/main/kotlin/jetbrains/exodus/entitystore/orientdb/OEntity.kt +++ b/entity-store/src/main/kotlin/jetbrains/exodus/entitystore/orientdb/OEntity.kt @@ -22,4 +22,6 @@ interface OEntity : Entity { override fun getId(): OEntityId fun save(): OEntity + + fun resetToNew() } diff --git a/entity-store/src/main/kotlin/jetbrains/exodus/entitystore/orientdb/OReadonlyVertexEntity.kt b/entity-store/src/main/kotlin/jetbrains/exodus/entitystore/orientdb/OReadonlyVertexEntity.kt index 0bc6ec1eb..5079256e0 100644 --- a/entity-store/src/main/kotlin/jetbrains/exodus/entitystore/orientdb/OReadonlyVertexEntity.kt +++ b/entity-store/src/main/kotlin/jetbrains/exodus/entitystore/orientdb/OReadonlyVertexEntity.kt @@ -21,5 +21,9 @@ class OReadonlyVertexEntity(vertex: OVertex, store: OEntityStore) : OVertexEntit override fun requireActiveWritableTransaction(): OStoreTransaction { throw IllegalArgumentException("Can't update readonly entity (id=${id})") } + + override fun resetToNew() { + throw UnsupportedOperationException("Not supported in readonly entity") + } } diff --git a/entity-store/src/main/kotlin/jetbrains/exodus/entitystore/orientdb/OVertexEntity.kt b/entity-store/src/main/kotlin/jetbrains/exodus/entitystore/orientdb/OVertexEntity.kt index 62c31aa74..e8119051a 100644 --- a/entity-store/src/main/kotlin/jetbrains/exodus/entitystore/orientdb/OVertexEntity.kt +++ b/entity-store/src/main/kotlin/jetbrains/exodus/entitystore/orientdb/OVertexEntity.kt @@ -89,6 +89,10 @@ open class OVertexEntity(internal val vertex: OVertex, private val store: OEntit return true } + override fun resetToNew() { + vertex.resetToNew() + } + private fun requireActiveTx(): OStoreTransaction { return store.requireActiveTransaction() }