Skip to content

Commit dd839bc

Browse files
author
Otávio Santana
authored
Merge pull request #15 from ivanjunckes/cassandra_changes
Cassandra improvements
2 parents 530d05e + 10b3642 commit dd839bc

File tree

8 files changed

+64
-7
lines changed

8 files changed

+64
-7
lines changed

cassandra-driver/pom.xml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,21 @@
5757
<artifactId>cassandra-driver-core</artifactId>
5858
<version>3.0.3</version>
5959
</dependency>
60+
<dependency>
61+
<groupId>org.cassandraunit</groupId>
62+
<artifactId>cassandra-unit</artifactId>
63+
<version>3.1.3.2</version>
64+
</dependency>
65+
<dependency>
66+
<groupId>com.google.guava</groupId>
67+
<artifactId>guava</artifactId>
68+
<version>19.0</version>
69+
</dependency>
70+
<dependency>
71+
<groupId>org.fusesource</groupId>
72+
<artifactId>sigar</artifactId>
73+
<version>1.6.4</version>
74+
</dependency>
6075
</dependencies>
6176
<build>
6277
<plugins>

cassandra-driver/src/main/java/org/jnosql/diana/cassandra/column/CassandraProperties.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ class CassandraProperties {
3636

3737
private static final String DEFAULT_THREADS_NUMBER = Integer.toString(Runtime.getRuntime().availableProcessors());
3838
private static final String CASSANDRA_HOSTER = "cassandra-host";
39+
private static final String CASSANDRA_PORT = "cassandra-port";
3940
private static final String CASSANDRA_QUERY = "cassandra-query";
4041
private static final String CASSANDRA_THREADS_NUMBER = "cassandra-threads-number";
4142
private static final String CASSANDRA_SSL = "cassandra-ssl";
@@ -106,6 +107,8 @@ public static CassandraProperties of(Map<String, String> configurations) {
106107

107108
configurations.keySet().stream().filter(s -> s.startsWith(CASSANDRA_QUERY))
108109
.sorted().map(configurations::get).forEach(cp::addQuery);
110+
111+
cp.port = OptionalInt.of(Integer.valueOf(configurations.getOrDefault(CASSANDRA_PORT, "9042")));
109112
cp.numTreads = configurations.getOrDefault(CASSANDRA_THREADS_NUMBER, DEFAULT_THREADS_NUMBER);
110113
cp.withSSL = Boolean.valueOf(configurations.getOrDefault(CASSANDRA_SSL, FALSE.toString()));
111114
cp.withoutMetrics = Boolean.valueOf(configurations.getOrDefault(CASSANDRA_METRICS, FALSE.toString()));

cassandra-driver/src/test/java/org/jnosql/diana/cassandra/column/CassandraColumnFamilyManagerAsyncTest.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,16 @@
2020
package org.jnosql.diana.cassandra.column;
2121

2222
import com.datastax.driver.core.ConsistencyLevel;
23+
import org.apache.thrift.transport.TTransportException;
24+
import org.cassandraunit.utils.EmbeddedCassandraServerHelper;
2325
import org.jnosql.diana.api.column.Column;
2426
import org.jnosql.diana.api.column.ColumnEntity;
2527
import org.jnosql.diana.api.column.Columns;
28+
import org.junit.After;
2629
import org.junit.Before;
2730
import org.junit.Test;
2831

32+
import java.io.IOException;
2933
import java.util.HashMap;
3034
import java.util.List;
3135
import java.util.Map;
@@ -42,7 +46,8 @@ public class CassandraColumnFamilyManagerAsyncTest {
4246
private CassandraColumnFamilyManagerAsync columnEntityManager;
4347

4448
@Before
45-
public void setUp() {
49+
public void setUp() throws InterruptedException, IOException, TTransportException {
50+
EmbeddedCassandraServerHelper.startEmbeddedCassandra();
4651
CassandraConfiguration cassandraConfiguration = new CassandraConfiguration();
4752
CassandraDocumentEntityManagerFactory entityManagerFactory = cassandraConfiguration.get();
4853
columnEntityManager = entityManagerFactory.getAsync(KEY_SPACE);
@@ -78,4 +83,9 @@ private ColumnEntity getColumnFamily() {
7883
columns.forEach(columnFamily::add);
7984
return columnFamily;
8085
}
86+
87+
@After
88+
public void end(){
89+
EmbeddedCassandraServerHelper.cleanEmbeddedCassandra();
90+
}
8191
}

cassandra-driver/src/test/java/org/jnosql/diana/cassandra/column/CassandraColumnFamilyManagerFactoryTest.java

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,15 @@
2121
package org.jnosql.diana.cassandra.column;
2222

2323
import com.datastax.driver.core.Cluster;
24+
import org.apache.thrift.transport.TTransportException;
25+
import org.cassandraunit.utils.EmbeddedCassandraServerHelper;
2426
import org.jnosql.diana.api.column.ColumnFamilyManager;
2527
import org.jnosql.diana.api.column.ColumnFamilyManagerAsync;
26-
import org.jnosql.diana.api.column.ColumnFamilyManagerFactory;
28+
import org.junit.After;
2729
import org.junit.Before;
2830
import org.junit.Test;
2931

32+
import java.io.IOException;
3033
import java.util.HashMap;
3134
import java.util.Map;
3235

@@ -39,10 +42,12 @@ public class CassandraColumnFamilyManagerFactoryTest {
3942
private CassandraDocumentEntityManagerFactory subject;
4043

4144
@Before
42-
public void setUp() {
45+
public void setUp() throws InterruptedException, IOException, TTransportException {
4346
Map<String, String> configurations = new HashMap<>();
4447
configurations.put("cassandra-hoster-1", "localhost");
45-
configurations.put("cassandra-initial-query-1", " CREATE KEYSPACE IF NOT EXISTS newKeySpace WITH replication = {'class': 'SimpleStrategy', 'replication_factor' : 3};");
48+
configurations.put("cassandra-port", "9142");
49+
configurations.put("cassandra-query-1", " CREATE KEYSPACE IF NOT EXISTS newKeySpace WITH replication = {'class': 'SimpleStrategy', 'replication_factor' : 3};");
50+
EmbeddedCassandraServerHelper.startEmbeddedCassandra();
4651
CassandraConfiguration cassandraConfiguration = new CassandraConfiguration();
4752
subject = cassandraConfiguration.getManagerFactory(configurations);
4853
}
@@ -67,4 +72,8 @@ public void shouldCloseNode() throws Exception {
6772
assertTrue(cluster.isClosed());
6873
}
6974

75+
@After
76+
public void end(){
77+
EmbeddedCassandraServerHelper.cleanEmbeddedCassandra();
78+
}
7079
}

cassandra-driver/src/test/java/org/jnosql/diana/cassandra/column/CassandraColumnFamilyManagerTest.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,17 +22,21 @@
2222

2323
import com.datastax.driver.core.ConsistencyLevel;
2424
import com.datastax.driver.core.Session;
25+
import org.apache.thrift.transport.TTransportException;
26+
import org.cassandraunit.utils.EmbeddedCassandraServerHelper;
2527
import org.jnosql.diana.api.Value;
2628
import org.jnosql.diana.api.column.Column;
2729
import org.jnosql.diana.api.column.ColumnCondition;
2830
import org.jnosql.diana.api.column.ColumnDeleteQuery;
2931
import org.jnosql.diana.api.column.ColumnEntity;
3032
import org.jnosql.diana.api.column.ColumnQuery;
3133
import org.jnosql.diana.api.column.Columns;
34+
import org.junit.After;
3235
import org.junit.Assert;
3336
import org.junit.Before;
3437
import org.junit.Test;
3538

39+
import java.io.IOException;
3640
import java.util.HashMap;
3741
import java.util.List;
3842
import java.util.Map;
@@ -55,7 +59,8 @@ public class CassandraColumnFamilyManagerTest {
5559
private CassandraColumnFamilyManager columnEntityManager;
5660

5761
@Before
58-
public void setUp() {
62+
public void setUp() throws InterruptedException, IOException, TTransportException {
63+
EmbeddedCassandraServerHelper.startEmbeddedCassandra();
5964
CassandraConfiguration cassandraConfiguration = new CassandraConfiguration();
6065
CassandraDocumentEntityManagerFactory entityManagerFactory = cassandraConfiguration.get();
6166
columnEntityManager = entityManagerFactory.get(KEY_SPACE);
@@ -196,4 +201,8 @@ private ColumnEntity getColumnFamily() {
196201
return columnFamily;
197202
}
198203

204+
@After
205+
public void end(){
206+
EmbeddedCassandraServerHelper.cleanEmbeddedCassandra();
207+
}
199208
}

cassandra-driver/src/test/java/org/jnosql/diana/cassandra/column/CassandraConfigurationTest.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,13 @@
2121
package org.jnosql.diana.cassandra.column;
2222

2323

24+
import org.apache.thrift.transport.TTransportException;
25+
import org.cassandraunit.utils.EmbeddedCassandraServerHelper;
2426
import org.jnosql.diana.api.column.ColumnFamilyManagerFactory;
27+
import org.junit.After;
2528
import org.junit.Test;
2629

30+
import java.io.IOException;
2731
import java.util.HashMap;
2832
import java.util.Map;
2933

@@ -32,9 +36,11 @@
3236
public class CassandraConfigurationTest {
3337

3438
@Test
35-
public void shoudlCreateDocumentEntityManagerFactory() {
39+
public void shoudlCreateDocumentEntityManagerFactory() throws InterruptedException, IOException, TTransportException {
3640
Map<String, String> configurations = new HashMap<>();
3741
configurations.put("cassandra-hoster-1", "localhost");
42+
configurations.put("cassandra-port", "9142");
43+
EmbeddedCassandraServerHelper.startEmbeddedCassandra();
3844
CassandraConfiguration cassandraConfiguration = new CassandraConfiguration();
3945
ColumnFamilyManagerFactory entityManagerFactory = cassandraConfiguration.getManagerFactory(configurations);
4046
assertNotNull(entityManagerFactory);
@@ -52,4 +58,9 @@ public void shouldReturnNPEWhenMapIsNull() {
5258
CassandraConfiguration cassandraConfiguration = new CassandraConfiguration();
5359
cassandraConfiguration.getManagerFactory(null);
5460
}
61+
62+
@After
63+
public void end(){
64+
EmbeddedCassandraServerHelper.cleanEmbeddedCassandra();
65+
}
5566
}

cassandra-driver/src/test/resources/diana-cassandra.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
#
2020

2121
cassandra-host-1=localhost
22+
cassandra-port=9142
2223
cassandra-threads-number=4
2324
cassandra-query-1=CREATE KEYSPACE IF NOT EXISTS newKeySpace WITH replication = {'class': 'SimpleStrategy', 'replication_factor' : 3};
2425
cassandra-query-2=DROP TABLE IF EXISTS newKeySpace.newColumnFamily;

docker.sh

100644100755
Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
docker run -e ARANGO_NO_AUTH=1 -d --name arangodb-instance -p 8529:8529 -d arangodb/arangodb
2-
docker run --name cassandra-instance -p 9042:9042 -d cassandra
32
docker run -d --name couchbase-instance -p 8091-8094:8091-8094 -p 11210:11210 couchbase
43
docker run --name elasticsearch-instance -p 9300:9300 -p 9200:9200 -d elasticsearch
54
docker run --name mongo-instance -p 27017:27017 -d mongo

0 commit comments

Comments
 (0)