34 lines
1.1 KiB
Java
34 lines
1.1 KiB
Java
|
package eu.siacs.conversations.xmpp.bind;
|
||
|
|
||
|
import com.google.common.collect.Collections2;
|
||
|
|
||
|
import java.util.Arrays;
|
||
|
import java.util.Collection;
|
||
|
import java.util.Collections;
|
||
|
|
||
|
import eu.siacs.conversations.xml.Element;
|
||
|
import eu.siacs.conversations.xml.Namespace;
|
||
|
|
||
|
public class Bind2 {
|
||
|
|
||
|
public static final Collection<String> QUICKSTART_FEATURES = Arrays.asList(
|
||
|
Namespace.CARBONS,
|
||
|
Namespace.STREAM_MANAGEMENT
|
||
|
);
|
||
|
|
||
|
public static Collection<String> features(final Element inline) {
|
||
|
final Element inlineBind2 =
|
||
|
inline != null ? inline.findChild("bind", Namespace.BIND2) : null;
|
||
|
final Element inlineBind2Inline =
|
||
|
inlineBind2 != null ? inlineBind2.findChild("inline", Namespace.BIND2) : null;
|
||
|
if (inlineBind2 == null) {
|
||
|
return null;
|
||
|
}
|
||
|
if (inlineBind2Inline == null) {
|
||
|
return Collections.emptyList();
|
||
|
}
|
||
|
return Collections2.transform(
|
||
|
inlineBind2Inline.getChildren(), c -> c == null ? null : c.getAttribute("var"));
|
||
|
}
|
||
|
}
|