Beispiel #1
0
  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());
  }
Beispiel #2
0
 public static void startConnection() {
   StreamConfig config = getConfig();
   try {
     startStream(config.listTerms());
   } catch (TwitterException e) {
     Logger.info("Error starting twitter stream", e);
   }
 }
Beispiel #3
0
 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));
 }
Beispiel #4
0
 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;
 }
  /*
   * (non-Javadoc)
   *
   * @see
   * android.support.v4.app.Fragment#onContextItemSelected(android.view.MenuItem
   * )
   */
  public boolean onContextItemSelected(MenuItem item) {
    if (item.getMenuInfo() != null) {
      AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
      selectedPosition = info.position;
    }
    Cursor c = mAdapter.getCursor();
    c.moveToPosition(selectedPosition);
    Channel chan = cursorToChannel(c);
    Timer timer;
    switch (item.getItemId()) {
      case R.id.menuTimer:
        timer = cursorToTimer(c);
        if (UIUtils.isTablet(getActivity())) {
          TimerDetails timerdetails = TimerDetails.newInstance();
          Bundle args = new Bundle();
          args.putString(TimerDetails.EXTRA_TITLE, timer.getTitle());
          args.putString(TimerDetails.EXTRA_CHANNEL_NAME, timer.getChannelName());
          args.putLong(TimerDetails.EXTRA_CHANNEL_ID, timer.getChannelId());
          args.putLong(TimerDetails.EXTRA_START, timer.getStart().getTime());
          args.putLong(TimerDetails.EXTRA_END, timer.getEnd().getTime());
          args.putInt(TimerDetails.EXTRA_ACTION, timer.getTimerAction());
          args.putBoolean(TimerDetails.EXTRA_ACTIVE, true);
          timerdetails.setArguments(args);
          timerdetails.show(
              getSherlockActivity().getSupportFragmentManager(), TimerDetails.class.getName());
        } else {
          Intent timerIntent = new Intent(getActivity(), TimerDetailsActivity.class);
          timerIntent.putExtra(TimerDetails.EXTRA_TITLE, timer.getTitle());
          timerIntent.putExtra(TimerDetails.EXTRA_CHANNEL_NAME, timer.getChannelName());
          timerIntent.putExtra(TimerDetails.EXTRA_CHANNEL_ID, timer.getChannelId());
          timerIntent.putExtra(TimerDetails.EXTRA_START, timer.getStart().getTime());
          timerIntent.putExtra(TimerDetails.EXTRA_END, timer.getEnd().getTime());
          timerIntent.putExtra(TimerDetails.EXTRA_ACTION, timer.getTimerAction());
          timerIntent.putExtra(TimerDetails.EXTRA_ACTIVE, !timer.isFlagSet(Timer.FLAG_DISABLED));
          startActivity(timerIntent);
        }
        return true;
      case R.id.menuStream:
        if (UIUtils.isTablet(getActivity())) {
          StreamConfig cfg = StreamConfig.newInstance();
          Bundle arguments = new Bundle();
          arguments.putInt(StreamConfig.EXTRA_FILE_ID, chan.getPosition());
          arguments.putInt(StreamConfig.EXTRA_FILE_TYPE, StreamConfig.FILE_TYPE_LIVE);
          arguments.putInt(StreamConfig.EXTRA_DIALOG_TITLE_RES, R.string.streamConfig);
          cfg.setArguments(arguments);
          cfg.show(getSherlockActivity().getSupportFragmentManager(), StreamConfig.class.getName());
        } else {
          Intent streamConfig = new Intent(getActivity(), StreamConfigActivity.class);
          streamConfig.putExtra(StreamConfig.EXTRA_FILE_ID, chan.getPosition());
          streamConfig.putExtra(StreamConfig.EXTRA_FILE_TYPE, StreamConfig.FILE_TYPE_LIVE);
          streamConfig.putExtra(StreamConfig.EXTRA_DIALOG_TITLE_RES, R.string.streamConfig);
          startActivity(streamConfig);
        }
        return true;
      case R.id.menuSwitch:
        String switchRequest = ServerConsts.URL_SWITCH_COMMAND + chan.getPosition();
        DVBViewerCommand command = new DVBViewerCommand(switchRequest);
        Thread exexuterTHread = new Thread(command);
        exexuterTHread.start();
        return true;
      case R.id.menuRecord:
        timer = cursorToTimer(c);
        String url =
            timer.getId() < 0l ? ServerConsts.URL_TIMER_CREATE : ServerConsts.URL_TIMER_EDIT;
        String title = timer.getTitle();
        String days = String.valueOf(DateUtils.getDaysSinceDelphiNull(timer.getStart()));
        String start = String.valueOf(DateUtils.getMinutesOfDay(timer.getStart()));
        String stop = String.valueOf(DateUtils.getMinutesOfDay(timer.getEnd()));
        String endAction = String.valueOf(timer.getTimerAction());
        List<NameValuePair> params = new ArrayList<NameValuePair>();
        params.add(new BasicNameValuePair("ch", String.valueOf(timer.getChannelId())));
        params.add(new BasicNameValuePair("dor", days));
        params.add(new BasicNameValuePair("encoding", "255"));
        params.add(new BasicNameValuePair("enable", "1"));
        params.add(new BasicNameValuePair("start", start));
        params.add(new BasicNameValuePair("stop", stop));
        params.add(new BasicNameValuePair("title", title));
        params.add(new BasicNameValuePair("endact", endAction));
        if (timer.getId() >= 0) {
          params.add(new BasicNameValuePair("id", String.valueOf(timer.getId())));
        }

        String query = URLEncodedUtils.format(params, "utf-8");
        String request = url + query;
        RecordingServiceGet rsGet = new RecordingServiceGet(request);
        Thread executionThread = new Thread(rsGet);
        executionThread.start();
        return true;

      default:
        break;
    }
    return false;
  }
Beispiel #6
0
 public static Result editTerms() {
   StreamConfig config = getConfig();
   List<String> terms = config.listTerms();
   return ok(edit_stream_form.render(terms));
 }