Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in / Register
Toggle navigation
S
spring-boot
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
DEMO
spring-boot
Commits
47c568a2
Commit
47c568a2
authored
Aug 26, 2016
by
Stephane Nicoll
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Polish contribution
Closes gh-6746
parent
bb7b789c
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
20 additions
and
64 deletions
+20
-64
Neo4jProperties.java
...mework/boot/autoconfigure/data/neo4j/Neo4jProperties.java
+0
-7
Neo4jPropertiesTests.java
...k/boot/autoconfigure/data/neo4j/Neo4jPropertiesTests.java
+20
-57
No files found.
spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/data/neo4j/Neo4jProperties.java
View file @
47c568a2
...
...
@@ -47,8 +47,6 @@ public class Neo4jProperties implements ApplicationContextAware {
static
final
String
BOLT_DRIVER
=
"org.neo4j.ogm.drivers.bolt.driver.BoltDriver"
;
static
final
String
DEFAULT_BOLT_URI
=
"bolt://localhost:7687"
;
/**
* URI used by the driver. Auto-detected by default.
*/
...
...
@@ -173,11 +171,6 @@ public class Neo4jProperties implements ApplicationContextAware {
driverConfiguration
.
setDriverClassName
(
EMBEDDED_DRIVER
);
return
;
}
if
(
ClassUtils
.
isPresent
(
BOLT_DRIVER
,
this
.
classLoader
))
{
driverConfiguration
.
setDriverClassName
(
BOLT_DRIVER
);
driverConfiguration
.
setURI
(
DEFAULT_BOLT_URI
);
return
;
}
driverConfiguration
.
setDriverClassName
(
HTTP_DRIVER
);
driverConfiguration
.
setURI
(
DEFAULT_HTTP_URI
);
}
...
...
spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/data/neo4j/Neo4jPropertiesTests.java
View file @
47c568a2
...
...
@@ -18,8 +18,6 @@ package org.springframework.boot.autoconfigure.data.neo4j;
import
java.net.URL
;
import
java.net.URLClassLoader
;
import
java.util.EnumSet
;
import
java.util.Set
;
import
com.hazelcast.util.Base64
;
import
org.junit.After
;
...
...
@@ -31,6 +29,7 @@ import org.neo4j.ogm.config.DriverConfiguration;
import
org.springframework.boot.context.properties.EnableConfigurationProperties
;
import
org.springframework.boot.test.util.EnvironmentTestUtils
;
import
org.springframework.context.annotation.AnnotationConfigApplicationContext
;
import
static
org
.
assertj
.
core
.
api
.
Assertions
.
assertThat
;
/**
...
...
@@ -51,21 +50,14 @@ public class Neo4jPropertiesTests {
@Test
public
void
defaultUseEmbeddedInMemoryIfAvailable
()
{
Neo4jProperties
properties
=
load
(
EnumSet
.
of
(
AvailableDriver
.
EMBEDDED
)
);
Neo4jProperties
properties
=
load
(
true
);
Configuration
configuration
=
properties
.
createConfiguration
();
assertDriver
(
configuration
,
Neo4jProperties
.
EMBEDDED_DRIVER
,
null
);
}
@Test
public
void
defaultUseBoltIfAvailableAndEmbeddedNot
()
{
Neo4jProperties
properties
=
load
(
EnumSet
.
of
(
AvailableDriver
.
BOLT
));
Configuration
configuration
=
properties
.
createConfiguration
();
assertDriver
(
configuration
,
Neo4jProperties
.
BOLT_DRIVER
,
"bolt://localhost:7687"
);
}
@Test
public
void
defaultUseHttpIfEmbeddedAndBoltIsNotAvailable
()
{
Neo4jProperties
properties
=
load
(
EnumSet
.
noneOf
(
AvailableDriver
.
class
));
public
void
defaultUseHttpDriverIfEmbeddedDriverIsNotAvailable
()
{
Neo4jProperties
properties
=
load
(
false
);
Configuration
configuration
=
properties
.
createConfiguration
();
assertDriver
(
configuration
,
Neo4jProperties
.
HTTP_DRIVER
,
Neo4jProperties
.
DEFAULT_HTTP_URI
);
...
...
@@ -73,15 +65,15 @@ public class Neo4jPropertiesTests {
@Test
public
void
httpUriUseHttpServer
()
{
Neo4jProperties
properties
=
load
(
EnumSet
.
of
(
AvailableDriver
.
EMBEDDED
)
,
Neo4jProperties
properties
=
load
(
true
,
"spring.data.neo4j.uri=http://localhost:7474"
);
Configuration
configuration
=
properties
.
createConfiguration
();
assertDriver
(
configuration
,
Neo4jProperties
.
HTTP_DRIVER
,
"http://localhost:7474"
);
}
@Test
public
void
boltUriUseBolt
()
{
Neo4jProperties
properties
=
load
(
EnumSet
.
of
(
AvailableDriver
.
EMBEDDED
,
AvailableDriver
.
BOLT
)
,
public
void
boltUriUseBolt
Driver
()
{
Neo4jProperties
properties
=
load
(
true
,
"spring.data.neo4j.uri=bolt://localhost:7687"
);
Configuration
configuration
=
properties
.
createConfiguration
();
assertDriver
(
configuration
,
Neo4jProperties
.
BOLT_DRIVER
,
"bolt://localhost:7687"
);
...
...
@@ -89,7 +81,7 @@ public class Neo4jPropertiesTests {
@Test
public
void
fileUriUseEmbeddedServer
()
{
Neo4jProperties
properties
=
load
(
EnumSet
.
of
(
AvailableDriver
.
EMBEDDED
)
,
Neo4jProperties
properties
=
load
(
true
,
"spring.data.neo4j.uri=file://var/tmp/graph.db"
);
Configuration
configuration
=
properties
.
createConfiguration
();
assertDriver
(
configuration
,
Neo4jProperties
.
EMBEDDED_DRIVER
,
...
...
@@ -98,7 +90,7 @@ public class Neo4jPropertiesTests {
@Test
public
void
credentialsAreSet
()
{
Neo4jProperties
properties
=
load
(
EnumSet
.
of
(
AvailableDriver
.
EMBEDDED
)
,
Neo4jProperties
properties
=
load
(
true
,
"spring.data.neo4j.uri=http://localhost:7474"
,
"spring.data.neo4j.username=user"
,
"spring.data.neo4j.password=secret"
);
Configuration
configuration
=
properties
.
createConfiguration
();
...
...
@@ -108,7 +100,7 @@ public class Neo4jPropertiesTests {
@Test
public
void
credentialsAreSetFromUri
()
{
Neo4jProperties
properties
=
load
(
EnumSet
.
of
(
AvailableDriver
.
EMBEDDED
)
,
Neo4jProperties
properties
=
load
(
true
,
"spring.data.neo4j.uri=http://user:secret@my-server:7474"
);
Configuration
configuration
=
properties
.
createConfiguration
();
assertDriver
(
configuration
,
Neo4jProperties
.
HTTP_DRIVER
,
...
...
@@ -118,7 +110,7 @@ public class Neo4jPropertiesTests {
@Test
public
void
embeddedModeDisabledUseHttpUri
()
{
Neo4jProperties
properties
=
load
(
EnumSet
.
of
(
AvailableDriver
.
EMBEDDED
)
,
Neo4jProperties
properties
=
load
(
true
,
"spring.data.neo4j.embedded.enabled=false"
);
Configuration
configuration
=
properties
.
createConfiguration
();
assertDriver
(
configuration
,
Neo4jProperties
.
HTTP_DRIVER
,
...
...
@@ -127,7 +119,7 @@ public class Neo4jPropertiesTests {
@Test
public
void
embeddedModeWithRelativeLocation
()
{
Neo4jProperties
properties
=
load
(
EnumSet
.
of
(
AvailableDriver
.
EMBEDDED
)
,
Neo4jProperties
properties
=
load
(
true
,
"spring.data.neo4j.uri=target/neo4j/my.db"
);
Configuration
configuration
=
properties
.
createConfiguration
();
assertDriver
(
configuration
,
Neo4jProperties
.
EMBEDDED_DRIVER
,
...
...
@@ -159,15 +151,20 @@ public class Neo4jPropertiesTests {
}
}
public
Neo4jProperties
load
(
final
Set
<
AvailableDriver
>
availableDrivers
,
String
...
environment
)
{
public
Neo4jProperties
load
(
final
boolean
embeddedAvailable
,
String
...
environment
)
{
AnnotationConfigApplicationContext
ctx
=
new
AnnotationConfigApplicationContext
();
ctx
.
setClassLoader
(
new
URLClassLoader
(
new
URL
[
0
],
getClass
().
getClassLoader
())
{
@Override
protected
Class
<?>
loadClass
(
String
name
,
boolean
resolve
)
throws
ClassNotFoundException
{
if
(
AvailableDriver
.
shouldLoad
(
availableDrivers
,
name
))
{
return
AvailableDriver
.
loadClass
(
name
);
if
(
name
.
equals
(
Neo4jProperties
.
EMBEDDED_DRIVER
))
{
if
(
embeddedAvailable
)
{
return
TestEmbeddedDriver
.
class
;
}
else
{
throw
new
ClassNotFoundException
();
}
}
return
super
.
loadClass
(
name
,
resolve
);
}
...
...
@@ -186,42 +183,8 @@ public class Neo4jPropertiesTests {
}
private
enum
AvailableDriver
{
EMBEDDED
(
Neo4jProperties
.
EMBEDDED_DRIVER
,
TestEmbeddedDriver
.
class
),
BOLT
(
Neo4jProperties
.
BOLT_DRIVER
,
TestBoltDriver
.
class
);
private
final
String
driverName
;
private
final
Class
<?>
driverStub
;
AvailableDriver
(
final
String
driverName
,
final
Class
<?>
driverStub
)
{
this
.
driverName
=
driverName
;
this
.
driverStub
=
driverStub
;
}
public
static
boolean
shouldLoad
(
Set
<
AvailableDriver
>
availableDrivers
,
String
name
)
{
for
(
AvailableDriver
driver
:
availableDrivers
)
{
if
(
driver
.
driverName
.
equals
(
name
)
)
{
return
true
;
}
}
return
false
;
}
public
static
Class
<?>
loadClass
(
String
className
)
throws
ClassNotFoundException
{
for
(
AvailableDriver
driver
:
AvailableDriver
.
values
()
)
{
if
(
driver
.
driverName
.
equals
(
className
)
)
{
return
driver
.
driverStub
;
}
}
throw
new
ClassNotFoundException
();
}
}
private
static
class
TestEmbeddedDriver
{
}
private
static
class
TestBoltDriver
{
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment