1package im.conversations.android.xmpp.model.disco.info;
2
3import com.google.common.collect.Iterables;
4import im.conversations.android.annotation.XmlElement;
5import im.conversations.android.xmpp.model.Extension;
6import java.util.Collection;
7
8@XmlElement(name = "query")
9public class InfoQuery extends Extension {
10
11 public InfoQuery() {
12 super(InfoQuery.class);
13 }
14
15 public void setNode(final String node) {
16 this.setAttribute("node", node);
17 }
18
19 public String getNode() {
20 return this.getAttribute("node");
21 }
22
23 public Collection<Feature> getFeatures() {
24 return this.getExtensions(Feature.class);
25 }
26
27 public boolean hasFeature(final String feature) {
28 return Iterables.any(getFeatures(), f -> feature.equals(f.getVar()));
29 }
30
31 public Collection<Identity> getIdentities() {
32 return this.getExtensions(Identity.class);
33 }
34
35 public boolean hasIdentityWithCategory(final String category) {
36 return Iterables.any(getIdentities(), i -> category.equals(i.getCategory()));
37 }
38}