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}