aboutsummaryrefslogtreecommitdiffstats
path: root/src/androidTest/java/org/whispersystems/test/groups/InMemorySenderKeyStore.java
diff options
context:
space:
mode:
authorMoxie Marlinspike <moxie@thoughtcrime.org>2014-11-24 12:54:30 -0800
committerMoxie Marlinspike <moxie@thoughtcrime.org>2014-11-24 12:54:30 -0800
commit60800e155612bea797eed93c67046a23d26054cc (patch)
treed88368c1c26162e27e790195133ca2b526597afe /src/androidTest/java/org/whispersystems/test/groups/InMemorySenderKeyStore.java
Break out into separate repo.
Diffstat (limited to 'src/androidTest/java/org/whispersystems/test/groups/InMemorySenderKeyStore.java')
-rw-r--r--src/androidTest/java/org/whispersystems/test/groups/InMemorySenderKeyStore.java33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/androidTest/java/org/whispersystems/test/groups/InMemorySenderKeyStore.java b/src/androidTest/java/org/whispersystems/test/groups/InMemorySenderKeyStore.java
new file mode 100644
index 00000000..450d802d
--- /dev/null
+++ b/src/androidTest/java/org/whispersystems/test/groups/InMemorySenderKeyStore.java
@@ -0,0 +1,33 @@
+package org.whispersystems.test.groups;
+
+import org.whispersystems.libaxolotl.groups.state.SenderKeyRecord;
+import org.whispersystems.libaxolotl.groups.state.SenderKeyStore;
+
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+public class InMemorySenderKeyStore implements SenderKeyStore {
+
+ private final Map<String, SenderKeyRecord> store = new HashMap<>();
+
+ @Override
+ public void storeSenderKey(String senderKeyId, SenderKeyRecord record) {
+ store.put(senderKeyId, record);
+ }
+
+ @Override
+ public SenderKeyRecord loadSenderKey(String senderKeyId) {
+ try {
+ SenderKeyRecord record = store.get(senderKeyId);
+
+ if (record == null) {
+ return new SenderKeyRecord();
+ } else {
+ return new SenderKeyRecord(record.serialize());
+ }
+ } catch (IOException e) {
+ throw new AssertionError(e);
+ }
+ }
+}