コード例 #1
0
 /**
  * Cursor to timer.
  *
  * @param c the c
  * @return the timer´
  * @author RayBa
  * @date 07.04.2013
  */
 private Timer cursorToTimer(Cursor c) {
   String name = c.getString(c.getColumnIndex(ChannelTbl.NAME));
   long channelID = c.getLong(c.getColumnIndex(ChannelTbl.CHANNEL_ID));
   String epgTitle =
       !c.isNull(c.getColumnIndex(EpgTbl.TITLE))
           ? c.getString(c.getColumnIndex(EpgTbl.TITLE))
           : name;
   long epgStart = c.getLong(c.getColumnIndex(EpgTbl.START));
   long epgEnd = c.getLong(c.getColumnIndex(EpgTbl.END));
   DVBViewerPreferences prefs = new DVBViewerPreferences(getSherlockActivity());
   int epgBefore = prefs.getPrefs().getInt(DVBViewerPreferences.KEY_TIMER_TIME_BEFORE, 5);
   int epgAfter = prefs.getPrefs().getInt(DVBViewerPreferences.KEY_TIMER_TIME_AFTER, 5);
   Date start = epgStart > 0 ? new Date(epgStart) : new Date();
   Date end = epgEnd > 0 ? new Date(epgEnd) : new Date(start.getTime() + (1000 * 60 * 120));
   Log.i(ChannelList.class.getSimpleName(), "start: " + start.toString());
   Log.i(ChannelList.class.getSimpleName(), "end: " + end.toString());
   start = DateUtils.addMinutes(start, 0 - epgBefore);
   end = DateUtils.addMinutes(end, epgAfter);
   Timer timer = new Timer();
   timer.setTitle(epgTitle);
   timer.setChannelId(channelID);
   timer.setChannelName(name);
   timer.setStart(start);
   timer.setEnd(end);
   timer.setTimerAction(
       prefs.getPrefs().getInt(DVBViewerPreferences.KEY_TIMER_DEF_AFTER_RECORD, 0));
   return timer;
 }