blob: f9cd7a62c51b09f39eac000237107d2b7038c739 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
package org.apache.tuscany.nosqldatastore.cassandra;
import me.prettyprint.cassandra.service.CassandraHostConfigurator;
import me.prettyprint.cassandra.service.ThriftCluster;
import me.prettyprint.cassandra.service.ThriftKsDef;
import me.prettyprint.hector.api.ddl.KeyspaceDefinition;
import org.apache.tuscany.nosqldatastore.Database;
import org.apache.tuscany.nosqldatastore.Session;
public class CassandraSession implements Session {
private CassandraHostConfigurator cassandraHostConfigurator;
private ThriftCluster cluster;
public CassandraSession(String clusterName) {
cassandraHostConfigurator = new CassandraHostConfigurator("localhost:9160");
cluster = new ThriftCluster(clusterName, cassandraHostConfigurator);
}
public Database createDatabase(String keyspaceName) {
KeyspaceDefinition ksDef = new ThriftKsDef(keyspaceName, "org.apache.cassandra.locator.SimpleStrategy", 1, null);
cluster.addKeyspace(ksDef);
Database database = new CassandraDatabase(keyspaceName, cluster);
return database;
}
public Database getDatabase(String keyspaceName) {
Database database = new CassandraDatabase(keyspaceName, cluster);
return database;
}
public void deleteDatabase(String keyspaceName) {
cluster.dropKeyspace(keyspaceName);
}
}
|