package net.miz_hi.smileessence.twitter;
import net.miz_hi.smileessence.cache.TweetCache;
import net.miz_hi.smileessence.cache.UserCache;
import net.miz_hi.smileessence.model.status.IStatusModel;
import twitter4j.DirectMessage;
import twitter4j.Status;
import twitter4j.TwitterResponse;
import twitter4j.User;
public final class ResponseConverter
{
private final TwitterResponse response;
private IStatusModel model;
public static <T extends IStatusModel> T convert(TwitterResponse response)
{
ResponseConverter converter = new ResponseConverter(response);
return (T) converter.build();
}
private ResponseConverter(TwitterResponse response)
{
this.response = response;
}
private void convert()
{
if (response instanceof Status)
{
model = TweetCache.put((Status) response);
}
else if (response instanceof DirectMessage)
{
//TODO
}
else if (response instanceof User)
{
model = UserCache.put((User) response);
}
else
{
}
}
private IStatusModel build()
{
convert();
return model;
}
}