Changes for page TwitterGroovy

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

From version 6.1
edited by Ludovic Dubost
on 2009/01/02 14:25
Change comment: There is no comment for this version
To version 11.1
edited by Ludovic Dubost
on 2009/01/02 14:48
Change comment: There is no comment for this version

Summary

Details

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