summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/isode/stroke/elements')
-rw-r--r--src/com/isode/stroke/elements/PrivateStorage.java43
-rw-r--r--src/com/isode/stroke/elements/Storage.java95
2 files changed, 138 insertions, 0 deletions
diff --git a/src/com/isode/stroke/elements/PrivateStorage.java b/src/com/isode/stroke/elements/PrivateStorage.java
new file mode 100644
index 0000000..171e56e
--- /dev/null
+++ b/src/com/isode/stroke/elements/PrivateStorage.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright (c) 2012, Isode Limited, London, England.
+ * All rights reserved.
+ */
+/*
+ * Copyright (c) 2010, Remko Tronçon.
+ * All rights reserved.
+ */
+package com.isode.stroke.elements;
+
+/**
+ * Class representing Private XML Storage for storing arbitrary private
+ * user data on User's server(such as XEP-0048's bookmarks)
+ *
+ */
+public class PrivateStorage extends Payload {
+
+ /**
+ * Constructor
+ * @param p payload, not null
+ */
+ public PrivateStorage(Payload p) {
+ this.payload = p;
+ }
+
+ /**
+ * Get payload
+ * @return payload, not null
+ */
+ public Payload getPayload() {
+ return payload;
+ }
+
+ /**
+ * Set payload
+ * @param p payload, not null
+ */
+ public void setPayload(Payload p) {
+ payload = p;
+ }
+
+ private Payload payload;
+}
diff --git a/src/com/isode/stroke/elements/Storage.java b/src/com/isode/stroke/elements/Storage.java
new file mode 100644
index 0000000..8597c27
--- /dev/null
+++ b/src/com/isode/stroke/elements/Storage.java
@@ -0,0 +1,95 @@
+/*
+ * Copyright (c) 2012, Isode Limited, London, England.
+ * All rights reserved.
+ */
+/*
+ * Copyright (c) 2010, Remko Tronçon.
+ * All rights reserved.
+ */
+
+package com.isode.stroke.elements;
+
+import java.util.Vector;
+import com.isode.stroke.jid.JID;
+
+/**
+ * Class representing storage for storing payloads
+ *
+ */
+public class Storage extends Payload {
+ private Vector<Room> rooms = new Vector<Room>();
+ private Vector<URL> urls = new Vector<URL>();
+
+ /**
+ * Class representing a chat room
+ *
+ */
+ public static class Room {
+ public Room() {
+ autoJoin = false;
+ }
+
+ public String name = "";
+ public JID jid = JID.fromString("");
+ public boolean autoJoin = false;
+ public String nick = "";
+ public String password;
+ }
+
+ /**
+ * Class for bookmarking web pages, i.e., HTTP or HTTPS URLs.
+ *
+ */
+ public class URL {
+ public URL() {
+
+ }
+ public String name = "";
+ public String url = "";
+ }
+
+ /**
+ * Constructor
+ */
+ public Storage() {
+ }
+
+ /**
+ * Clear the list of rooms
+ */
+ public void clearRooms() {
+ rooms.clear();
+ }
+
+ /**
+ * Get the list of rooms
+ * @return room list, can be empty but not null
+ */
+ public Vector<Room> getRooms() {
+ return rooms;
+ }
+
+ /**
+ * Add a room to the list
+ * @param room room, not null
+ */
+ public void addRoom(Room room) {
+ rooms.add(room);
+ }
+
+ /**
+ * Get a list of URLs
+ * @return URL list, can be empty but not null
+ */
+ public Vector<URL> getURLs() {
+ return urls;
+ }
+
+ /**
+ * Add a URL
+ * @param url rul, not null
+ */
+ public void addURL(URL url) {
+ urls.add(url);
+ }
+}