NickManager.java

 1package eu.siacs.conversations.xmpp.manager;
 2
 3import android.content.Context;
 4import com.google.common.base.Strings;
 5import com.google.common.util.concurrent.ListenableFuture;
 6import eu.siacs.conversations.xmpp.Jid;
 7import eu.siacs.conversations.xmpp.XmppConnection;
 8import im.conversations.android.xmpp.NodeConfiguration;
 9import im.conversations.android.xmpp.model.nick.Nick;
10import im.conversations.android.xmpp.model.pubsub.Items;
11
12public class NickManager extends AbstractManager {
13
14    public NickManager(Context context, XmppConnection connection) {
15        super(context, connection);
16    }
17
18    public void handleItems(final Jid from, Items items) {
19        final var item = items.getFirstItem(Nick.class);
20        final var nick = item == null ? null : item.getContent();
21        if (from == null || Strings.isNullOrEmpty(nick)) {
22            return;
23        }
24    }
25
26    public ListenableFuture<Void> publishNick(final String name) {
27        final Nick nick = new Nick();
28        nick.setContent(name);
29        return getManager(PepManager.class).publishSingleton(nick, NodeConfiguration.PRESENCE);
30    }
31}