/
CoreApocGlobalComponents.java
38 lines (32 loc) · 1.37 KB
/
CoreApocGlobalComponents.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
36
37
38
package apoc;
import apoc.cypher.CypherInitializer;
import apoc.trigger.TriggerHandler;
import org.neo4j.annotations.service.ServiceProvider;
import org.neo4j.kernel.availability.AvailabilityListener;
import org.neo4j.kernel.internal.GraphDatabaseAPI;
import org.neo4j.kernel.lifecycle.Lifecycle;
import java.util.Collection;
import java.util.Collections;
import java.util.Map;
@ServiceProvider
public class CoreApocGlobalComponents implements ApocGlobalComponents {
@Override
public Map<String,Lifecycle> getServices(GraphDatabaseAPI db, ApocExtensionFactory.Dependencies dependencies) {
return Collections.singletonMap("trigger", new TriggerHandler(db,
dependencies.databaseManagementService(),
dependencies.apocConfig(),
dependencies.log().getUserLog(TriggerHandler.class),
dependencies.globalProceduresRegistry(),
dependencies.pools(),
dependencies.scheduler())
);
}
@Override
public Collection<Class> getContextClasses() {
return Collections.singleton(TriggerHandler.class);
}
@Override
public Iterable<AvailabilityListener> getListeners(GraphDatabaseAPI db, ApocExtensionFactory.Dependencies dependencies) {
return Collections.singleton(new CypherInitializer(db, dependencies.log().getUserLog(CypherInitializer.class)));
}
}