diff options
Diffstat (limited to 'WordPress/src/main/java/org/wordpress/android/models/ReaderUserList.java')
-rw-r--r-- | WordPress/src/main/java/org/wordpress/android/models/ReaderUserList.java | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/WordPress/src/main/java/org/wordpress/android/models/ReaderUserList.java b/WordPress/src/main/java/org/wordpress/android/models/ReaderUserList.java new file mode 100644 index 000000000..cd77a99d1 --- /dev/null +++ b/WordPress/src/main/java/org/wordpress/android/models/ReaderUserList.java @@ -0,0 +1,44 @@ +package org.wordpress.android.models; + +import org.json.JSONArray; +import org.json.JSONObject; + +import java.util.ArrayList; + +public class ReaderUserList extends ArrayList<ReaderUser> { + /* + * returns all userIds in this list + */ + public ReaderUserIdList getUserIds() { + ReaderUserIdList ids = new ReaderUserIdList(); + for (ReaderUser user: this) + ids.add(user.userId); + return ids; + } + + public int indexOfUserId(long userId) { + for (int i = 0; i < this.size(); i++) { + if (userId == this.get(i).userId) { + return i; + } + } + return -1; + } + + /* + * passed json is response from getting likes for a post + */ + public static ReaderUserList fromJsonLikes(JSONObject json) { + ReaderUserList users = new ReaderUserList(); + if (json==null) + return users; + + JSONArray jsonLikes = json.optJSONArray("likes"); + if (jsonLikes!=null) { + for (int i=0; i < jsonLikes.length(); i++) + users.add(ReaderUser.fromJson(jsonLikes.optJSONObject(i))); + } + + return users; + } +} |