use of com.ms.silverking.cloud.dht.PutOptions in project SilverKing by Morgan-Stanley.
the class DevTest method test.
public void test(int numKeys, int reps, String namespace, Compression compression, ChecksumType checksumType, EnumSet<Test> tests) throws Exception {
DHTClient client;
ClientDHTConfiguration dhtConfig;
DHTSession session;
AsynchronousNamespacePerspective<String, String> asyncNSP;
AsyncRetrieval<String, String> asyncRetrieval;
AsyncPut<String> asyncPut;
Stopwatch sw;
PutOptions putOptions;
asyncPut = null;
client = new DHTClient();
dhtConfig = new ClientDHTConfiguration(dhtName, new ZooKeeperConfig(zkLocs));
session = client.openSession(dhtConfig);
putOptions = session.getDefaultNamespaceOptions().getDefaultPutOptions().compression(compression).checksumType(checksumType);
asyncNSP = session.openAsyncNamespacePerspective(namespace, String.class, String.class);
sw = new SimpleStopwatch();
if (tests.contains(Test.Put)) {
System.out.println("\n\n\t\tPUT");
for (int i = 0; i < reps; i++) {
// asyncPut = asyncNSP.put("Hello"+ i, "world!");
asyncPut = asyncNSP.put(createMap(i, numKeys), putOptions);
asyncPut.waitForCompletion();
}
sw.stop();
displayTimes(sw, reps, numKeys, valueSize);
}
if (tests.contains(Test.Get)) {
System.out.println("\n\n\t\tGET");
GetOptions getOptions;
sw.reset();
getOptions = OptionsHelper.newGetOptions(RetrievalType.VALUE_AND_META_DATA, session.getDefaultNamespaceOptions().getDefaultGetOptions().getVersionConstraint());
for (int i = 0; i < reps; i++) {
Set<String> keys;
Map<String, ? extends StoredValue<String>> values;
keys = createSet(i, numKeys);
asyncRetrieval = asyncNSP.get(keys, getOptions);
asyncRetrieval.waitForCompletion();
if (displayValues) {
System.out.printf("keys: %s\n", CollectionUtil.toString(keys));
values = asyncRetrieval.getStoredValues();
System.out.printf("values: %s\n", CollectionUtil.toString(values.entrySet()));
for (Entry<String, ? extends StoredValue<String>> entry : values.entrySet()) {
System.out.println(entry.getKey() + " -> " + entry.getValue().getValue() + "\t" + entry.getValue().getMetaData().toString(true));
}
}
}
sw.stop();
displayTimes(sw, reps, numKeys, valueSize);
}
}
use of com.ms.silverking.cloud.dht.PutOptions in project SilverKing by Morgan-Stanley.
the class PerspectiveTest method test_NamespaceOptions_vs_NamespacePerspectiveOptions.
// @Test
public void test_NamespaceOptions_vs_NamespacePerspectiveOptions() throws ClientException, IOException {
Namespace ns = session.createNamespace(namespaceName, session.getDefaultNamespaceOptions().versionMode(NamespaceVersionMode.CLIENT_SPECIFIED).revisionMode(RevisionMode.UNRESTRICTED_REVISIONS));
SynchronousNamespacePerspective<String, String> syncNSPString = ns.openSyncPerspective(String.class, String.class);
SynchronousNamespacePerspective<String, Integer> syncNSPInt = ns.openSyncPerspective(String.class, Integer.class);
PutOptions poString = syncNSPString.getOptions().getDefaultPutOptions();
GetOptions goString = syncNSPString.getOptions().getDefaultGetOptions();
PutOptions poInt = syncNSPInt.getOptions().getDefaultPutOptions();
GetOptions goInt = syncNSPInt.getOptions().getDefaultGetOptions();
syncNSPString.put("k", "v1", poString.version(1));
syncNSPInt.put("k", 2, poInt.version(2));
System.out.println(syncNSPString);
System.out.println(syncNSPString.get("k"));
System.out.println(syncNSPString.get("k", goString.versionConstraint(VersionConstraint.exactMatch(1))).getValue());
System.out.println("-");
System.out.println(syncNSPInt.get("k"));
System.out.println(syncNSPInt.get("k", goInt.versionConstraint(VersionConstraint.exactMatch(2))).getValue());
System.out.println(syncNSPInt.get("k", goInt.versionConstraint(VersionConstraint.exactMatch(1))).getValue());
}
Aggregations