use of org.scale7.cassandra.pelops.OperandPolicy in project scale7-pelops by s7.
the class Pelops method addPool.
/**
* Add a new Thrift connection pool for a specific cluster and keyspace. The name given to the pool is later used
* when creating operands such as <code>Mutator</code> and <code>Selector</code>.
* @param poolName A name used to reference the pool e.g. "MainDatabase" or "LucandraIndexes"
* @param cluster The Cassandra cluster that network connections will be made to
* @param keyspace The keyspace in the Cassandra cluster against which pool operations will apply
* @param policy The configuration used by the pool
* @param operandPolicy The configuration used by the {@link org.scale7.cassandra.pelops.Operand}
*/
public static void addPool(String poolName, Cluster cluster, String keyspace, CommonsBackedPool.Policy policy, OperandPolicy operandPolicy) {
IThriftPool pool = new CommonsBackedPool(cluster, keyspace, policy, operandPolicy);
addPool(poolName, pool);
}
use of org.scale7.cassandra.pelops.OperandPolicy in project scale7-pelops by s7.
the class MutatorIntegrationTest method testWriteColumnsWithDeleteIfNullFromConstructor.
@Test
public void testWriteColumnsWithDeleteIfNullFromConstructor() throws Exception {
IThriftPool pool = new DebuggingPool(getCluster(), KEYSPACE, new OperandPolicy(3, true));
Bytes rowKey = Bytes.fromLong(Long.MAX_VALUE);
Bytes colName1 = Bytes.fromInt(1);
Bytes colName2 = Bytes.fromInt(2);
Mutator mutator = pool.createMutator();
assertTrue("Mutator is not in a valid state for this test", mutator.deleteIfNull);
List<Column> columns = mutator.newColumnList(mutator.newColumn(colName1, (Bytes) null), mutator.newColumn(colName2, Bytes.fromInt(1)));
mutator.writeColumns(CF, rowKey, columns);
// make sure there is at least one deletion
boolean isOneDeletion = false;
for (Mutation mutation : mutator.getMutationList(CF, rowKey)) {
if (mutation.isSetDeletion()) {
isOneDeletion = true;
break;
}
}
assertTrue("There should be one deletion", isOneDeletion);
pool.shutdown();
}
use of org.scale7.cassandra.pelops.OperandPolicy in project scale7-pelops by s7.
the class MutatorIntegrationTest method testConstructorDeleteIfNullFromPolicyState.
@Test
public void testConstructorDeleteIfNullFromPolicyState() {
OperandPolicy policy = new OperandPolicy();
policy.setDeleteIfNull(true);
IThriftPool pool = Mockito.mock(IThriftPool.class);
Mockito.when(pool.getOperandPolicy()).thenReturn(policy);
Mutator mutator = new Mutator(pool);
assertTrue("Mutator is not in the expected state", mutator.deleteIfNull);
}
Aggregations