public static Configuration.Builder getBaseConfiguration() { return Configuration.Builder.copy(baseConfiguration); }
public Configuration build() { return new Configuration(this); }
@Bean public org.neo4j.ogm.config.Configuration getConfiguration() { org.neo4j.ogm.config.Configuration config = new org.neo4j.ogm.config.Configuration(); config.driverConfiguration() .setDriverClassName ("org.neo4j.ogm.drivers.http.driver.HttpDriver") .setURI(grapheneUrl); return config; }
@Test public void shouldConfigureFromFilesystemPropertiesFilePath() throws Exception { File file = new File(getConfigFileAsRelativePath()); FileConfigurationSource source = new FileConfigurationSource(file.getAbsolutePath()); Configuration configuration = new Configuration.Builder(source).build(); assertThat(configuration.getAutoIndex()).isEqualTo(AutoIndexMode.NONE); assertThat(configuration.getDriverClassName()).isEqualTo("org.neo4j.ogm.drivers.http.driver.HttpDriver"); assertThat(configuration.getCredentials().credentials().toString()).isEqualTo("bmVvNGo6cGFzc3dvcmQ="); assertThat(configuration.getURI()).isEqualTo("http://localhost:7474"); }
@Test public void shouldConfigureCredentialsFromURIWithUTF8Characters() { Configuration configuration = new Configuration.Builder() .uri("http://franti\u0161ek:Pass123@localhost:8080") .build(); assertThat(configuration.getCredentials().credentials().toString()).isEqualTo("ZnJhbnRpxaFlazpQYXNzMTIz"); }
@Test public void shouldConfigureFromSpringBootPropertiesFile() { Configuration configuration = new Configuration.Builder( new ClasspathConfigurationSource("application.properties")).build(); assertThat(configuration.getAutoIndex()).isEqualTo(AutoIndexMode.NONE); assertThat(configuration.getDriverClassName()).isEqualTo("org.neo4j.ogm.drivers.http.driver.HttpDriver"); assertThat(configuration.getCredentials().credentials().toString()).isEqualTo("bmVvNGo6cGFzc3dvcmQ="); assertThat(configuration.getURI()).isEqualTo("http://localhost:7474"); }
@Test public void shouldLoadBoltDriverConfigFromPropertiesFile() { Configuration driverConfig = new Configuration.Builder( new ClasspathConfigurationSource("bolt.driver.properties")).build(); assertThat(driverConfig.getURI()).isEqualTo("bolt://localhost"); assertThat(driverConfig.getConnectionPoolSize()).isEqualTo(150); assertThat(driverConfig.getEncryptionLevel()).isEqualTo("NONE"); assertThat(driverConfig.getTrustStrategy()).isEqualTo("TRUST_ON_FIRST_USE"); assertThat(driverConfig.getTrustCertFile()).isEqualTo("/tmp/cert"); }
@Test public void shouldParseEmbeddedUriSchemeCaseInsensitive() { Configuration configuration = new Configuration.Builder() .uri("FILE:///somewhere") .build(); assertThat(configuration.getDriverClassName()) .isEqualTo("org.neo4j.ogm.drivers.embedded.driver.EmbeddedDriver"); assertThat(configuration.getURI()).isEqualTo("FILE:///somewhere"); }
@Test public void shouldSetUsernameAndPasswordCredentialsForBoltProtocol() { String username = "neo4j"; String password = "password"; Configuration dbConfig = new Configuration.Builder().uri("bolt://" + username + ":" + password + "@localhost") .build(); Credentials credentials = dbConfig.getCredentials(); UsernamePasswordCredentials basic = (UsernamePasswordCredentials) credentials; assertThat(basic).isNotNull(); assertThat(basic.getUsername()).isEqualTo(username); assertThat(basic.getPassword()).isEqualTo(password); } }
@Test public void shouldLoadHttpDriverConfigFromPropertiesFile() { Configuration driverConfig = new Configuration.Builder( new ClasspathConfigurationSource("http.driver.properties")).build(); assertThat(driverConfig.getURI()).isEqualTo("http://localhost:7474"); }
@Test public void shouldConfigureFromUsernamePasswordProperties() { Configuration configuration = new Configuration.Builder( new ClasspathConfigurationSource("ogm-password.properties")).build(); assertThat(((UsernamePasswordCredentials) configuration.getCredentials()).getUsername()).isEqualTo("azerty"); assertThat(((UsernamePasswordCredentials) configuration.getCredentials()).getPassword()).isEqualTo("uiop"); }
@Bean public SessionFactory sessionFactory() { ClasspathConfigurationSource configurationSource = new ClasspathConfigurationSource("/ogm.properties"); org.neo4j.ogm.config.Configuration.Builder builder = new org.neo4j.ogm.config.Configuration.Builder(configurationSource); org.neo4j.ogm.config.Configuration configuration = builder.build(); return new SessionFactory(configuration,"org.neo4j.cineasts.domain"); }
@Before public void setUp() throws Exception { configBuilder = new Configuration.Builder(new ClasspathConfigurationSource("ogm-http.properties")) .uri("http://neo4j:neo4j12@localhost:" + TestUtils.getAvailablePort()); } }
/** * Constructs a new {@link SessionFactory} by initialising the object-graph mapping meta-data from the given list of domain * object packages and starts up the Neo4j database in embedded mode. If the embedded driver is not available this method * will throw a <code>Exception</code>. * <p> * The package names passed to this constructor should not contain wildcards or trailing full stops, for example, * "org.springframework.data.neo4j.example.domain" would be fine. The default behaviour is for sub-packages to be scanned * and you can also specify fully-qualified class names if you want to cherry pick particular classes. * </p> * Indexes will also be checked or built if configured. * * @param packages The packages to scan for domain objects */ public SessionFactory(String... packages) { this(new Configuration.Builder().build(), packages); }
private Map<String, Object> getConfigurationProperties() { if (this.configuration == null) { throw new IllegalStateException("Driver is not configured and cannot load Cypher modifications."); } return this.configuration.getCustomProperties(); }
@Test public void shouldConfigureFromFilesystemPropertiesFileURI() throws Exception { File file = new File(getConfigFileAsRelativePath()); FileConfigurationSource source = new FileConfigurationSource(file.toURI().toString()); Configuration configuration = new Configuration.Builder(source).build(); assertThat(configuration.getAutoIndex()).isEqualTo(AutoIndexMode.NONE); assertThat(configuration.getDriverClassName()).isEqualTo("org.neo4j.ogm.drivers.http.driver.HttpDriver"); assertThat(configuration.getCredentials().credentials().toString()).isEqualTo("bmVvNGo6cGFzc3dvcmQ="); assertThat(configuration.getURI()).isEqualTo("http://localhost:7474"); }
@Test public void shouldConfigureCredentialsFromURI() { Configuration configuration = new Configuration.Builder().uri("http://fred:flintstone@localhost:8080").build(); // base 64 encoded credentials, e.g. use echo fred:flintstone | base64 assertThat(configuration.getCredentials().credentials().toString()).isEqualTo("ZnJlZDpmbGludHN0b25l"); assertThat(configuration.getURI()).isEqualTo("http://localhost:8080"); }
@Test public void shouldLoadEmbeddedDriverConfigFromPropertiesFile() { Configuration driverConfig = new Configuration.Builder( new ClasspathConfigurationSource("embedded.driver.properties")).build(); assertThat(driverConfig.getURI()).isEqualTo("file:///var/tmp/neo4j.db"); }
@Test(expected = Exception.class) public void shouldThrowExceptionWhenBoltDriverCannotConnect() { Configuration configuration = new Configuration.Builder( new ClasspathConfigurationSource("ogm-bolt-invalid.properties")).build(); SessionFactory sessionFactory = new SessionFactory(configuration, "org.neo4j.ogm.domain.social"); Session session = sessionFactory.openSession(); session.purgeDatabase(); } }
@Before public void setUp() throws Exception { configBuilder = new Configuration.Builder(new ClasspathConfigurationSource("ogm-bolt.properties")) .uri("bolt://localhost:" + TestUtils.getAvailablePort()); } }