From 23d58d42ee4485e7d6bbb07b286dbde481261dbb Mon Sep 17 00:00:00 2001 From: InsanusMokrassar Date: Tue, 27 Jan 2026 16:19:43 +0600 Subject: [PATCH] make it buildable --- .../exposed/AbstractExposedReadCRUDRepo.kt | 4 ++-- .../exposed/AbstractExposedWriteCRUDRepo.kt | 15 ++++++++----- .../repos/exposed/ColumnAllocator.kt | 4 ++-- .../repos/exposed/ColumnEqOrNull.kt | 10 ++++----- .../repos/exposed/CommonExposedRepo.kt | 8 ++++--- .../repos/exposed/ExposedCRUDRepo.kt | 2 -- .../micro_utils/repos/exposed/ExposedRepo.kt | 6 ++++- .../exposed/ExposedTableInitialization.kt | 22 +++++++++++-------- .../keyvalue/AbstractExposedKeyValueRepo.kt | 15 ++++++++----- .../AbstractExposedReadKeyValueRepo.kt | 10 ++++++--- .../exposed/keyvalue/ExposedKeyValueRepo.kt | 13 ++++++----- .../keyvalue/ExposedReadKeyValueRepo.kt | 16 +++++++------- .../onetomany/AbstractExposedKeyValuesRepo.kt | 16 +++++++++----- .../AbstractExposedReadKeyValuesRepo.kt | 12 +++++++--- .../exposed/onetomany/ExposedKeyValuesRepo.kt | 15 ++++++++----- .../onetomany/ExposedReadKeyValuesRepo.kt | 10 ++++++--- .../repos/exposed/utils/PaginatedSelect.kt | 5 ++++- .../ExposedStandardVersionsRepoProxy.kt | 8 +++++-- repos/exposed/src/jvmTest/kotlin/Database.kt | 4 ++-- .../jvmTest/kotlin/ExposedCRUDRepoTests.kt | 14 ++++++------ .../kotlin/ExposedKeyValueRepoTests.kt | 14 ++++++------ .../kotlin/ExposedKeyValuesRepoTests.kt | 14 ++++++------ 22 files changed, 142 insertions(+), 95 deletions(-) diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/AbstractExposedReadCRUDRepo.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/AbstractExposedReadCRUDRepo.kt index 86585fac4d6..0bd28978fea 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/AbstractExposedReadCRUDRepo.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/AbstractExposedReadCRUDRepo.kt @@ -2,8 +2,8 @@ package dev.inmo.micro_utils.repos.exposed import dev.inmo.micro_utils.pagination.* import dev.inmo.micro_utils.repos.ReadCRUDRepo -import org.jetbrains.exposed.sql.* -import org.jetbrains.exposed.sql.transactions.transaction +import org.jetbrains.exposed.v1.core.Table +import org.jetbrains.exposed.v1.jdbc.transactions.transaction abstract class AbstractExposedReadCRUDRepo( tableName: String diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/AbstractExposedWriteCRUDRepo.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/AbstractExposedWriteCRUDRepo.kt index c1450e972f3..386e13395c0 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/AbstractExposedWriteCRUDRepo.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/AbstractExposedWriteCRUDRepo.kt @@ -4,9 +4,12 @@ import dev.inmo.micro_utils.repos.UpdatedValuePair import dev.inmo.micro_utils.repos.WriteCRUDRepo import kotlinx.coroutines.channels.BufferOverflow import kotlinx.coroutines.flow.* -import org.jetbrains.exposed.sql.* -import org.jetbrains.exposed.sql.statements.* -import org.jetbrains.exposed.sql.transactions.transaction +import org.jetbrains.exposed.v1.core.statements.InsertStatement +import org.jetbrains.exposed.v1.core.statements.UpdateBuilder +import org.jetbrains.exposed.v1.jdbc.deleteWhere +import org.jetbrains.exposed.v1.jdbc.insert +import org.jetbrains.exposed.v1.jdbc.transactions.transaction +import org.jetbrains.exposed.v1.jdbc.update import java.util.Objects abstract class AbstractExposedWriteCRUDRepo( @@ -93,7 +96,7 @@ abstract class AbstractExposedWriteCRUDRepo( return transaction(db = database) { update( { - selectById(this, id) + selectById( id) } ) { update(id, value, it as UpdateBuilder) @@ -102,7 +105,7 @@ abstract class AbstractExposedWriteCRUDRepo( if (it > 0) { transaction(db = database) { selectAll().where { - selectById(this, id) + selectById(id) }.limit(1).firstOrNull() ?.asObject } } else { @@ -137,7 +140,7 @@ abstract class AbstractExposedWriteCRUDRepo( override suspend fun deleteById(ids: List) { onBeforeDelete(ids) transaction(db = database) { - val deleted = deleteWhere { selectByIds(it, ids) } + val deleted = deleteWhere { selectByIds(ids) } if (deleted == ids.size) { ids } else { diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ColumnAllocator.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ColumnAllocator.kt index 74bebd14606..dcc332ead1e 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ColumnAllocator.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ColumnAllocator.kt @@ -1,6 +1,6 @@ package dev.inmo.micro_utils.repos.exposed -import org.jetbrains.exposed.sql.Column -import org.jetbrains.exposed.sql.Table +import org.jetbrains.exposed.v1.core.Column +import org.jetbrains.exposed.v1.core.Table typealias ColumnAllocator = Table.() -> Column \ No newline at end of file diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ColumnEqOrNull.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ColumnEqOrNull.kt index 29bc98f6251..ab092ffdd3d 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ColumnEqOrNull.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ColumnEqOrNull.kt @@ -1,10 +1,10 @@ package dev.inmo.micro_utils.repos.exposed -import org.jetbrains.exposed.sql.Column -import org.jetbrains.exposed.sql.SqlExpressionBuilder.eq -import org.jetbrains.exposed.sql.SqlExpressionBuilder.isNotNull -import org.jetbrains.exposed.sql.SqlExpressionBuilder.isNull -import org.jetbrains.exposed.sql.SqlExpressionBuilder.neq +import org.jetbrains.exposed.v1.core.Column +import org.jetbrains.exposed.v1.core.eq +import org.jetbrains.exposed.v1.core.isNotNull +import org.jetbrains.exposed.v1.core.isNull +import org.jetbrains.exposed.v1.core.neq fun Column.eqOrIsNull( value: T? diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/CommonExposedRepo.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/CommonExposedRepo.kt index e4cad290308..5559b2a9ec7 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/CommonExposedRepo.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/CommonExposedRepo.kt @@ -1,12 +1,14 @@ package dev.inmo.micro_utils.repos.exposed -import org.jetbrains.exposed.sql.* +import org.jetbrains.exposed.v1.core.Op +import org.jetbrains.exposed.v1.core.ResultRow +import org.jetbrains.exposed.v1.core.or interface CommonExposedRepo : ExposedRepo { val ResultRow.asObject: ObjectType val ResultRow.asId: IdType - val selectById: ISqlExpressionBuilder.(IdType) -> Op - val selectByIds: ISqlExpressionBuilder.(List) -> Op + val selectById: (IdType) -> Op + val selectByIds: (List) -> Op get() = { if (it.isEmpty()) { Op.FALSE diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ExposedCRUDRepo.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ExposedCRUDRepo.kt index 258e62b7950..1ca95387328 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ExposedCRUDRepo.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ExposedCRUDRepo.kt @@ -1,5 +1,3 @@ package dev.inmo.micro_utils.repos.exposed -import org.jetbrains.exposed.sql.* - interface ExposedCRUDRepo : CommonExposedRepo diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ExposedRepo.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ExposedRepo.kt index 33705a71ef3..0e36da4d996 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ExposedRepo.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ExposedRepo.kt @@ -1,7 +1,11 @@ package dev.inmo.micro_utils.repos.exposed import dev.inmo.micro_utils.repos.Repo -import org.jetbrains.exposed.sql.* +import org.jetbrains.exposed.v1.core.FieldSet +import org.jetbrains.exposed.v1.core.Transaction +import org.jetbrains.exposed.v1.jdbc.Database +import org.jetbrains.exposed.v1.jdbc.Query +import org.jetbrains.exposed.v1.jdbc.selectAll interface ExposedRepo : Repo, FieldSet { val database: Database diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ExposedTableInitialization.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ExposedTableInitialization.kt index 5d7802338bf..425e0047e56 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ExposedTableInitialization.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/ExposedTableInitialization.kt @@ -1,11 +1,15 @@ package dev.inmo.micro_utils.repos.exposed -import org.jetbrains.exposed.sql.* -import org.jetbrains.exposed.sql.SchemaUtils.addMissingColumnsStatements -import org.jetbrains.exposed.sql.SchemaUtils.checkMappingConsistence -import org.jetbrains.exposed.sql.SchemaUtils.createStatements -import org.jetbrains.exposed.sql.transactions.TransactionManager -import org.jetbrains.exposed.sql.transactions.transaction +import org.jetbrains.exposed.v1.core.Table +import org.jetbrains.exposed.v1.core.Transaction +import org.jetbrains.exposed.v1.core.exposedLogger +import org.jetbrains.exposed.v1.jdbc.Database +import org.jetbrains.exposed.v1.jdbc.SchemaUtils +import org.jetbrains.exposed.v1.jdbc.SchemaUtils.addMissingColumnsStatements +import org.jetbrains.exposed.v1.jdbc.SchemaUtils.checkMappingConsistence +import org.jetbrains.exposed.v1.jdbc.transactions.TransactionManager +import org.jetbrains.exposed.v1.jdbc.transactions.transaction + /** * Code in this function mostly duplicates Exposed [SchemaUtils.createMissingTablesAndColumns]. It made due to deprecation @@ -41,9 +45,9 @@ fun initTablesInTransaction(vararg tables: Table, database: Database, inBatch: B } } with(TransactionManager.current()) { - db.dialect.resetCaches() + db.dialectMetadata.resetCaches() val createStatements = logTimeSpent("Preparing create tables statements", withLogs) { - createStatements(*tables) + SchemaUtils.createStatements(*tables) } logTimeSpent("Executing create tables statements", withLogs) { execStatements(inBatch, createStatements) @@ -66,7 +70,7 @@ fun initTablesInTransaction(vararg tables: Table, database: Database, inBatch: B execStatements(inBatch, modifyTablesStatements) commit() } - db.dialect.resetCaches() + db.dialectMetadata.resetCaches() } } } diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/keyvalue/AbstractExposedKeyValueRepo.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/keyvalue/AbstractExposedKeyValueRepo.kt index 74ca058b1ec..85e1d3f1f6c 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/keyvalue/AbstractExposedKeyValueRepo.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/keyvalue/AbstractExposedKeyValueRepo.kt @@ -3,9 +3,14 @@ package dev.inmo.micro_utils.repos.exposed.keyvalue import dev.inmo.micro_utils.repos.KeyValueRepo import kotlinx.coroutines.channels.BufferOverflow import kotlinx.coroutines.flow.* -import org.jetbrains.exposed.sql.* -import org.jetbrains.exposed.sql.statements.* -import org.jetbrains.exposed.sql.transactions.transaction +import kotlinx.coroutines.flow.update +import org.jetbrains.exposed.v1.core.statements.UpdateBuilder +import org.jetbrains.exposed.v1.jdbc.Database +import org.jetbrains.exposed.v1.jdbc.deleteAll +import org.jetbrains.exposed.v1.jdbc.deleteWhere +import org.jetbrains.exposed.v1.jdbc.update +import org.jetbrains.exposed.v1.jdbc.insert +import org.jetbrains.exposed.v1.jdbc.transactions.transaction abstract class AbstractExposedKeyValueRepo( override val database: Database, @@ -54,7 +59,7 @@ abstract class AbstractExposedKeyValueRepo( override suspend fun unset(toUnset: List) { transaction(database) { toUnset.mapNotNull { item -> - if (deleteWhere { selectById(it, item) } > 0) { + if (deleteWhere { selectById(item) } > 0) { item } else { null @@ -69,7 +74,7 @@ abstract class AbstractExposedKeyValueRepo( transaction(database) { toUnset.flatMap { val keys = selectAll().where { selectByValue(it) }.mapNotNull { it.asKey } - deleteWhere { selectByIds(it, keys) } + deleteWhere { selectByIds(keys) } keys } }.distinct().forEach { diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/keyvalue/AbstractExposedReadKeyValueRepo.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/keyvalue/AbstractExposedReadKeyValueRepo.kt index 6d8b11a9e9f..0ea45ae85e9 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/keyvalue/AbstractExposedReadKeyValueRepo.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/keyvalue/AbstractExposedReadKeyValueRepo.kt @@ -4,8 +4,12 @@ import dev.inmo.micro_utils.pagination.* import dev.inmo.micro_utils.repos.ReadKeyValueRepo import dev.inmo.micro_utils.repos.exposed.* import dev.inmo.micro_utils.repos.exposed.utils.selectPaginated -import org.jetbrains.exposed.sql.* -import org.jetbrains.exposed.sql.transactions.transaction +import org.jetbrains.exposed.v1.core.Column +import org.jetbrains.exposed.v1.core.Op +import org.jetbrains.exposed.v1.core.ResultRow +import org.jetbrains.exposed.v1.core.Table +import org.jetbrains.exposed.v1.jdbc.Database +import org.jetbrains.exposed.v1.jdbc.transactions.transaction abstract class AbstractExposedReadKeyValueRepo( override val database: Database, @@ -21,7 +25,7 @@ abstract class AbstractExposedReadKeyValueRepo( abstract val ResultRow.asKey: Key override val ResultRow.asId: Key get() = asKey - abstract val selectByValue: ISqlExpressionBuilder.(Value) -> Op + abstract val selectByValue: (Value) -> Op override suspend fun get(k: Key): Value? = transaction(database) { selectAll().where { selectById(k) }.limit(1).firstOrNull() ?.asObject diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/keyvalue/ExposedKeyValueRepo.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/keyvalue/ExposedKeyValueRepo.kt index 491d04a96d8..b1beb7dd9b2 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/keyvalue/ExposedKeyValueRepo.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/keyvalue/ExposedKeyValueRepo.kt @@ -4,11 +4,14 @@ import dev.inmo.micro_utils.repos.KeyValueRepo import dev.inmo.micro_utils.repos.exposed.ColumnAllocator import kotlinx.coroutines.channels.BufferOverflow import kotlinx.coroutines.flow.* -import org.jetbrains.exposed.sql.* -import org.jetbrains.exposed.sql.SqlExpressionBuilder.eq -import org.jetbrains.exposed.sql.SqlExpressionBuilder.inList -import org.jetbrains.exposed.sql.SqlExpressionBuilder.inSubQuery -import org.jetbrains.exposed.sql.transactions.transaction +import org.jetbrains.exposed.v1.core.eq +import org.jetbrains.exposed.v1.core.inList +import org.jetbrains.exposed.v1.jdbc.Database +import org.jetbrains.exposed.v1.jdbc.deleteAll +import org.jetbrains.exposed.v1.jdbc.deleteWhere +import org.jetbrains.exposed.v1.jdbc.insert +import org.jetbrains.exposed.v1.jdbc.transactions.transaction +import org.jetbrains.exposed.v1.jdbc.update open class ExposedKeyValueRepo( database: Database, diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/keyvalue/ExposedReadKeyValueRepo.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/keyvalue/ExposedReadKeyValueRepo.kt index 2c3b33a53ac..cf75a6d1449 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/keyvalue/ExposedReadKeyValueRepo.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/keyvalue/ExposedReadKeyValueRepo.kt @@ -1,13 +1,13 @@ package dev.inmo.micro_utils.repos.exposed.keyvalue -import dev.inmo.micro_utils.pagination.* import dev.inmo.micro_utils.repos.ReadKeyValueRepo import dev.inmo.micro_utils.repos.exposed.* -import dev.inmo.micro_utils.repos.exposed.utils.selectPaginated -import org.jetbrains.exposed.sql.* -import org.jetbrains.exposed.sql.statements.InsertStatement -import org.jetbrains.exposed.sql.statements.UpdateBuilder -import org.jetbrains.exposed.sql.transactions.transaction +import org.jetbrains.exposed.v1.core.Column +import org.jetbrains.exposed.v1.core.Op +import org.jetbrains.exposed.v1.core.ResultRow +import org.jetbrains.exposed.v1.core.Table +import org.jetbrains.exposed.v1.core.eq +import org.jetbrains.exposed.v1.jdbc.Database open class ExposedReadKeyValueRepo( database: Database, @@ -20,10 +20,10 @@ open class ExposedReadKeyValueRepo( val valueColumn: Column = valueColumnAllocator() override val ResultRow.asKey: Key get() = get(keyColumn) - override val selectByValue: ISqlExpressionBuilder.(Value) -> Op = { valueColumn.eq(it) } + override val selectByValue: (Value) -> Op = { valueColumn.eq(it) } override val ResultRow.asObject: Value get() = get(valueColumn) - override val selectById: ISqlExpressionBuilder.(Key) -> Op = { keyColumn.eq(it) } + override val selectById: (Key) -> Op = { keyColumn.eq(it) } override val primaryKey: Table.PrimaryKey get() = PrimaryKey(keyColumn, valueColumn) diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/onetomany/AbstractExposedKeyValuesRepo.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/onetomany/AbstractExposedKeyValuesRepo.kt index 50df2d107e6..e7fea9377ce 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/onetomany/AbstractExposedKeyValuesRepo.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/onetomany/AbstractExposedKeyValuesRepo.kt @@ -3,9 +3,13 @@ package dev.inmo.micro_utils.repos.exposed.onetomany import dev.inmo.micro_utils.repos.KeyValuesRepo import kotlinx.coroutines.channels.BufferOverflow import kotlinx.coroutines.flow.* -import org.jetbrains.exposed.sql.* -import org.jetbrains.exposed.sql.statements.UpdateBuilder -import org.jetbrains.exposed.sql.transactions.transaction +import org.jetbrains.exposed.v1.core.and +import org.jetbrains.exposed.v1.core.statements.UpdateBuilder +import org.jetbrains.exposed.v1.jdbc.Database +import org.jetbrains.exposed.v1.jdbc.batchInsert +import org.jetbrains.exposed.v1.jdbc.deleteWhere +import org.jetbrains.exposed.v1.jdbc.insert +import org.jetbrains.exposed.v1.jdbc.transactions.transaction abstract class AbstractExposedKeyValuesRepo( override val database: Database, @@ -60,7 +64,7 @@ abstract class AbstractExposedKeyValuesRepo( val oldObjects = selectAll().where { selectByIds(toSet.keys.toList()) }.map { it.asKey to it.asObject } deleteWhere { - selectByIds(it, toSet.keys.toList()) + selectByIds(toSet.keys.toList()) } val inserted = batchInsert( prepreparedData, @@ -104,7 +108,7 @@ abstract class AbstractExposedKeyValuesRepo( transaction(database) { toRemove.keys.flatMap { k -> toRemove[k] ?.mapNotNull { v -> - if (deleteWhere { selectById(it, k).and(SqlExpressionBuilder.selectByValue(v)) } > 0 ) { + if (deleteWhere { selectById(k).and(selectByValue(v)) } > 0 ) { k to v } else { null @@ -118,7 +122,7 @@ abstract class AbstractExposedKeyValuesRepo( override suspend fun clear(k: Key) { transaction(database) { - deleteWhere { selectById(it, k) } + deleteWhere { selectById(k) } }.also { _onDataCleared.emit(k) } } } diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/onetomany/AbstractExposedReadKeyValuesRepo.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/onetomany/AbstractExposedReadKeyValuesRepo.kt index 95563e43724..6404b547ede 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/onetomany/AbstractExposedReadKeyValuesRepo.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/onetomany/AbstractExposedReadKeyValuesRepo.kt @@ -4,8 +4,14 @@ import dev.inmo.micro_utils.pagination.* import dev.inmo.micro_utils.repos.ReadKeyValuesRepo import dev.inmo.micro_utils.repos.exposed.* import dev.inmo.micro_utils.repos.exposed.utils.selectPaginated -import org.jetbrains.exposed.sql.* -import org.jetbrains.exposed.sql.transactions.transaction +import org.jetbrains.exposed.v1.core.Column +import org.jetbrains.exposed.v1.core.Op +import org.jetbrains.exposed.v1.core.ResultRow +import org.jetbrains.exposed.v1.core.SortOrder +import org.jetbrains.exposed.v1.core.Table +import org.jetbrains.exposed.v1.core.and +import org.jetbrains.exposed.v1.jdbc.Database +import org.jetbrains.exposed.v1.jdbc.transactions.transaction abstract class AbstractExposedReadKeyValuesRepo( override val database: Database, @@ -17,7 +23,7 @@ abstract class AbstractExposedReadKeyValuesRepo( abstract val ResultRow.asKey: Key override val ResultRow.asId: Key get() = asKey - abstract val selectByValue: ISqlExpressionBuilder.(Value) -> Op + abstract val selectByValue: (Value) -> Op override suspend fun count(k: Key): Long = transaction(database) { selectAll().where { selectById(k) }.count() } diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/onetomany/ExposedKeyValuesRepo.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/onetomany/ExposedKeyValuesRepo.kt index da7a46cde7b..b21838c9a05 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/onetomany/ExposedKeyValuesRepo.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/onetomany/ExposedKeyValuesRepo.kt @@ -4,10 +4,13 @@ import dev.inmo.micro_utils.repos.KeyValuesRepo import dev.inmo.micro_utils.repos.exposed.ColumnAllocator import kotlinx.coroutines.channels.BufferOverflow import kotlinx.coroutines.flow.* -import org.jetbrains.exposed.sql.* -import org.jetbrains.exposed.sql.SqlExpressionBuilder.eq -import org.jetbrains.exposed.sql.SqlExpressionBuilder.inList -import org.jetbrains.exposed.sql.transactions.transaction +import org.jetbrains.exposed.v1.core.and +import org.jetbrains.exposed.v1.core.eq +import org.jetbrains.exposed.v1.core.inList +import org.jetbrains.exposed.v1.jdbc.Database +import org.jetbrains.exposed.v1.jdbc.deleteWhere +import org.jetbrains.exposed.v1.jdbc.insert +import org.jetbrains.exposed.v1.jdbc.transactions.transaction typealias ExposedOneToManyKeyValueRepo1 = ExposedKeyValuesRepo open class ExposedKeyValuesRepo( @@ -34,7 +37,7 @@ open class ExposedKeyValuesRepo( get() = _onDataCleared override suspend fun add(toAdd: Map>) { - transaction(database) { + transaction (database) { toAdd.keys.flatMap { k -> toAdd[k] ?.mapNotNull { v -> if (selectAll().where { keyColumn.eq(k).and(valueColumn.eq(v)) }.limit(1).count() > 0) { @@ -73,7 +76,7 @@ open class ExposedKeyValuesRepo( override suspend fun removeWithValue(v: Value) { transaction(database) { val keys = selectAll().where { selectByValue(v) }.map { it.asKey } - deleteWhere { SqlExpressionBuilder.selectByValue(v) } + deleteWhere { selectByValue(v) } keys }.forEach { _onValueRemoved.emit(it to v) diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/onetomany/ExposedReadKeyValuesRepo.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/onetomany/ExposedReadKeyValuesRepo.kt index 2efcaf6880c..b4af1afdc64 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/onetomany/ExposedReadKeyValuesRepo.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/onetomany/ExposedReadKeyValuesRepo.kt @@ -2,7 +2,11 @@ package dev.inmo.micro_utils.repos.exposed.onetomany import dev.inmo.micro_utils.repos.ReadKeyValuesRepo import dev.inmo.micro_utils.repos.exposed.* -import org.jetbrains.exposed.sql.* +import org.jetbrains.exposed.v1.core.Column +import org.jetbrains.exposed.v1.core.Op +import org.jetbrains.exposed.v1.core.ResultRow +import org.jetbrains.exposed.v1.core.eq +import org.jetbrains.exposed.v1.jdbc.Database typealias ExposedReadOneToManyKeyValueRepo = ExposedReadKeyValuesRepo @@ -15,10 +19,10 @@ open class ExposedReadKeyValuesRepo( override val keyColumn: Column = keyColumnAllocator() override val ResultRow.asKey: Key get() = get(keyColumn) - override val selectByValue: ISqlExpressionBuilder.(Value) -> Op = { valueColumn.eq(it) } + override val selectByValue: (Value) -> Op = { valueColumn.eq(it) } override val ResultRow.asObject: Value get() = get(valueColumn) - override val selectById: ISqlExpressionBuilder.(Key) -> Op = { keyColumn.eq(it) } + override val selectById: (Key) -> Op = { keyColumn.eq(it) } val valueColumn: Column = valueColumnAllocator() init { initTable() } diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/utils/PaginatedSelect.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/utils/PaginatedSelect.kt index a1a327e4e07..4bbb026c8f3 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/utils/PaginatedSelect.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/utils/PaginatedSelect.kt @@ -1,7 +1,10 @@ package dev.inmo.micro_utils.repos.exposed.utils import dev.inmo.micro_utils.pagination.* -import org.jetbrains.exposed.sql.* +import org.jetbrains.exposed.v1.core.Expression +import org.jetbrains.exposed.v1.core.ResultRow +import org.jetbrains.exposed.v1.core.SortOrder +import org.jetbrains.exposed.v1.jdbc.Query fun Query.selectPaginated( pagination: Pagination, diff --git a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/versions/ExposedStandardVersionsRepoProxy.kt b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/versions/ExposedStandardVersionsRepoProxy.kt index e193eb4a0f7..5e90ee57df2 100644 --- a/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/versions/ExposedStandardVersionsRepoProxy.kt +++ b/repos/exposed/src/jvmMain/kotlin/dev/inmo/micro_utils/repos/exposed/versions/ExposedStandardVersionsRepoProxy.kt @@ -3,8 +3,12 @@ package dev.inmo.micro_utils.repos.exposed.versions import dev.inmo.micro_utils.repos.exposed.ExposedRepo import dev.inmo.micro_utils.repos.exposed.initTable import dev.inmo.micro_utils.repos.versions.* -import org.jetbrains.exposed.sql.* -import org.jetbrains.exposed.sql.transactions.transaction +import org.jetbrains.exposed.v1.core.Table +import org.jetbrains.exposed.v1.core.eq +import org.jetbrains.exposed.v1.jdbc.Database +import org.jetbrains.exposed.v1.jdbc.insert +import org.jetbrains.exposed.v1.jdbc.transactions.transaction +import org.jetbrains.exposed.v1.jdbc.update /** * Use this method to create [StandardVersionsRepo] based on [Database] with [ExposedStandardVersionsRepoProxy] as diff --git a/repos/exposed/src/jvmTest/kotlin/Database.kt b/repos/exposed/src/jvmTest/kotlin/Database.kt index 6a7c2edfb75..7e4f198cfe1 100644 --- a/repos/exposed/src/jvmTest/kotlin/Database.kt +++ b/repos/exposed/src/jvmTest/kotlin/Database.kt @@ -1,8 +1,8 @@ package full import com.benasher44.uuid.uuid4 -import org.jetbrains.exposed.sql.Database -import org.jetbrains.exposed.sql.transactions.transactionManager +import org.jetbrains.exposed.v1.jdbc.Database +import org.jetbrains.exposed.v1.jdbc.transactions.transactionManager import org.sqlite.JDBC import java.io.File import java.sql.Connection diff --git a/repos/exposed/src/jvmTest/kotlin/ExposedCRUDRepoTests.kt b/repos/exposed/src/jvmTest/kotlin/ExposedCRUDRepoTests.kt index 430bbcd0994..b88c5c4bbe6 100644 --- a/repos/exposed/src/jvmTest/kotlin/ExposedCRUDRepoTests.kt +++ b/repos/exposed/src/jvmTest/kotlin/ExposedCRUDRepoTests.kt @@ -5,12 +5,12 @@ import dev.inmo.micro_utils.repos.CRUDRepo import dev.inmo.micro_utils.repos.common.tests.CommonCRUDRepoTests import dev.inmo.micro_utils.repos.exposed.AbstractExposedCRUDRepo import dev.inmo.micro_utils.repos.exposed.initTable -import org.jetbrains.exposed.sql.Database -import org.jetbrains.exposed.sql.ISqlExpressionBuilder -import org.jetbrains.exposed.sql.Op -import org.jetbrains.exposed.sql.ResultRow -import org.jetbrains.exposed.sql.statements.InsertStatement -import org.jetbrains.exposed.sql.statements.UpdateBuilder +import org.jetbrains.exposed.v1.core.Op +import org.jetbrains.exposed.v1.core.ResultRow +import org.jetbrains.exposed.v1.core.eq +import org.jetbrains.exposed.v1.core.statements.InsertStatement +import org.jetbrains.exposed.v1.core.statements.UpdateBuilder +import org.jetbrains.exposed.v1.jdbc.Database import java.io.File import kotlin.test.AfterTest import kotlin.test.BeforeTest @@ -29,7 +29,7 @@ class ExposedCRUDRepoTests : CommonCRUDRepoTests() { asId, get(dataColumn) ) - override val selectById: ISqlExpressionBuilder.(String) -> Op = { idColumn.eq(it) } + override val selectById: (String) -> Op = { idColumn.eq(it) } init { initTable() diff --git a/repos/exposed/src/jvmTest/kotlin/ExposedKeyValueRepoTests.kt b/repos/exposed/src/jvmTest/kotlin/ExposedKeyValueRepoTests.kt index 7c325d90c61..d743e3d8aa1 100644 --- a/repos/exposed/src/jvmTest/kotlin/ExposedKeyValueRepoTests.kt +++ b/repos/exposed/src/jvmTest/kotlin/ExposedKeyValueRepoTests.kt @@ -4,11 +4,11 @@ import dev.inmo.micro_utils.repos.KeyValueRepo import dev.inmo.micro_utils.repos.common.tests.CommonKeyValueRepoTests import dev.inmo.micro_utils.repos.exposed.initTable import dev.inmo.micro_utils.repos.exposed.keyvalue.AbstractExposedKeyValueRepo -import org.jetbrains.exposed.sql.Database -import org.jetbrains.exposed.sql.ISqlExpressionBuilder -import org.jetbrains.exposed.sql.Op -import org.jetbrains.exposed.sql.ResultRow -import org.jetbrains.exposed.sql.statements.UpdateBuilder +import org.jetbrains.exposed.v1.core.Op +import org.jetbrains.exposed.v1.core.ResultRow +import org.jetbrains.exposed.v1.core.eq +import org.jetbrains.exposed.v1.core.statements.UpdateBuilder +import org.jetbrains.exposed.v1.jdbc.Database import java.io.File import kotlin.test.AfterTest import kotlin.test.BeforeTest @@ -22,10 +22,10 @@ class ExposedKeyValueRepoTests : CommonKeyValueRepoTests() { override val ResultRow.asKey: String get() = get(keyColumn) - override val selectByValue: ISqlExpressionBuilder.(String) -> Op = { dataColumn.eq(it) } + override val selectByValue: (String) -> Op = { dataColumn.eq(it) } override val ResultRow.asObject: String get() = get(dataColumn) - override val selectById: ISqlExpressionBuilder.(String) -> Op = { keyColumn.eq(it) } + override val selectById: (String) -> Op = { keyColumn.eq(it) } init { initTable() diff --git a/repos/exposed/src/jvmTest/kotlin/ExposedKeyValuesRepoTests.kt b/repos/exposed/src/jvmTest/kotlin/ExposedKeyValuesRepoTests.kt index 9bafab6fa5c..7fd9d79118f 100644 --- a/repos/exposed/src/jvmTest/kotlin/ExposedKeyValuesRepoTests.kt +++ b/repos/exposed/src/jvmTest/kotlin/ExposedKeyValuesRepoTests.kt @@ -4,11 +4,11 @@ import dev.inmo.micro_utils.repos.KeyValuesRepo import dev.inmo.micro_utils.repos.common.tests.CommonKeyValuesRepoTests import dev.inmo.micro_utils.repos.exposed.initTable import dev.inmo.micro_utils.repos.exposed.onetomany.AbstractExposedKeyValuesRepo -import org.jetbrains.exposed.sql.Database -import org.jetbrains.exposed.sql.ISqlExpressionBuilder -import org.jetbrains.exposed.sql.Op -import org.jetbrains.exposed.sql.ResultRow -import org.jetbrains.exposed.sql.statements.UpdateBuilder +import org.jetbrains.exposed.v1.core.Op +import org.jetbrains.exposed.v1.core.ResultRow +import org.jetbrains.exposed.v1.core.eq +import org.jetbrains.exposed.v1.core.statements.UpdateBuilder +import org.jetbrains.exposed.v1.jdbc.Database import java.io.File import kotlin.test.AfterTest import kotlin.test.BeforeTest @@ -22,10 +22,10 @@ class ExposedKeyValuesRepoTests : CommonKeyValuesRepoTests() { override val ResultRow.asKey: String get() = get(keyColumn) - override val selectByValue: ISqlExpressionBuilder.(String) -> Op = { dataColumn.eq(it) } + override val selectByValue: (String) -> Op = { dataColumn.eq(it) } override val ResultRow.asObject: String get() = get(dataColumn) - override val selectById: ISqlExpressionBuilder.(String) -> Op = { keyColumn.eq(it) } + override val selectById: (String) -> Op = { keyColumn.eq(it) } init { initTable()