From f9d7c1de573fb10559fc5bc69b40f02b25f48769 Mon Sep 17 00:00:00 2001 From: Matt Corallo Date: Wed, 8 Jan 2014 15:28:39 -1000 Subject: [PATCH] Fix StoredMessages calls (now all api calls have at least been tested on a running server...) --- .../whispersystems/textsecuregcm/push/PushSender.java | 2 +- .../textsecuregcm/storage/StoredMessageManager.java | 11 +++++++++-- .../textsecuregcm/storage/StoredMessages.java | 6 +++--- 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/whispersystems/textsecuregcm/push/PushSender.java b/src/main/java/org/whispersystems/textsecuregcm/push/PushSender.java index f0054baf2..07e6b34bd 100644 --- a/src/main/java/org/whispersystems/textsecuregcm/push/PushSender.java +++ b/src/main/java/org/whispersystems/textsecuregcm/push/PushSender.java @@ -106,7 +106,7 @@ public class PushSender { apnSender.sendMessage(account.getApnRegistrationId(), outgoingMessage); } - private void storeFetchedMessage(Account account, EncryptedOutgoingMessage outgoingMessage) { + private void storeFetchedMessage(Account account, EncryptedOutgoingMessage outgoingMessage) throws IOException { storedMessageManager.storeMessage(account, outgoingMessage); } } diff --git a/src/main/java/org/whispersystems/textsecuregcm/storage/StoredMessageManager.java b/src/main/java/org/whispersystems/textsecuregcm/storage/StoredMessageManager.java index d9d563bac..b400dd914 100644 --- a/src/main/java/org/whispersystems/textsecuregcm/storage/StoredMessageManager.java +++ b/src/main/java/org/whispersystems/textsecuregcm/storage/StoredMessageManager.java @@ -18,13 +18,20 @@ package org.whispersystems.textsecuregcm.storage; import org.whispersystems.textsecuregcm.entities.EncryptedOutgoingMessage; +import java.io.IOException; +import java.util.List; + public class StoredMessageManager { StoredMessages storedMessages; public StoredMessageManager(StoredMessages storedMessages) { this.storedMessages = storedMessages; } - public void storeMessage(Account account, EncryptedOutgoingMessage outgoingMessage) { - storedMessages.insert(account.getId(), outgoingMessage); + public void storeMessage(Account account, EncryptedOutgoingMessage outgoingMessage) throws IOException { + storedMessages.insert(account.getId(), outgoingMessage.serialize()); + } + + public List getStoredMessage(Account account) { + return storedMessages.getMessagesForAccountId(account.getId()); } } diff --git a/src/main/java/org/whispersystems/textsecuregcm/storage/StoredMessages.java b/src/main/java/org/whispersystems/textsecuregcm/storage/StoredMessages.java index 361771b63..91946644b 100644 --- a/src/main/java/org/whispersystems/textsecuregcm/storage/StoredMessages.java +++ b/src/main/java/org/whispersystems/textsecuregcm/storage/StoredMessages.java @@ -25,9 +25,9 @@ import java.util.List; public interface StoredMessages { - @SqlUpdate("INSERT INTO stored_messages (destination_id, encrypted_message) VALUES :destination_id, :encrypted_message") - void insert(@Bind("destination_id") long destinationAccountId, @Bind("encrypted_message") EncryptedOutgoingMessage encryptedOutgoingMessage); + @SqlUpdate("INSERT INTO stored_messages (destination_id, encrypted_message) VALUES (:destination_id, :encrypted_message)") + void insert(@Bind("destination_id") long destinationAccountId, @Bind("encrypted_message") String encryptedOutgoingMessage); @SqlQuery("SELECT encrypted_message FROM stored_messages WHERE destination_id = :account_id") - List getMessagesForAccountId(@Bind("account_id") long accountId); + List getMessagesForAccountId(@Bind("account_id") long accountId); }