Search in sources :

Example 1 with GraphDatabaseDependencies

use of org.neo4j.kernel.GraphDatabaseDependencies in project neo4j by neo4j.

the class EmbeddedGraphDatabase method create.

protected void create(File storeDir, Map<String, String> params, GraphDatabaseFacadeFactory.Dependencies dependencies) {
    GraphDatabaseDependencies newDependencies = newDependencies(dependencies).settingsClasses(asList(append(GraphDatabaseSettings.class, dependencies.settingsClasses())));
    new GraphDatabaseFacadeFactory(DatabaseInfo.COMMUNITY, CommunityEditionModule::new).initFacade(storeDir, params, newDependencies, this);
}
Also used : GraphDatabaseFacadeFactory(org.neo4j.kernel.impl.factory.GraphDatabaseFacadeFactory) GraphDatabaseDependencies(org.neo4j.kernel.GraphDatabaseDependencies)

Example 2 with GraphDatabaseDependencies

use of org.neo4j.kernel.GraphDatabaseDependencies in project neo4j by neo4j.

the class ServerBootstrapperTest method shouldNotThrowNullPointerExceptionIfConfigurationValidationFails.

@Test
public void shouldNotThrowNullPointerExceptionIfConfigurationValidationFails() throws Exception {
    // given
    ServerBootstrapper serverBootstrapper = new ServerBootstrapper() {

        @Override
        protected NeoServer createNeoServer(Config config, GraphDatabaseDependencies dependencies, LogProvider userLogProvider) {
            return mock(NeoServer.class);
        }

        @Nonnull
        @Override
        protected Collection<ConfigurationValidator> configurationValidators() {
            return Collections.emptyList();
        }
    };
    File dir = Files.createTempDirectory("test-server-bootstrapper").toFile();
    dir.deleteOnExit();
    // when
    serverBootstrapper.start(dir, Optional.empty());
    // then no exceptions are thrown and
    assertThat(suppress.getOutputVoice().lines(), not(empty()));
}
Also used : LogProvider(org.neo4j.logging.LogProvider) Config(org.neo4j.kernel.configuration.Config) GraphDatabaseDependencies(org.neo4j.kernel.GraphDatabaseDependencies) ConfigurationValidator(org.neo4j.kernel.configuration.ConfigurationValidator) File(java.io.File) Test(org.junit.Test)

Example 3 with GraphDatabaseDependencies

use of org.neo4j.kernel.GraphDatabaseDependencies in project neo4j by neo4j.

the class DatabaseActions method start.

public void start() throws UnableToStartServerException {
    if (isRunning()) {
        throw new UnableToStartServerException("Already started");
    }
    Config config = model.getConfig();
    Monitors monitors = new Monitors();
    LogProvider userLogProvider = FormattedLogProvider.toOutputStream(System.out);
    GraphDatabaseDependencies dependencies = GraphDatabaseDependencies.newDependencies().userLogProvider(userLogProvider).monitors(monitors);
    server = new CommunityNeoServer(config, dependencies, userLogProvider);
    try {
        server.start();
    } catch (ServerStartupException e) {
        server = null;
        Set<Class> causes = extractCauseTypes(e);
        if (causes.contains(StoreLockException.class)) {
            throw new UnableToStartServerException("Unable to lock store. Are you running another Neo4j process against this database?");
        }
        if (causes.contains(BindException.class)) {
            throw new UnableToStartServerException("Unable to bind to port. Are you running another Neo4j process on this computer?");
        }
        throw new UnableToStartServerException(e.getMessage());
    }
}
Also used : LogProvider(org.neo4j.logging.LogProvider) FormattedLogProvider(org.neo4j.logging.FormattedLogProvider) Set(java.util.Set) HashSet(java.util.HashSet) CommunityNeoServer(org.neo4j.server.CommunityNeoServer) Config(org.neo4j.kernel.configuration.Config) ServerStartupException(org.neo4j.server.ServerStartupException) UnableToStartServerException(org.neo4j.desktop.model.exceptions.UnableToStartServerException) Monitors(org.neo4j.kernel.monitoring.Monitors) GraphDatabaseDependencies(org.neo4j.kernel.GraphDatabaseDependencies) StoreLockException(org.neo4j.kernel.StoreLockException) BindException(java.net.BindException)

Example 4 with GraphDatabaseDependencies

use of org.neo4j.kernel.GraphDatabaseDependencies in project neo4j by neo4j.

the class EmbeddedGraphDatabase method create.

protected void create(File storeDir, Config config, GraphDatabaseFacadeFactory.Dependencies dependencies) {
    GraphDatabaseDependencies newDependencies = newDependencies(dependencies).settingsClasses(asList(append(GraphDatabaseSettings.class, dependencies.settingsClasses())));
    new GraphDatabaseFacadeFactory(DatabaseInfo.COMMUNITY, CommunityEditionModule::new).initFacade(storeDir, config, newDependencies, this);
}
Also used : GraphDatabaseFacadeFactory(org.neo4j.kernel.impl.factory.GraphDatabaseFacadeFactory) GraphDatabaseDependencies(org.neo4j.kernel.GraphDatabaseDependencies)

Example 5 with GraphDatabaseDependencies

use of org.neo4j.kernel.GraphDatabaseDependencies in project neo4j by neo4j.

the class AbstractInProcessServerBuilder method newServer.

@Override
public ServerControls newServer() {
    try (FileSystemAbstraction fileSystem = new DefaultFileSystemAbstraction()) {
        final OutputStream logOutputStream;
        try {
            logOutputStream = createOrOpenAsOuputStream(fileSystem, new File(serverFolder, "neo4j.log"), true);
        } catch (IOException e) {
            throw new RuntimeException("Unable to create log file", e);
        }
        config.put(ServerSettings.third_party_packages.name(), toStringForThirdPartyPackageProperty(extensions.toList()));
        final FormattedLogProvider userLogProvider = FormattedLogProvider.toOutputStream(logOutputStream);
        GraphDatabaseDependencies dependencies = GraphDatabaseDependencies.newDependencies();
        Iterable<KernelExtensionFactory<?>> kernelExtensions = append(new Neo4jHarnessExtensions(procedures), dependencies.kernelExtensions());
        dependencies = dependencies.kernelExtensions(kernelExtensions).userLogProvider(userLogProvider);
        AbstractNeoServer neoServer = createNeoServer(config, dependencies, userLogProvider);
        InProcessServerControls controls = new InProcessServerControls(serverFolder, neoServer, logOutputStream);
        controls.start();
        try {
            fixtures.applyTo(controls);
        } catch (Exception e) {
            controls.close();
            throw Exceptions.launderedException(e);
        }
        return controls;
    } catch (IOException e) {
        throw Exceptions.launderedException(e);
    }
}
Also used : DefaultFileSystemAbstraction(org.neo4j.io.fs.DefaultFileSystemAbstraction) FileSystemAbstraction(org.neo4j.io.fs.FileSystemAbstraction) DefaultFileSystemAbstraction(org.neo4j.io.fs.DefaultFileSystemAbstraction) OutputStream(java.io.OutputStream) IOException(java.io.IOException) KernelExtensionFactory(org.neo4j.kernel.extension.KernelExtensionFactory) AbstractNeoServer(org.neo4j.server.AbstractNeoServer) IOException(java.io.IOException) FormattedLogProvider(org.neo4j.logging.FormattedLogProvider) GraphDatabaseDependencies(org.neo4j.kernel.GraphDatabaseDependencies) File(java.io.File)

Aggregations

GraphDatabaseDependencies (org.neo4j.kernel.GraphDatabaseDependencies)5 File (java.io.File)2 Config (org.neo4j.kernel.configuration.Config)2 GraphDatabaseFacadeFactory (org.neo4j.kernel.impl.factory.GraphDatabaseFacadeFactory)2 FormattedLogProvider (org.neo4j.logging.FormattedLogProvider)2 LogProvider (org.neo4j.logging.LogProvider)2 IOException (java.io.IOException)1 OutputStream (java.io.OutputStream)1 BindException (java.net.BindException)1 HashSet (java.util.HashSet)1 Set (java.util.Set)1 Test (org.junit.Test)1 UnableToStartServerException (org.neo4j.desktop.model.exceptions.UnableToStartServerException)1 DefaultFileSystemAbstraction (org.neo4j.io.fs.DefaultFileSystemAbstraction)1 FileSystemAbstraction (org.neo4j.io.fs.FileSystemAbstraction)1 StoreLockException (org.neo4j.kernel.StoreLockException)1 ConfigurationValidator (org.neo4j.kernel.configuration.ConfigurationValidator)1 KernelExtensionFactory (org.neo4j.kernel.extension.KernelExtensionFactory)1 Monitors (org.neo4j.kernel.monitoring.Monitors)1 AbstractNeoServer (org.neo4j.server.AbstractNeoServer)1