Class R2dbcDatabase

java.lang.Object
ru.tinkoff.kora.database.r2dbc.R2dbcDatabase
All Implemented Interfaces:
ru.tinkoff.kora.application.graph.Lifecycle, R2dbcConnectionFactory

public class R2dbcDatabase extends Object implements R2dbcConnectionFactory, ru.tinkoff.kora.application.graph.Lifecycle
  • Constructor Summary

    Constructors
    Constructor
    Description
    R2dbcDatabase(R2dbcDatabaseConfig config, List<Function<io.r2dbc.spi.ConnectionFactoryOptions.Builder,io.r2dbc.spi.ConnectionFactoryOptions.Builder>> customizers, ru.tinkoff.kora.database.common.telemetry.DataBaseTelemetryFactory telemetryFactory)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    reactor.core.publisher.Mono<io.r2dbc.spi.Connection>
     
    reactor.core.publisher.Mono<Void>
     
    <T> reactor.core.publisher.Mono<T>
    inTx(Function<io.r2dbc.spi.Connection,reactor.core.publisher.Mono<T>> callback)
     
    reactor.core.publisher.Mono<io.r2dbc.spi.Connection>
     
    reactor.core.publisher.Mono<Void>
     
    ru.tinkoff.kora.database.common.telemetry.DataBaseTelemetry
     
    <T> reactor.core.publisher.Mono<T>
    withConnection(Function<io.r2dbc.spi.Connection,reactor.core.publisher.Mono<T>> callback)
     
    <T> reactor.core.publisher.Flux<T>
    withConnectionFlux(Function<io.r2dbc.spi.Connection,reactor.core.publisher.Flux<T>> callback)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface ru.tinkoff.kora.database.r2dbc.R2dbcConnectionFactory

    query
  • Constructor Details

    • R2dbcDatabase

      public R2dbcDatabase(R2dbcDatabaseConfig config, List<Function<io.r2dbc.spi.ConnectionFactoryOptions.Builder,io.r2dbc.spi.ConnectionFactoryOptions.Builder>> customizers, ru.tinkoff.kora.database.common.telemetry.DataBaseTelemetryFactory telemetryFactory)
  • Method Details

    • currentConnection

      public reactor.core.publisher.Mono<io.r2dbc.spi.Connection> currentConnection()
      Specified by:
      currentConnection in interface R2dbcConnectionFactory
    • newConnection

      public reactor.core.publisher.Mono<io.r2dbc.spi.Connection> newConnection()
      Specified by:
      newConnection in interface R2dbcConnectionFactory
    • telemetry

      public ru.tinkoff.kora.database.common.telemetry.DataBaseTelemetry telemetry()
      Specified by:
      telemetry in interface R2dbcConnectionFactory
    • inTx

      public <T> reactor.core.publisher.Mono<T> inTx(Function<io.r2dbc.spi.Connection,reactor.core.publisher.Mono<T>> callback)
      Specified by:
      inTx in interface R2dbcConnectionFactory
    • withConnection

      public <T> reactor.core.publisher.Mono<T> withConnection(Function<io.r2dbc.spi.Connection,reactor.core.publisher.Mono<T>> callback)
      Specified by:
      withConnection in interface R2dbcConnectionFactory
    • withConnectionFlux

      public <T> reactor.core.publisher.Flux<T> withConnectionFlux(Function<io.r2dbc.spi.Connection,reactor.core.publisher.Flux<T>> callback)
      Specified by:
      withConnectionFlux in interface R2dbcConnectionFactory
    • init

      public reactor.core.publisher.Mono<Void> init()
      Specified by:
      init in interface ru.tinkoff.kora.application.graph.Lifecycle
    • release

      public reactor.core.publisher.Mono<Void> release()
      Specified by:
      release in interface ru.tinkoff.kora.application.graph.Lifecycle