summaryrefslogtreecommitdiff
path: root/src/data/TwitterJsonDeserializer.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/data/TwitterJsonDeserializer.java')
-rw-r--r--src/data/TwitterJsonDeserializer.java27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/data/TwitterJsonDeserializer.java b/src/data/TwitterJsonDeserializer.java
new file mode 100644
index 0000000..47506d0
--- /dev/null
+++ b/src/data/TwitterJsonDeserializer.java
@@ -0,0 +1,27 @@
+package data;
+
+import com.google.gson.GsonBuilder;
+
+/**
+ * Deserializer for Twitter objects.
+ *
+ * @author Peter Wu
+ */
+public class TwitterJsonDeserializer extends ValidatingJsonDeserializer {
+
+ public TwitterJsonDeserializer() {
+ super(getBaseGsonBuilder()
+ .create());
+ }
+
+ private static GsonBuilder getBaseGsonBuilder() {
+ return new GsonBuilder();
+ }
+
+ public static GsonBuilder getGsonBuilder() {
+ TwitterJsonDeserializer tjd = new TwitterJsonDeserializer();
+ return getBaseGsonBuilder()
+ .registerTypeAdapter(Tweet.class, tjd)
+ .registerTypeAdapter(User.class, tjd);
+ }
+}