aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/generator/IqGenerator.java
diff options
context:
space:
mode:
authorChristian Schneppe <christian.schneppe@pix-art.de>2019-10-26 17:48:13 +0200
committerChristian Schneppe <christian.schneppe@pix-art.de>2019-10-26 17:48:13 +0200
commit6df9c91b30c01beeb5d3f25d68f599e0dbe4c319 (patch)
treeee22edb2587cae2748db3b93878e392a619a3e91 /src/main/java/de/pixart/messenger/generator/IqGenerator.java
parent5e41a659b7256c46667086cf690c428f7c764a4c (diff)
WIP Bookmarks 2 support
Diffstat (limited to 'src/main/java/de/pixart/messenger/generator/IqGenerator.java')
-rw-r--r--src/main/java/de/pixart/messenger/generator/IqGenerator.java24
1 files changed, 23 insertions, 1 deletions
diff --git a/src/main/java/de/pixart/messenger/generator/IqGenerator.java b/src/main/java/de/pixart/messenger/generator/IqGenerator.java
index e533dd723..812ffcb9e 100644
--- a/src/main/java/de/pixart/messenger/generator/IqGenerator.java
+++ b/src/main/java/de/pixart/messenger/generator/IqGenerator.java
@@ -24,6 +24,7 @@ import de.pixart.messenger.Config;
import de.pixart.messenger.R;
import de.pixart.messenger.crypto.axolotl.AxolotlService;
import de.pixart.messenger.entities.Account;
+import de.pixart.messenger.entities.Bookmark;
import de.pixart.messenger.entities.Conversation;
import de.pixart.messenger.entities.DownloadableFile;
import de.pixart.messenger.services.MessageArchiveService;
@@ -124,6 +125,10 @@ public class IqGenerator extends AbstractGenerator {
return packet;
}
+ public IqPacket retrieveBookmarks() {
+ return retrieve(Namespace.BOOKMARK, null);
+ }
+
public IqPacket publishNick(String nick) {
final Element item = new Element("item");
item.addChild("nick", Namespace.NICK).setContent(nick);
@@ -146,8 +151,12 @@ public class IqGenerator extends AbstractGenerator {
}
public IqPacket publishElement(final String namespace, final Element element, final Bundle options) {
+ return publishElement(namespace, element, "curent", options);
+ }
+
+ public IqPacket publishElement(final String namespace, final Element element, String id, final Bundle options) {
final Element item = new Element("item");
- item.setAttribute("id", "current");
+ item.setAttribute("id", id);
item.addChild(element);
return publish(namespace, item, options);
}
@@ -221,6 +230,19 @@ public class IqGenerator extends AbstractGenerator {
return publish(AxolotlService.PEP_DEVICE_LIST, item, publishOptions);
}
+ public Element publishBookmarkItem(final Bookmark bookmark) {
+ final String name = bookmark.getBookmarkName();
+ final String nick = bookmark.getNick();
+ final Element conference = new Element("conference", Namespace.BOOKMARK);
+ if (name != null) {
+ conference.setAttribute("name", name);
+ }
+ if (nick != null) {
+ conference.addChild("nick").setContent(nick);
+ }
+ return conference;
+ }
+
public IqPacket publishBundles(final SignedPreKeyRecord signedPreKeyRecord, final IdentityKey identityKey,
final Set<PreKeyRecord> preKeyRecords, final int deviceId, Bundle publishOptions) {
final Element item = new Element("item");