Dateiverwaltung für die WebBox
ulrich
2018-03-31 0a2df2254edd25d4f2e499f27c5f0630e60f2614
Feeds berichtigt, Feinschliff fehlt noch
1 files modified
94 ■■■■ changed files
src/java/de/uhilger/filecms/web/FeedServlet.java 94 ●●●● patch | view | raw | blame | history
src/java/de/uhilger/filecms/web/FeedServlet.java
@@ -63,7 +63,7 @@
      logger.fine(pfad.toString());
      File dir = new File(pfad.toString());
      if(dir.isDirectory()) {
        ArrayList beitraege = new ArrayList();
        List beitraege = new ArrayList();
        collectFiles(dir, 0, beitraege);
        Iterator i = beitraege.iterator();
        while(i.hasNext()) {
@@ -123,7 +123,7 @@
      });
      Iterator i = dirs.iterator();
      while(i.hasNext() && beitraege.size() < maxBeitraege) {
        collectFiles((File) i.next(), ++tiefe, beitraege);
        collectFiles((File) i.next(), tiefe+1, beitraege);
      }
    } 
    if(beitraegeHier.size() > 0) {
@@ -148,57 +148,63 @@
      
      Iterator i = beitraegeHier.iterator();
      while(i.hasNext() && beitraege.size() < maxBeitraege) {
        beitraege.add(i.next());
        File bf = (File) i.next();
        String nm = bf.getName().toLowerCase();
        if(nm.endsWith(".htmi") || nm.endsWith(".html") || nm.endsWith(".htm") ||
           nm.endsWith(".jpg") || nm.endsWith(".jpeg") || nm.endsWith(".png") ||
           nm.endsWith(".txt")) {
          beitraege.add(bf);
        }
      }
      
    }
  }
  
  public void writeFeed(String feedTitel, String beschr, ServletOutputStream s, List beitraege, String basis, String pfad) {
        String copyright = "Copyright (c) 2018 Ulrich Hilger";
        String title = feedTitel;
        String description = beschr;
        String language = "de";
        String link = "https://www.uhilger.de";
        Calendar cal = new GregorianCalendar();
        Date creationDate = cal.getTime();
        SimpleDateFormat date_format = new SimpleDateFormat(
                "EEE', 'dd' 'MMM' 'yyyy' 'HH:mm:ss' 'Z", Locale.US);
        String pubdate = date_format.format(creationDate);
        Feed rssFeed = new Feed(title, link, description, language,
                copyright, pubdate);
    String copyright = "Copyright (c) 2018 Ulrich Hilger";
    String title = feedTitel;
    String description = beschr;
    String language = "de";
    String link = "https://www.uhilger.de";
    Calendar cal = new GregorianCalendar();
    Date creationDate = cal.getTime();
    SimpleDateFormat date_format = new SimpleDateFormat(
            "EEE', 'dd' 'MMM' 'yyyy' 'HH:mm:ss' 'Z", Locale.US);
    String pubdate = date_format.format(creationDate);
    Feed rssFeed = new Feed(title, link, description, language,
            copyright, pubdate);
        Iterator i = beitraege.iterator();
        while(i.hasNext()) {
            File f = (File) i.next();
            FeedMessage feedEintrag = new FeedMessage();
            feedEintrag.setTitle(f.getName());
            //feedEintrag.setDescription("Beschreibung hier");
            feedEintrag.setAuthor("ulrich Punkt hilger bei web Punkt de (Ulrich Hilger)");
            String urlStr = f.getAbsolutePath();
            urlStr = urlStr.replace(basis, "https://uhilger.de");
            urlStr = urlStr.replace("www/", "data/");
    Iterator i = beitraege.iterator();
    while (i.hasNext()) {
      File f = (File) i.next();
      FeedMessage feedEintrag = new FeedMessage();
      feedEintrag.setTitle(f.getName());
      //feedEintrag.setDescription("Beschreibung hier");
      feedEintrag.setAuthor("ulrich Punkt hilger bei web Punkt de (Ulrich Hilger)");
            logger.fine(urlStr);
            feedEintrag.setGuid(urlStr);
            feedEintrag.setLink(urlStr);
            logger.fine(f.getName());
            feedEintrag.setDescription(readFilePart(f, urlStr));
            rssFeed.getMessages().add(feedEintrag);
        }
      String urlStr = f.getAbsolutePath();
      urlStr = urlStr.replace(basis, "https://uhilger.de");
      urlStr = urlStr.replace("www/", "data/");
        RSSStreamFeedWriter writer = new RSSStreamFeedWriter(rssFeed, s);
        //RSSFeedWriter writer = new RSSFeedWriter(rssFeed, pfad + "/articles.rss");
        //ByteArrayOutputStream bs = new ByteArrayOutputStream();
        //RSSByteFeedWriter wr = new RSSByteFeedWriter(rssFeed, bs);
        try {
          writer.write();
          //s.print(bs.toString());
        } catch (Exception e) {
          logger.log(Level.SEVERE, e.getMessage(), e);
        }
      logger.fine(urlStr);
      feedEintrag.setGuid(urlStr);
      feedEintrag.setLink(urlStr);
      logger.fine(f.getName());
      feedEintrag.setDescription(readFilePart(f, urlStr));
      rssFeed.getMessages().add(feedEintrag);
    }
    RSSStreamFeedWriter writer = new RSSStreamFeedWriter(rssFeed, s);
    //RSSFeedWriter writer = new RSSFeedWriter(rssFeed, pfad + "/articles.rss");
    //ByteArrayOutputStream bs = new ByteArrayOutputStream();
    //RSSByteFeedWriter wr = new RSSByteFeedWriter(rssFeed, bs);
    try {
      writer.write();
      //s.print(bs.toString());
    } catch (Exception e) {
      logger.log(Level.SEVERE, e.getMessage(), e);
    }
  }
  
  private String readFilePart(File f, String urlStr) {