mirror of
https://gitea.invidious.io/iv-org/shard-crystal-db.git
synced 2024-08-15 00:53:32 +00:00
Introduce DB::Connection::Options
Move prepared_statements out from ConnectionContext
This commit is contained in:
parent
0328767b98
commit
bc0200e178
5 changed files with 26 additions and 15 deletions
|
@ -48,7 +48,9 @@ class FooDriver < DB::Driver
|
|||
end
|
||||
|
||||
def connection_builder(uri : URI) : Proc(DB::Connection)
|
||||
-> { FooConnection.new.as(DB::Connection) }
|
||||
params = HTTP::Params.parse(uri.query || "")
|
||||
options = DB::Connection::Options.from_http_params(params)
|
||||
->{ FooConnection.new(options).as(DB::Connection) }
|
||||
end
|
||||
|
||||
class FooConnection < DB::Connection
|
||||
|
@ -111,7 +113,9 @@ class BarDriver < DB::Driver
|
|||
end
|
||||
|
||||
def connection_builder(uri : URI) : Proc(DB::Connection)
|
||||
-> { BarConnection.new.as(DB::Connection) }
|
||||
params = HTTP::Params.parse(uri.query || "")
|
||||
options = DB::Connection::Options.from_http_params(params)
|
||||
->{ BarConnection.new(options).as(DB::Connection) }
|
||||
end
|
||||
|
||||
class BarConnection < DB::Connection
|
||||
|
|
|
@ -3,11 +3,14 @@ require "../src/db"
|
|||
|
||||
class DummyDriver < DB::Driver
|
||||
def connection_builder(uri : URI) : Proc(DB::Connection)
|
||||
-> { DummyConnection.new.as(DB::Connection) }
|
||||
params = HTTP::Params.parse(uri.query || "")
|
||||
options = DB::Connection::Options.from_http_params(params)
|
||||
->{ DummyConnection.new(options).as(DB::Connection) }
|
||||
end
|
||||
|
||||
class DummyConnection < DB::Connection
|
||||
def initialize
|
||||
def initialize(options : DB::Connection::Options)
|
||||
super(options)
|
||||
@connected = true
|
||||
@@connections ||= [] of DummyConnection
|
||||
@@connections.not_nil! << self
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue