blob: 29ff87ddc33ae40046607b9ecfe5044b9152a8df (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
package data;
import utils.TwitterDateAdapter;
import com.google.gson.GsonBuilder;
import org.joda.time.DateTime;
/**
* Deserializer for Twitter objects.
*
* @author Peter Wu
*/
public class TwitterJsonDeserializer extends ValidatingJsonDeserializer {
public TwitterJsonDeserializer() {
super(getBaseGsonBuilder()
.create());
}
private static GsonBuilder getBaseGsonBuilder() {
return new GsonBuilder()
.registerTypeAdapter(DateTime.class, new TwitterDateAdapter());
}
public static GsonBuilder getGsonBuilder() {
TwitterJsonDeserializer tjd = new TwitterJsonDeserializer();
return getBaseGsonBuilder()
.registerTypeAdapter(Tweet.class, tjd)
.registerTypeAdapter(User.class, tjd);
}
}
|