19
19
*/
20
20
package org .neo4j .gds .core .io .db ;
21
21
22
- import org .neo4j .common .DependencyResolver ;
23
22
import org .neo4j .configuration .Config ;
24
23
import org .neo4j .configuration .GraphDatabaseSettings ;
25
24
import org .neo4j .dbms .api .DatabaseManagementService ;
26
25
import org .neo4j .gds .compat .CompatInput ;
26
+ import org .neo4j .gds .compat .GraphDatabaseApiProxy ;
27
27
import org .neo4j .gds .compat .Neo4jProxy ;
28
28
import org .neo4j .gds .core .Settings ;
29
29
import org .neo4j .gds .core .utils .ProgressTimer ;
30
+ import org .neo4j .graphdb .GraphDatabaseService ;
30
31
import org .neo4j .internal .batchimport .AdditionalInitialIds ;
31
32
import org .neo4j .internal .batchimport .BatchImporter ;
32
33
import org .neo4j .internal .batchimport .BatchImporterFactory ;
37
38
import org .neo4j .io .layout .DatabaseLayout ;
38
39
import org .neo4j .io .pagecache .tracing .PageCacheTracer ;
39
40
import org .neo4j .kernel .impl .scheduler .JobSchedulerFactory ;
40
- import org .neo4j .kernel .internal .GraphDatabaseAPI ;
41
41
import org .neo4j .kernel .lifecycle .LifeSupport ;
42
42
import org .neo4j .logging .Log ;
43
43
import org .neo4j .logging .internal .LogService ;
@@ -59,29 +59,28 @@ public final class GdsParallelBatchImporter {
59
59
private final Log log ;
60
60
private final ExecutionMonitor executionMonitor ;
61
61
62
- private final DependencyResolver dependencyResolver ;
63
62
private final FileSystemAbstraction fs ;
64
63
private final LogService logService ;
65
64
private final Config databaseConfig ;
66
65
private final DatabaseManagementService dbms ;
66
+ private final GraphDatabaseService databaseService ;
67
67
68
68
static GdsParallelBatchImporter fromDb (
69
- GraphDatabaseAPI db ,
69
+ GraphDatabaseService databaseService ,
70
70
GraphStoreToDatabaseExporterConfig config ,
71
71
Log log ,
72
72
ExecutionMonitor executionMonitor
73
73
) {
74
- var dependencyResolver = db .getDependencyResolver ();
75
- var dbms = dependencyResolver .resolveDependency (DatabaseManagementService .class );
76
- var fs = dependencyResolver .resolveDependency (FileSystemAbstraction .class );
77
- var logService = dependencyResolver .resolveDependency (LogService .class );
78
- var databaseConfig = dependencyResolver .resolveDependency (Config .class );
74
+ var dbms = GraphDatabaseApiProxy .resolveDependency (databaseService , DatabaseManagementService .class );
75
+ var fs = GraphDatabaseApiProxy .resolveDependency (databaseService , FileSystemAbstraction .class );
76
+ var logService = GraphDatabaseApiProxy .resolveDependency (databaseService , LogService .class );
77
+ var databaseConfig = GraphDatabaseApiProxy .resolveDependency (databaseService , Config .class );
79
78
return new GdsParallelBatchImporter (
80
79
config ,
81
80
log ,
82
81
executionMonitor ,
83
82
dbms ,
84
- dependencyResolver ,
83
+ databaseService ,
85
84
fs ,
86
85
logService ,
87
86
databaseConfig
@@ -94,17 +93,16 @@ public static GdsParallelBatchImporter fromDbms(
94
93
Log log ,
95
94
ExecutionMonitor executionMonitor
96
95
) {
97
- var db = (GraphDatabaseAPI ) dbms .database (SYSTEM_DATABASE_NAME );
98
- var dependencyResolver = db .getDependencyResolver ();
99
- var fs = dependencyResolver .resolveDependency (FileSystemAbstraction .class );
100
- var logService = dependencyResolver .resolveDependency (LogService .class );
101
- var databaseConfig = dependencyResolver .resolveDependency (Config .class );
96
+ var databaseService = dbms .database (SYSTEM_DATABASE_NAME );
97
+ var fs = GraphDatabaseApiProxy .resolveDependency (databaseService , FileSystemAbstraction .class );
98
+ var logService = GraphDatabaseApiProxy .resolveDependency (databaseService , LogService .class );
99
+ var databaseConfig = GraphDatabaseApiProxy .resolveDependency (databaseService , Config .class );
102
100
return new GdsParallelBatchImporter (
103
101
config ,
104
102
log ,
105
103
executionMonitor ,
106
104
dbms ,
107
- dependencyResolver ,
105
+ databaseService ,
108
106
fs ,
109
107
logService ,
110
108
databaseConfig
@@ -116,7 +114,7 @@ private GdsParallelBatchImporter(
116
114
Log log ,
117
115
ExecutionMonitor executionMonitor ,
118
116
DatabaseManagementService dbms ,
119
- DependencyResolver dependencyResolver ,
117
+ GraphDatabaseService databaseService ,
120
118
FileSystemAbstraction fs ,
121
119
LogService logService ,
122
120
Config databaseConfig
@@ -125,7 +123,7 @@ private GdsParallelBatchImporter(
125
123
this .log = log ;
126
124
this .executionMonitor = executionMonitor ;
127
125
this .dbms = dbms ;
128
- this .dependencyResolver = dependencyResolver ;
126
+ this .databaseService = databaseService ;
129
127
this .fs = fs ;
130
128
this .logService = logService ;
131
129
@@ -166,7 +164,13 @@ public void writeDatabase(CompatInput compatInput, boolean startDatabase) {
166
164
lifeSupport .start ();
167
165
168
166
var input = Neo4jProxy .batchInputFrom (compatInput );
169
- var batchImporter = instantiateBatchImporter (databaseLayout , logService , collector , jobScheduler );
167
+ var batchImporter = instantiateBatchImporter (
168
+ databaseLayout ,
169
+ logService ,
170
+ collector ,
171
+ jobScheduler ,
172
+ databaseService
173
+ );
170
174
batchImporter .doImport (input );
171
175
log .info (formatWithLocale ("Database import finished after %s ms" , importTimer .stop ().getDuration ()));
172
176
@@ -220,7 +224,8 @@ private BatchImporter instantiateBatchImporter(
220
224
DatabaseLayout databaseLayout ,
221
225
LogService logService ,
222
226
Collector collector ,
223
- JobScheduler jobScheduler
227
+ JobScheduler jobScheduler ,
228
+ GraphDatabaseService databaseService
224
229
) {
225
230
return Neo4jProxy .instantiateBatchImporter (
226
231
BatchImporterFactory .withHighestPriority (),
@@ -237,7 +242,7 @@ private BatchImporter instantiateBatchImporter(
237
242
databaseConfig ,
238
243
fs ,
239
244
logService ,
240
- dependencyResolver
245
+ databaseService
241
246
),
242
247
jobScheduler ,
243
248
collector
0 commit comments