Authentication.java

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