1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.neo4j.server;
21
22 import java.util.Arrays;
23 import java.util.Map;
24
25 import org.apache.commons.configuration.Configuration;
26 import org.neo4j.kernel.AbstractGraphDatabase;
27 import org.neo4j.kernel.EmbeddedGraphDatabase;
28 import org.neo4j.server.database.GraphDatabaseFactory;
29 import org.neo4j.server.modules.DiscoveryModule;
30 import org.neo4j.server.modules.ManagementApiModule;
31 import org.neo4j.server.modules.RESTApiModule;
32 import org.neo4j.server.modules.ServerModule;
33 import org.neo4j.server.modules.ThirdPartyJAXRSModule;
34 import org.neo4j.server.modules.WebAdminModule;
35 import org.neo4j.server.startup.healthcheck.ConfigFileMustBePresentRule;
36 import org.neo4j.server.startup.healthcheck.Neo4jPropertiesMustExistRule;
37 import org.neo4j.server.startup.healthcheck.StartupHealthCheckRule;
38
39 public class NeoServerBootstrapper extends Bootstrapper
40 {
41 @Override
42 public Iterable<StartupHealthCheckRule> getHealthCheckRules()
43 {
44 return Arrays.asList( new ConfigFileMustBePresentRule(), new Neo4jPropertiesMustExistRule() );
45 }
46
47 @Override
48 @SuppressWarnings( "unchecked" )
49 public Iterable<Class<? extends ServerModule>> getServerModules()
50 {
51 return Arrays.asList( DiscoveryModule.class, RESTApiModule.class, ManagementApiModule.class,
52 ThirdPartyJAXRSModule.class, WebAdminModule.class );
53 }
54
55 @Override
56 protected GraphDatabaseFactory getGraphDatabaseFactory( Configuration configuration )
57 {
58 return new GraphDatabaseFactory()
59 {
60 @Override
61 public AbstractGraphDatabase createDatabase( String databaseStoreDirectory,
62 Map<String, String> databaseProperties )
63 {
64 return new EmbeddedGraphDatabase( databaseStoreDirectory, databaseProperties );
65 }
66 };
67 }
68 }