userver
C++ Async Framework
Toggle main menu visibility
Loading...
Searching...
No Matches
classes.py
1
import
dataclasses
2
import
pathlib
3
import
typing
4
5
6
@dataclasses.dataclass(frozen=True)
7
class
ConnectionInfo
:
8
"""Mysql connection info class.
9
10
:param port: database port
11
:param hostname: database hostname
12
:param user: database user
13
:param password: database password
14
:param dbname: database name
15
"""
16
17
port: int = 3306
18
hostname: str =
'localhost'
19
user: str |
None
=
None
20
password: str |
None
=
None
21
dbname: str |
None
=
None
22
23
def
replace
(self, **kwargs) -> 'ConnectionInfo':
24
"""Returns new instance with attributes updated."""
25
return
dataclasses.replace(self, **kwargs)
26
27
28
@dataclasses.dataclass(frozen=True)
29
class
ServiceSettings
:
30
port: int
31
32
def
get_conninfo(self) -> ConnectionInfo:
33
return
ConnectionInfo
(port=self.port, user=
'root'
)
34
35
36
@dataclasses.dataclass(frozen=True)
37
class
DatabaseConfig
:
38
dbname: str
39
migrations: list[pathlib.Path]
40
create: bool =
True
41
keep_tables: typing.Sequence[str] = ()
42
truncate_non_empty: bool =
False
43
44
45
DatabasesDict = dict[str, DatabaseConfig]
en
testsuite
databases
mysql
classes.py
Generated on
for userver by
Doxygen
1.17.0