-
Notifications
You must be signed in to change notification settings - Fork 490
/
ApocConfigExtensionFactory.java
35 lines (29 loc) · 1.22 KB
/
ApocConfigExtensionFactory.java
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
package apoc;
import org.neo4j.annotations.service.ServiceProvider;
import org.neo4j.configuration.Config;
import org.neo4j.dbms.api.DatabaseManagementService;
import org.neo4j.kernel.api.procedure.GlobalProcedures;
import org.neo4j.kernel.extension.ExtensionFactory;
import org.neo4j.kernel.extension.ExtensionType;
import org.neo4j.kernel.extension.context.ExtensionContext;
import org.neo4j.kernel.lifecycle.Lifecycle;
import org.neo4j.logging.internal.LogService;
/**
* a kernel extension for the new apoc configuration mechanism
*/
@ServiceProvider
public class ApocConfigExtensionFactory extends ExtensionFactory<ApocConfigExtensionFactory.Dependencies> {
public interface Dependencies {
LogService log();
Config config();
GlobalProcedures globalProceduresRegistry();
DatabaseManagementService databaseManagementService();
}
public ApocConfigExtensionFactory() {
super(ExtensionType.GLOBAL, "ApocConfig");
}
@Override
public Lifecycle newInstance(ExtensionContext context, Dependencies dependencies) {
return new ApocConfig(dependencies.config(), dependencies.log(), dependencies.globalProceduresRegistry(), dependencies.databaseManagementService());
}
}