Mechanisms.java

 1package im.conversations.android.xmpp.model.sasl;
 2
 3import com.google.common.collect.Collections2;
 4
 5import eu.siacs.conversations.xml.Element;
 6
 7import im.conversations.android.annotation.XmlElement;
 8import im.conversations.android.xmpp.model.AuthenticationStreamFeature;
 9import im.conversations.android.xmpp.model.StreamFeature;
10
11import java.util.Collection;
12import java.util.Objects;
13
14@XmlElement
15public class Mechanisms extends AuthenticationStreamFeature {
16
17
18    public Mechanisms() {
19        super(Mechanisms.class);
20    }
21
22    public Collection<Mechanism> getMechanisms() {
23        return getExtensions(Mechanism.class);
24    }
25
26    public Collection<String> getMechanismNames() {
27        return Collections2.filter(Collections2.transform(getMechanisms(), Element::getContent), Objects::nonNull);
28    }
29}