aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/eu/siacs/conversations/generator/MessageGenerator.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/eu/siacs/conversations/generator/MessageGenerator.java')
-rw-r--r--src/main/java/eu/siacs/conversations/generator/MessageGenerator.java21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/main/java/eu/siacs/conversations/generator/MessageGenerator.java b/src/main/java/eu/siacs/conversations/generator/MessageGenerator.java
index bc1148d9..e6032e0c 100644
--- a/src/main/java/eu/siacs/conversations/generator/MessageGenerator.java
+++ b/src/main/java/eu/siacs/conversations/generator/MessageGenerator.java
@@ -1,5 +1,7 @@
package eu.siacs.conversations.generator;
+import android.util.Log;
+
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
@@ -7,6 +9,11 @@ import java.util.TimeZone;
import net.java.otr4j.OtrException;
import net.java.otr4j.session.Session;
+
+import eu.siacs.conversations.Config;
+import eu.siacs.conversations.crypto.axolotl.AxolotlService;
+import eu.siacs.conversations.crypto.axolotl.NoSessionsCreatedException;
+import eu.siacs.conversations.crypto.axolotl.XmppAxolotlMessage;
import eu.siacs.conversations.entities.Account;
import eu.siacs.conversations.entities.Conversation;
import eu.siacs.conversations.entities.Message;
@@ -59,6 +66,20 @@ public class MessageGenerator extends AbstractGenerator {
delay.setAttribute("stamp", mDateFormat.format(date));
}
+ public MessagePacket generateAxolotlChat(Message message) throws NoSessionsCreatedException{
+ return generateAxolotlChat(message, false);
+ }
+
+ public MessagePacket generateAxolotlChat(Message message, boolean addDelay) throws NoSessionsCreatedException{
+ MessagePacket packet = preparePacket(message, addDelay);
+ AxolotlService service = message.getConversation().getAccount().getAxolotlService();
+ Log.d(Config.LOGTAG, "Submitting message to axolotl service for send processing...");
+ XmppAxolotlMessage axolotlMessage = service.processSending(message.getContact(),
+ message.getBody());
+ packet.setAxolotlMessage(axolotlMessage.toXml());
+ return packet;
+ }
+
public MessagePacket generateOtrChat(Message message) {
return generateOtrChat(message, false);
}