userver
C++ Async Framework
Toggle main menu visibility
Loading...
Searching...
No Matches
read_write.hpp
Go to the documentation of this file.
1
#
pragma
once
2
3
/// @file userver/storages/sqlite/infra/strategy/read_write.hpp
4
/// @brief @copybrief storages::sqlite::infra::strategy::ReadWriteStrategy
5
6
#
include
<
userver
/
storages
/
sqlite
/
infra
/
strategy
/
pool_strategy
.
hpp
>
7
8
USERVER_NAMESPACE_BEGIN
9
10
namespace
storages::sqlite::infra::strategy {
11
12
/// @brief SQLite pool strategy: separate read and read-write connection pools
13
class
ReadWriteStrategy
final
:
public
PoolStrategyBase
{
14
public
:
15
ReadWriteStrategy(
const
settings::
SQLiteSettings
& settings, engine::TaskProcessor& blocking_task_processor);
16
~ReadWriteStrategy()
final
;
17
18
void
WriteStatistics(
utils
::
statistics
::Writer& writer)
const
final
;
19
20
private
:
21
Pool& GetReadOnly()
const
final
;
22
Pool& GetReadWrite()
const
final
;
23
24
PoolPtr InitializeReadOnlyPoolReference(
25
settings::
SQLiteSettings
settings,
26
engine::TaskProcessor& blocking_task_processor
27
);
28
29
PoolPtr InitializeReadWritePoolReference(
30
settings::
SQLiteSettings
settings,
31
engine::TaskProcessor& blocking_task_processor
32
);
33
34
// Order is strong, write connection would be create first
35
PoolPtr write_connection_pool_;
36
PoolPtr read_connection_pool_;
37
};
38
39
}
// namespace storages::sqlite::infra::strategy
40
41
USERVER_NAMESPACE_END
userver
storages
sqlite
infra
strategy
read_write.hpp
Generated on
for userver by
Doxygen
1.17.0