blob: ae2707b9a51fb2c19b3bb27a47731535753720b1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
|
services:
dbal.conn:
class: phpbb\db\driver\factory
arguments:
- @service_container
dbal.conn.driver:
class: %dbal.driver.class%
calls:
- [sql_connect, [%dbal.dbhost%, %dbal.dbuser%, %dbal.dbpasswd%, %dbal.dbname%, %dbal.dbport%, false, %dbal.new_link%]]
# ----- DB Tools -----
dbal.tools.factory:
class: phpbb\db\tools\factory
dbal.tools:
class: phpbb\db\tools\tools_interface
factory: ["@dbal.tools.factory", get]
arguments:
- @dbal.conn.driver
# ----- DB Extractor -----
dbal.extractor.factory:
class: phpbb\db\extractor\factory
arguments:
- @dbal.conn.driver
- @service_container
dbal.extractor:
class: phpbb\db\extractor\extractor_interface
factory: ["@dbal.extractor.factory", get]
# ----- DB Extractors for different drivers -----
# Scope MUST be prototype for all the handlers to work correctly.
dbal.extractor.extractors.mssql_extractor:
class: phpbb\db\extractor\mssql_extractor
scope: prototype
arguments:
- %core.root_path%
- @request
- @dbal.conn.driver
dbal.extractor.extractors.mysql_extractor:
class: phpbb\db\extractor\mysql_extractor
scope: prototype
arguments:
- %core.root_path%
- @request
- @dbal.conn.driver
dbal.extractor.extractors.oracle_extractor:
class: phpbb\db\extractor\oracle_extractor
scope: prototype
arguments:
- %core.root_path%
- @request
- @dbal.conn.driver
dbal.extractor.extractors.postgres_extractor:
class: phpbb\db\extractor\postgres_extractor
scope: prototype
arguments:
- %core.root_path%
- @request
- @dbal.conn.driver
dbal.extractor.extractors.sqlite3_extractor:
class: phpbb\db\extractor\sqlite3_extractor
scope: prototype
arguments:
- %core.root_path%
- @request
- @dbal.conn.driver
dbal.extractor.extractors.sqlite_extractor:
class: phpbb\db\extractor\sqlite_extractor
scope: prototype
arguments:
- %core.root_path%
- @request
- @dbal.conn.driver
# ----- Migrator -----
migrator:
class: phpbb\db\migrator
arguments:
- @service_container
- @config
- @dbal.conn
- @dbal.tools
- %tables.migrations%
- %core.root_path%
- %core.php_ext%
- %core.table_prefix%
- @migrator.tool_collection
- @migrator.helper
migrator.helper:
class: phpbb\db\migration\helper
# ----- Migrator's tools -----
migrator.tool_collection:
class: phpbb\di\service_collection
arguments:
- @service_container
tags:
- { name: service_collection, tag: migrator.tool }
migrator.tool.config:
class: phpbb\db\migration\tool\config
arguments:
- @config
tags:
- { name: migrator.tool }
migrator.tool.config_text:
class: phpbb\db\migration\tool\config_text
arguments:
- @config_text
tags:
- { name: migrator.tool }
migrator.tool.module:
class: phpbb\db\migration\tool\module
arguments:
- @dbal.conn
- @cache
- @user
- %core.root_path%
- %core.php_ext%
- %tables.modules%
tags:
- { name: migrator.tool }
migrator.tool.permission:
class: phpbb\db\migration\tool\permission
arguments:
- @dbal.conn
- @cache
- @auth
- %core.root_path%
- %core.php_ext%
tags:
- { name: migrator.tool }
|