use of com.aerospike.client.Record in project aerospike-client-java by aerospike.
the class ListMap method testMapStrings.
/**
* Write/Read HashMap<String,String> directly instead of relying on java serializer.
*/
private void testMapStrings(AerospikeClient client, Parameters params) throws Exception {
console.info("Read/Write HashMap<String,String>");
Key key = new Key(params.namespace, params.set, "mapkey1");
client.delete(params.writePolicy, key);
HashMap<String, String> map = new HashMap<String, String>();
map.put("key1", "string1");
map.put("key2", "string2");
map.put("key3", "string3");
Bin bin = new Bin(params.getBinName("mapbin1"), map);
client.put(params.writePolicy, key, bin);
Record record = client.get(params.policy, key, bin.name);
Map<?, ?> receivedMap = (Map<?, ?>) record.getValue(bin.name);
validateSize(3, receivedMap.size());
validate("string1", receivedMap.get("key1"));
validate("string2", receivedMap.get("key2"));
validate("string3", receivedMap.get("key3"));
console.info("Read/Write HashMap<String,String> successful");
}
use of com.aerospike.client.Record in project aerospike-client-java by aerospike.
the class ListMap method testListStrings.
/**
* Write/Read ArrayList<String> directly instead of relying on java serializer.
*/
private void testListStrings(AerospikeClient client, Parameters params) throws Exception {
console.info("Read/Write ArrayList<String>");
Key key = new Key(params.namespace, params.set, "listkey1");
client.delete(params.writePolicy, key);
ArrayList<String> list = new ArrayList<String>();
list.add("string1");
list.add("string2");
list.add("string3");
Bin bin = new Bin(params.getBinName("listbin1"), list);
client.put(params.writePolicy, key, bin);
Record record = client.get(params.policy, key, bin.name);
List<?> receivedList = (List<?>) record.getValue(bin.name);
validateSize(3, receivedList.size());
validate("string1", receivedList.get(0));
validate("string2", receivedList.get(1));
validate("string3", receivedList.get(2));
console.info("Read/Write ArrayList<String> successful.");
}
use of com.aerospike.client.Record in project aerospike-client-java by aerospike.
the class ListMap method testMapComplex.
/**
* Write/Read HashMap<Object,Object> directly instead of relying on java serializer.
*/
private void testMapComplex(AerospikeClient client, Parameters params) throws Exception {
console.info("Read/Write HashMap<Object,Object>");
Key key = new Key(params.namespace, params.set, "mapkey2");
client.delete(params.writePolicy, key);
byte[] blob = new byte[] { 3, 52, 125 };
List<Integer> list = new ArrayList<Integer>();
list.add(100034);
list.add(12384955);
list.add(3);
list.add(512);
HashMap<Object, Object> map = new HashMap<Object, Object>();
map.put("key1", "string1");
map.put("key2", 2);
map.put("key3", blob);
// map.put("key4", Value.getAsList(list)) works too
map.put("key4", list);
map.put("key5", true);
map.put("key6", false);
Bin bin = new Bin(params.getBinName("mapbin2"), map);
client.put(params.writePolicy, key, bin);
Record record = client.get(params.policy, key, bin.name);
Map<?, ?> receivedMap = (Map<?, ?>) record.getValue(bin.name);
validateSize(6, receivedMap.size());
validate("string1", receivedMap.get("key1"));
// Server convert numbers to long, so must expect long.
validate(2L, receivedMap.get("key2"));
validate(blob, (byte[]) receivedMap.get("key3"));
List<?> receivedInner = (List<?>) receivedMap.get("key4");
validateSize(4, receivedInner.size());
validate(100034L, receivedInner.get(0));
validate(12384955L, receivedInner.get(1));
validate(3L, receivedInner.get(2));
validate(512L, receivedInner.get(3));
validate(true, receivedMap.get("key5"));
validate(false, receivedMap.get("key6"));
console.info("Read/Write HashMap<Object,Object> successful");
}
use of com.aerospike.client.Record in project aerospike-client-java by aerospike.
the class ListMap method testListComplex.
/**
* Write/Read ArrayList<Object> directly instead of relying on java serializer.
*/
private void testListComplex(AerospikeClient client, Parameters params) throws Exception {
console.info("Read/Write ArrayList<Object>");
Key key = new Key(params.namespace, params.set, "listkey2");
client.delete(params.writePolicy, key);
byte[] blob = new byte[] { 3, 52, 125 };
ArrayList<Object> list = new ArrayList<Object>();
list.add("string1");
list.add(2);
list.add(blob);
Bin bin = new Bin(params.getBinName("listbin2"), list);
client.put(params.writePolicy, key, bin);
Record record = client.get(params.policy, key, bin.name);
List<?> receivedList = (List<?>) record.getValue(bin.name);
validateSize(3, receivedList.size());
validate("string1", receivedList.get(0));
// Server convert numbers to long, so must expect long.
validate(2L, receivedList.get(1));
validate(blob, (byte[]) receivedList.get(2));
console.info("Read/Write ArrayList<Object> successful.");
}
use of com.aerospike.client.Record in project aerospike-client-java by aerospike.
the class TestBatch method batchReadHeaders.
@Test
public void batchReadHeaders() {
Key[] keys = new Key[Size];
for (int i = 0; i < Size; i++) {
keys[i] = new Key(args.namespace, args.set, KeyPrefix + (i + 1));
}
Record[] records = client.getHeader(null, keys);
assertEquals(Size, records.length);
for (int i = 0; i < records.length; i++) {
Key key = keys[i];
Record record = records[i];
assertRecordFound(key, record);
assertNotEquals(0, record.generation);
assertNotEquals(0, record.expiration);
}
}
Aggregations