PubSub.java

 1package im.conversations.android.xmpp.model.pubsub;
 2
 3import im.conversations.android.annotation.XmlElement;
 4import im.conversations.android.xmpp.model.Extension;
 5import im.conversations.android.xmpp.model.pubsub.event.Retract;
 6import java.util.Collection;
 7
 8@XmlElement(name = "pubsub")
 9public class PubSub extends Extension {
10
11    public PubSub() {
12        super(PubSub.class);
13    }
14
15    public Items getItems() {
16        return this.getExtension(ItemsWrapper.class);
17    }
18
19    @XmlElement(name = "items")
20    public static class ItemsWrapper extends Extension implements Items {
21
22        public ItemsWrapper() {
23            super(ItemsWrapper.class);
24        }
25
26        public String getNode() {
27            return this.getAttribute("node");
28        }
29
30        public Collection<? extends im.conversations.android.xmpp.model.pubsub.Item> getItems() {
31            return this.getExtensions(Item.class);
32        }
33
34        public Collection<Retract> getRetractions() {
35            return this.getExtensions(Retract.class);
36        }
37
38        public void setNode(String node) {
39            this.setAttribute("node", node);
40        }
41
42        public void setMaxItems(final int maxItems) {
43            this.setAttribute("max_items", maxItems);
44        }
45    }
46
47    @XmlElement(name = "item")
48    public static class Item extends Extension
49            implements im.conversations.android.xmpp.model.pubsub.Item {
50
51        public Item() {
52            super(Item.class);
53        }
54
55        @Override
56        public String getId() {
57            return this.getAttribute("id");
58        }
59
60        public void setId(String itemId) {
61            this.setAttribute("id", itemId);
62        }
63    }
64}