aboutsummaryrefslogtreecommitdiff
path: root/WordPress/src/main/java/org/wordpress/android/models/Tag.java
diff options
context:
space:
mode:
Diffstat (limited to 'WordPress/src/main/java/org/wordpress/android/models/Tag.java')
-rw-r--r--WordPress/src/main/java/org/wordpress/android/models/Tag.java51
1 files changed, 51 insertions, 0 deletions
diff --git a/WordPress/src/main/java/org/wordpress/android/models/Tag.java b/WordPress/src/main/java/org/wordpress/android/models/Tag.java
new file mode 100644
index 000000000..87b756854
--- /dev/null
+++ b/WordPress/src/main/java/org/wordpress/android/models/Tag.java
@@ -0,0 +1,51 @@
+package org.wordpress.android.models;
+
+import org.json.JSONArray;
+import org.json.JSONObject;
+import org.wordpress.android.util.JSONUtils;
+import org.wordpress.android.util.StringUtils;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class Tag {
+ public long siteID;
+
+ private String tag;
+
+ public Tag(long siteID,
+ String tag) {
+ this.siteID = siteID;
+ this.tag = tag;
+ }
+
+ public static Tag fromJSON(JSONObject json, long siteID) {
+ if (json == null) {
+ return null;
+ }
+
+ String tag = JSONUtils.getString(json, "name");
+
+ // the api currently doesn't return a taxonomy field but we want to be ready for when it does
+ return new Tag(siteID, tag);
+ }
+
+ public static List<Tag> tagListFromJSON(JSONArray jsonArray, long siteID) {
+ if (jsonArray == null) {
+ return null;
+ }
+
+ ArrayList<Tag> suggestions = new ArrayList<Tag>(jsonArray.length());
+
+ for (int i = 0; i < jsonArray.length(); i++) {
+ Tag suggestion = Tag.fromJSON(jsonArray.optJSONObject(i), siteID);
+ suggestions.add(suggestion);
+ }
+
+ return suggestions;
+ }
+
+ public String getTag() {
+ return StringUtils.notNullStr(tag);
+ }
+}