/* * NewJavaFXClass.fx * * Created on 07/02/2010, 10:42:06 PM */ package org.outrospective.rest.demo; import javafx.io.http.HttpRequest; import javafx.data.pull.PullParser; import javafx.data.pull.Event; /** * @author Kon */ var client = TwitterTrendClient{}; public function run(args: String[]) { client.loadDailyRequest(); } public class TwitterTrendClient { var trend: TwitterTrend; var trends: TwitterTrend[]; function loadDailyRequest() { var request: HttpRequest = HttpRequest { location: "http://search.twitter.com/trends.json" method: HttpRequest.GET onInput: function(input: java.io.InputStream) { try { var parser = PullParser{ documentType: PullParser.JSON, input: input, onEvent: function(event: Event) { //println(event); if (event.type == PullParser.START_ARRAY_ELEMENT) { trend = TwitterTrend {} } if (event.type == PullParser.END_ARRAY_ELEMENT) { insert trend into trends; println("So far we have : {trends}"); } if (event.type == PullParser.END_VALUE) { if (event.level == 0 and event.name == 'as_of') { println("Values as of {event.text}"); } if (event.level == 1 and event.name == 'name') { trend.name = event.text; } if (event.level == 1 and event.name == 'url') { trend.url = event.text; } } } }; parser.parse(); } finally { input.close(); } } onDone: function() { println("Done"); } } request.start(); request.stop(); } }