public static Result start() { java.util.Map<String, String[]> map = request().body().asFormUrlEncoded(); List<String> terms = new ArrayList<>(map.size()); for (int i = 0; i < map.size(); i++) { String key = "terms[" + i + "]"; if (map.containsKey(key)) { String[] values = map.get(key); if ((values != null) && (values.length >= 1)) { terms.add(values[0]); } } } StreamConfig config = getConfig(); config.putTerms(terms); config.update(); StringBuilder sb = new StringBuilder(); for (String t : terms) { sb.append(t); sb.append(", "); } sb.delete(sb.length() - 2, sb.length()); try { startStream(terms); flash("success", "Twitter stream started (" + sb.toString() + ")"); } catch (TwitterException e) { Logger.info("Error starting twitter stream", e); flash("error", "Error starting Twitter stream" + e.getMessage()); } return redirect(routes.Streams.listAll()); }
public static void startConnection() { StreamConfig config = getConfig(); try { startStream(config.listTerms()); } catch (TwitterException e) { Logger.info("Error starting twitter stream", e); } }
public static Result list(int page, int pageSize) { Page<Tweet> currentPage = Tweet.page(page - 1, pageSize); // List<Tweet> tweets = Tweet.find.where().eq("conformsToTerms",true).orderBy("date // desc").findList(); StreamConfig config = getConfig(); String terms = config.listTermsAsString(); return ok(stream_result_list.render(currentPage, page, pageSize, terms)); }
private static StreamConfig getConfig() { List<StreamConfig> configs = StreamConfig.find.findList(); if (configs.size() > 1) { Logger.error("Multiple stream configurations present!"); } StreamConfig config; if (configs.isEmpty()) { String[] tracks = new String[3]; tracks[0] = "nl-alert"; tracks[1] = "nlalert"; tracks[2] = "\"nl alert\""; config = new StreamConfig(tracks); config.save(); } else { config = configs.get(0); } return config; }
public static Result editTerms() { StreamConfig config = getConfig(); List<String> terms = config.listTerms(); return ok(edit_stream_form.render(terms)); }