Package-level declarations

Types

Link copied to clipboard
class BatchEngine(session: CqlSession, statementBuilder: StatementBuilder, scope: CoroutineScope, eventListener: KandraEventListener? = null, retryConfig: RetryConfig = RetryConfig(), debugConfig: DebugConfig = DebugConfig(), codec: KandraCodec = KandraCodec.default)

Executes save, update, delete, and saveAll operations using LOGGED batch statements.

Link copied to clipboard

Default consistency levels applied to all operations.

Link copied to clipboard

Query debug and observability settings.

Link copied to clipboard

DSL scope for building a caller-controlled LOGGED batch inside KandraRuntime.batch (suspend).

Link copied to clipboard

DSL scope for building a caller-controlled LOGGED batch inside KandraRuntime.batchBlocking (non-suspend). See KandraBatchScope's class doc for the naming rationale and the GH #99 / ISS-086 reasoning behind keeping this a distinct type rather than sharing one scope class with both overload sets.

Link copied to clipboard
class KandraRuntime(val session: CqlSession, val batchEngine: BatchEngine, val codec: KandraCodec)

Entry point for all Kandra operations. Obtained from application.kandra in Ktor routes.

Link copied to clipboard
class QueryExecutor(session: CqlSession, schema: TableSchema, statementBuilder: StatementBuilder, codec: KandraCodec = KandraCodec.default, debugConfig: DebugConfig = DebugConfig(), maxUnpagedResultRows: Int)

Translates QueryContext predicates into CQL SELECT statements and decodes results.

Link copied to clipboard

Retry policy for transient ScyllaDB failures.

Link copied to clipboard
class StatementBuilder(session: CqlSession, codec: KandraCodec = KandraCodec.default, debugConfig: DebugConfig = DebugConfig(), consistencyConfig: ConsistencyConfig = ConsistencyConfig(), cacheSize: Int = 1000)

Builds BoundStatement instances for all CRUD operations.