Changes for page TwitterGroovy

Last modified by Ludovic Dubost on 2010/02/11 15:14

From version 5.1
edited by Ludovic Dubost
on 2009/01/02 14:23
Change comment: There is no comment for this version
To version 18.1
edited by Ludovic Dubost
on 2009/01/02 15:01
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -2,9 +2,12 @@
2 2  
3 3  import java.util.List;
4 4  import twitter4j.Twitter;
5 +import org.w3c.dom.Document;
6 +import java.util.Date;
7 +import java.text.*;
5 5  
6 6  public class TwitterGroovy {
7 - TWitter twitter;
10 + Twitter twitter;
8 8  
9 9   public Twitter getTwitter(twitterID, twitterPassword) {
10 10   if (twitter!=null)
... ... @@ -14,10 +14,21 @@
14 14   return twitter;
15 15   }
16 16  
17 - public Document search(String text) {
20 + public List search(String text) {
18 18   String url = "http://search.twitter.com/search.atom?q=" + text;
19 19   def resp = twitter.get(url, true);
20 - def doc = resp.asDocument();
21 - return doc;
23 + def xml = resp.asString();
24 + def list = new ArrayList();
25 + def node = new XmlSlurper().parseText(xml)
26 + for (entry in node.entry) {
27 + String authoruri = entry.author.uri.text();
28 + String authorid = authoruri.substring(authoruri.lastIndexOf("/") + 1);
29 + Date publishDate = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ").parse(entry.published.text().replaceAll("Z","+0000"));
30 + def user = [ "id" : authorid, "name" : entry.author.name.text(), "screenName" : authorid,
31 + "location" : "", "description" : "", "profileImageUrl": "", "url" : authoruri, "isProtected" : "", "followersCount" : -1];
32 + def st = [ "id" : entry.id.text(), "createdAt" : publishDate, "text" : entry.title.text(), "content" : entry.content.text(), "source" : "", "isTruncated" : false, "inReplyToStatusId": "", "inReplyToUserId": "", "user" : user ];
33 + list.add(st);
34 + }
35 + return list;
22 22   }
23 23  }