Package devplugin

Examples of devplugin.Date


    out.writeInt(items.length);
    for (ReminderListItem item : items) {
      out.writeInt(3);
      out.writeInt(item.getMinutes());
      out.writeUTF(item.getComment());
      Date date = item.getProgram().getDate();
      date.writeData((java.io.DataOutput) out);
      out.writeObject(item.getProgram().getID());
      out.writeInt(item.getReferenceCount());
    }
  }
View Full Code Here


    if (remindMinutes < 0) {
      return false;
    }

    Date remindDate = prog.getDate();

    int remindTime = prog.getStartTime() - remindMinutes;
    if (remindTime < 0) {
      remindTime = -remindTime;
      int days = remindTime / MINUTES_PER_DAY + 1;
      remindTime = MINUTES_PER_DAY - (remindTime % MINUTES_PER_DAY);
      remindDate = remindDate.addDays(-days);
    }
    int diff = today.compareTo(remindDate);

    return (diff > 0 || (diff == 0 && IOUtilities.getMinutesAfterMidnight() >= remindTime))
            && !isBlocked(prog);
View Full Code Here

  public static String getFavoriteLabel(Favorite favorite, Program program) {
    return getFavoriteLabel(favorite, program, null);
  }

  public static String getFavoriteLabel(Favorite favorite, Program p, Channel currentChannel) {
    Date d = p.getDate();
    String progdate;

    Date currentDate = Date.getCurrentDate();

    if (d.equals(currentDate.addDays(-1))) {
      progdate = Localizer.getLocalization(Localizer.I18N_YESTERDAY);
    } else if (d.equals(currentDate)) {
      progdate = Localizer.getLocalization(Localizer.I18N_TODAY);
    } else if (d.equals(currentDate.addDays(1))) {
      progdate = Localizer.getLocalization(Localizer.I18N_TOMORROW);
    } else {
      progdate = p.getDateString();
    }
View Full Code Here

   * @return Number of Child-Nodes
   */
  public static int[] getProgramsCount(FavoriteNode node) {
    int[] count = new int[2];

    Date currentDate = Date.getCurrentDate();
    if(node.containsFavorite()) {
      Program[] whiteListPrograms = node.getFavorite().getWhiteListPrograms();
      count[0] = whiteListPrograms.length;
      for(Program p : whiteListPrograms) {
        if(p.getDate().equals(currentDate) && !p.isExpired()) {
View Full Code Here

          boolean showExpired = false;

          Channel[] channels = mBox.getSelectedItem() instanceof String ? Plugin.getPluginManager()
              .getSubscribedChannels() : new Channel[] { (Channel) mBox.getSelectedItem() };

          Date date = channels.length > 1
              && mFilter.equals(Plugin.getPluginManager().getFilterManager().getAllFilter()) ? Plugin
              .getPluginManager().getCurrentDate() : Date.getCurrentDate();

          int startTime = Plugin.getPluginManager().getTvBrowserSettings().getProgramTableStartOfDay();
          int endTime = Plugin.getPluginManager().getTvBrowserSettings().getProgramTableEndOfDay();

          int maxDays = channels.length > 1
              && mFilter.equals(Plugin.getPluginManager().getFilterManager().getAllFilter()) ? 2 : 28;
          for (int d = 0; d < maxDays; d++) {
            if (Plugin.getPluginManager().isDataAvailable(date)) {
              for (Channel channel : channels) {
                for (Iterator<Program> it = Plugin.getPluginManager().getChannelDayProgram(date, channel); it.hasNext();) {
                  Program program = it.next();
                  if ((showExpired || !program.isExpired()) && mFilter.accept(program)) {
                    if (mFilter.equals(Plugin.getPluginManager().getFilterManager().getAllFilter())) {
                      if ((d == 0 && program.getStartTime() >= startTime)
                          || (d == 1 && program.getStartTime() <= endTime)) {
                        mPrograms.add(program);
                      }
                    } else {
                      mPrograms.add(program);
                    }
                  }
                }
              }
            }
            date = date.addDays(1);
          }

          if (channels.length > 1) {
            Collections.sort(mPrograms, ProgramUtilities.getProgramComparator());
          }
View Full Code Here

  protected void addUpdateJobForDayProgramFile(String fileName)
    throws TvBrowserException
  {
    // Parse the information from the fileName
    // E.g. '2003-10-04_de_premiere-1_base_full.prog.gz'
    Date date = DayProgramFile.getDateFromFileName(fileName);
    String country = DayProgramFile.getCountryFromFileName(fileName);
    String channelName = DayProgramFile.getChannelNameFromFileName(fileName);
   
    Channel channel = mDataService.getChannel(country, channelName);
    if (channel == null) {
View Full Code Here

    monitor.setMessage(mLocalizer.msg("updateTvData.progressmessage.10",
            "{2}: Searching for updated/new programs on {0} for {1} days",
            startDate.toString(), dateCount, channel.getName()));
   
    for (int b = 0; b < dateCount; b++) {
      Date testDay = testStart.addDays(b);
      String fileDate = createFileName(testDay);
      try {
        String urlString = internalChannel.getBaseUrl() + internalChannel.getId() + "_" + fileDate + ".xml.gz";
        URL url = new URL(urlString);
        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        conn.setReadTimeout(Plugin.getPluginManager().getTvBrowserSettings().getDefaultNetworkConnectionTimeout());
        conn.setIfModifiedSince(internalChannel.getLastUpdate(testDay));
        conn.setRequestMethod("HEAD"); // Only make a HEAD request, to
        // see if the file has been
        // changed (only get the HTTP
        // Header fields).
        if (conn.getResponseCode() == 200) {
          modifiedDates.add(testDay);
        }
        mLog.info("mInternalChannel.lastModified=" + internalChannel.getLastUpdate(testDay));
      } catch (Exception e) {
        throw new TvBrowserException(SweDBTvDataService.class,
                "An error occurred in updateTvData",
                "Please report this to the developer", e);
      }
    } // int b
    mLog.info("Number of modified days for channel " + internalChannel.getName() + ":" + modifiedDates.size());
    monitor.setMessage(mLocalizer.msg("updateTvData.progressmessage.20",
            "{0}: Retrieving updated/new programs.", channel.getName()));

    /*********************************************************************
     * IF we found any modified/missing data, we have to download the
     * files before and after each date, since the XMLTV-data files are
     * split in UTC-time while provider is in a different timezone. This
     * procedure ensures that we get all of the data. (There is a small
     * risk that we miss updated data, since we do not verify if the files
     * before and after the actual date has been modified - but we do not
     * care for now)
     ********************************************************************/
    if (modifiedDates.size() > 0) {
      Date prevDate;
      Date currDate;

      Hashtable<String, Date> fileDates = new Hashtable<String, Date>();
      prevDate = new Date((modifiedDates.get(0)).addDays(-1));
      fileDates.put(prevDate.getDateString(), prevDate);
      for (Date modifiedDate : modifiedDates) {
        currDate = modifiedDate;
        if (currDate.equals(prevDate.addDays(1))) {
          if (!fileDates.containsKey(currDate.getDateString())) {
            fileDates.put(currDate.getDateString(), currDate);
          }
        } else {
          Date tempDate = new Date(prevDate.addDays(1));
          if (!fileDates.containsKey(tempDate.getDateString())) {
            fileDates.put(tempDate.getDateString(), tempDate);
          }
          tempDate = new Date(currDate.addDays(-1));
          if (!fileDates.containsKey(tempDate.getDateString())) {
            fileDates.put(tempDate.getDateString(), tempDate);
          }
          if (!fileDates.containsKey(currDate.getDateString())) {
            fileDates.put(currDate.getDateString(), currDate);
          }

        }
        prevDate = currDate;
      }// for j
      currDate = new Date(prevDate.addDays(1));
      if (!fileDates.containsKey(currDate.getDateString())) {
        fileDates.put(currDate.getDateString(), currDate);
      }
      mLog.info(currDate.getDateString());

      /*******************************************************************
       * OK... So now we are ready to start parsing the selected data
       * files
       ******************************************************************/
      Hashtable<String, MutableChannelDayProgram> dataHashtable = new Hashtable<String, MutableChannelDayProgram>();
      Enumeration<Date> en = fileDates.elements();
      monitor.setMessage(mLocalizer.msg(
              "updateTvData.progressmessage.30", "{0}: Reading datafiles",
              channel.getName()));
      while (en.hasMoreElements()) {
        try {
          Date date = (en.nextElement());
          String strFileDate = createFileName(date);
          mLog.info("getting: " + internalChannel.getBaseUrl()
                  + internalChannel.getId() + "_" + strFileDate
                  + ".xml.gz");
          URL url = new URL(internalChannel.getBaseUrl()
                  + internalChannel.getId() + "_" + strFileDate
                  + ".xml.gz");
          HttpURLConnection con = (HttpURLConnection) url
                  .openConnection();
          con.setReadTimeout(Plugin.getPluginManager()
                  .getTvBrowserSettings()
                  .getDefaultNetworkConnectionTimeout());

          if (con.getResponseCode() == 200) {
            DataHydraDayParser.parseNew(IOUtilities.openSaveGZipInputStream(con
                    .getInputStream()), channel, date, dataHashtable, service);
            if (modifiedDates.contains(date)) {
              mLog.info("Updating lastUpdate property for date "
                      + date.toString());
              internalChannel.setLastUpdate(date, con
                      .getLastModified());
            }
          }
        } catch (Exception e) {
          throw new TvBrowserException(SweDBTvDataService.class,
                  "An error occurred in updateTvData",
                  "Please report this to the developer", e);
        }
      }
      mLog.info("All of the files have been parsed");
      /*******************************************************************
       * Now all of the files has been parsed. Time to update the local
       * database with our data...
       */
      for (Date date : modifiedDates) {
        if (dataHashtable.containsKey(date.toString())) {
          mLog.info("Updating database for day " + date.toString());
          monitor.setMessage(mLocalizer.msg(
                  "updateTvData.progressmessage.40",
                  "{0}: Updating database", channel.getName()));
          updateManager.updateDayProgram(dataHashtable.get(date
                  .toString()));
        } else {
          mLog.info("Strange.... Didn't find the data for "
                  + date.toString());
        }
      }
    }
  }
View Full Code Here

          if (items.length == 23) {
            try {
              for (int i = 0; i < items.length; i++) {
                items[i] = items[i].trim();
              }
              Date date = parseDate(items[RT_DATE]);
              MutableChannelDayProgram mutDayProg = getMutableDayProgram(date);

              int[] time = parseTime(items[RT_START_TIME]);

              MutableProgram prog = new MutableProgram(mChannel,date, time[0], time[1], true);
View Full Code Here

    if (year < 2000) {
      year += 2000;
    }

    return new Date(year, month, day);
  }
View Full Code Here

        for (Schedule schedule : schedules) {
          Channel ch = channelMap.get(Integer.toString(schedule.getStation()));
          if (ch != null) {
            Calendar cal = Calendar.getInstance();
            cal.setTime(schedule.getTime().getLocalDate());
            devplugin.Date programDate = new Date(cal);
            MutableChannelDayProgram chDayProgram = getMutableDayProgram(ch, programDate);

            MutableProgram prog = new MutableProgram(ch, programDate, cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE), true);
            net.sf.xtvdclient.xtvd.datatypes.Program xtvdProgram = xtvd.getPrograms().get(schedule.getProgram());
View Full Code Here

TOP

Related Classes of devplugin.Date

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.