Package com.sun.syndication.feed.rss

Examples of com.sun.syndication.feed.rss.Item


     * @param rssRoot the root element of the RSS document in case it's needed for context.
     * @param eItem the item element to parse.
     * @return the parsed RSSItem bean.
     */
    protected Item parseItem(Element rssRoot, Element eItem) {
        Item item = super.parseItem(rssRoot,eItem);
        Element e = eItem.getChild("description", getRSSNamespace());
        if (e!=null) {
            item.setDescription(parseItemDescription(rssRoot,e));
        }
        Element ce = eItem.getChild("encoded", getContentNamespace());
        if (ce != null) {
            Content content = new Content();
            content.setType(Content.HTML);
            content.setValue(ce.getText());
            item.setContent(content);
        }
        return item;
    }
View Full Code Here


    // for synd -> rss
    // synd.content -> rss.content
    // synd.description -> rss.description
    @Override
    protected Item createRSSItem(SyndEntry sEntry) {
        Item item = super.createRSSItem(sEntry);

        SyndContent sContent = sEntry.getDescription();

        if (sContent != null) {
            item.setDescription(createItemDescription(sContent));
        }

        List contents = sEntry.getContents();

        if ((contents != null) && (contents.size() > 0)) {
            SyndContent syndContent = (SyndContent) contents.get(0);
            Content cont = new Content();
            cont.setValue(syndContent.getValue());
            cont.setType(syndContent.getType());
            item.setContent(cont);
        }

        return item;
    }
View Full Code Here

        }
        return channel;
    }

    protected Item parseItem(Element rssRoot,Element eItem) {
        Item item = super.parseItem(rssRoot,eItem);

        Element e = eItem.getChild("source",getRSSNamespace());
        if (e!=null) {
            Source source = new Source();
            String url = e.getAttributeValue("url");//getRSSNamespace()); DONT KNOW WHY DOESN'T WORK
            source.setUrl(url);
            source.setValue(e.getText());
            item.setSource(source);
        }

        // 0.92 allows one enclosure occurrence, 0.93 multiple
        // just saving to write some code.
        List eEnclosures = eItem.getChildren("enclosure");//getRSSNamespace()); DONT KNOW WHY DOESN'T WORK
        if (eEnclosures.size()>0) {
            List enclosures = new ArrayList();
            for (int i=0;i<eEnclosures.size();i++) {
                e = (Element) eEnclosures.get(i);

                Enclosure enclosure = new Enclosure();
                String att = e.getAttributeValue("url");//getRSSNamespace()); DONT KNOW WHY DOESN'T WORK
                if (att!=null) {
                    enclosure.setUrl(att);
                }
                att = e.getAttributeValue("length");//getRSSNamespace()); DONT KNOW WHY DOESN'T WORK
                enclosure.setLength(NumberParser.parseLong(att,0L));

                att = e.getAttributeValue("type");//getRSSNamespace()); DONT KNOW WHY DOESN'T WORK
                if (att!=null) {
                    enclosure.setType(att);
                }
                enclosures.add(enclosure);
            }
            item.setEnclosures(enclosures);
        }

        List eCats = eItem.getChildren("category");//getRSSNamespace()); DONT KNOW WHY DOESN'T WORK
        item.setCategories(parseCategories(eCats));

        return item;
    }
View Full Code Here

                for (Iterator conflictItemIter = conflictItemContent.iterator();
                     conflictItemIter.hasNext();)
                {
                    Element conflictItemElement = (Element) conflictItemIter.next();
                    Element root = getRoot(conflictItemElement);
                    Item conflictItem = rssParser.parseItem(root, conflictItemElement);
                    conflict.setItem(conflictItem);

                    if (conflicts == null) {
                        conflicts = new ArrayList();
                    }
View Full Code Here

        return channel;
    }

    @Override
    protected Item createRSSItem(SyndEntry sEntry) {
        Item item = super.createRSSItem(sEntry);    
        if (sEntry.getAuthors()!=null && sEntry.getAuthors().size() > 0) {
            SyndPerson author = (SyndPerson)sEntry.getAuthors().get(0);
            item.setAuthor(author.getEmail())
       

        Guid guid = null;
        String uri = sEntry.getUri();
        if (uri!=null) {
            guid = new Guid();
            guid.setPermaLink(false);
            guid.setValue(uri);
        }
        else {
            String link = sEntry.getLink();
            if (link!=null) {
                guid = new Guid();
                guid.setPermaLink(true);
                guid.setValue(link);
            }
        }
        item.setGuid(guid);
        SyndLink comments = sEntry.findRelatedLink("comments");
        if(comments != null && (comments.getType() == null || comments.getType().endsWith("html"))){
            item.setComments(comments.getHref());
        }
        return item;
    }
View Full Code Here

     * @param rssRoot the root element of the RSS document in case it's needed for context.
     * @param eItem the item element to parse.
     * @return the parsed RSSItem bean.
     */
    protected Item parseItem(Element rssRoot,Element eItem) {
        Item item = new Item();
        Element e = eItem.getChild("title",getRSSNamespace());
        if (e!=null) {
            item.setTitle(e.getText());
        }
        e = eItem.getChild("link",getRSSNamespace());
        if (e!=null) {
            item.setLink(e.getText());
            item.setUri(e.getText());
        }
       
        item.setModules(parseItemModules(eItem));
               
        List foreignMarkup =
            extractForeignMarkup(eItem, item, getRSSNamespace());
        //content:encoded elements are treated special, without a module, they have to be removed from the foreign
        //markup to avoid duplication in case of read/write. Note that this fix will break if a content module is
        //used
        Iterator iterator = foreignMarkup.iterator();
        while (iterator.hasNext()) {
            Element ie = (Element)iterator.next();
            if (getContentNamespace().equals(ie.getNamespace()) && ie.getName().equals("encoded")) {
                iterator.remove();
            }
        }
        if (foreignMarkup.size() > 0) {
            item.setForeignMarkup(foreignMarkup);
        }
        return item;
    }
View Full Code Here

    // synd.content -> rss.content
    // synd.description -> rss.description
   
    @Override
    protected Item createRSSItem(SyndEntry sEntry) {
        Item item = super.createRSSItem(sEntry);

        SyndContent desc = sEntry.getDescription();
        if (desc!=null) {
            item.setDescription(createItemDescription(desc));
        }
        List contents = sEntry.getContents();
        if (contents!=null && contents.size() > 0) {
            item.setContent(createItemContent((SyndContent)contents.get(0)));
        }
       
        String uri = sEntry.getUri();
        if (uri != null) {
            item.setUri(uri);
        }
       
        return item;
    }
View Full Code Here

    protected String getRSSVersion() {
            return "0.93";
    }

    protected Item parseItem(Element rssRoot,Element eItem) {
        Item item = super.parseItem(rssRoot,eItem);
        Element e = eItem.getChild("pubDate",getRSSNamespace());
        if (e!=null) {
            item.setPubDate(DateParser.parseDate(e.getText()));
        }
        e = eItem.getChild("expirationDate",getRSSNamespace());
        if (e!=null) {
            item.setExpirationDate(DateParser.parseDate(e.getText()));
        }
        e = eItem.getChild("description",getRSSNamespace());
        if (e!=null) {
            String type = e.getAttributeValue("type");
            if (type!=null) {
                item.getDescription().setType(type);
            }
        }
        return item;
    }
View Full Code Here

                HttpServletResponse response) throws Exception {
            List<Piece> pieces = (List<Piece>) model.get("pieces");
            List<Item> items = new ArrayList<Item>(pieces.size());

            for (Piece piece : pieces) {
                Item item = new Item();
                item.setAuthor("Computoser");
                item.setPubDate(piece.getGenerationTime().toDate());
                item.setLink(baseUrl + "/track/" + piece.getId());
                item.setTitle(piece.getTitle());
                items.add(item);
            }

            return items;
        }
View Full Code Here

            return items;
        }
        String statusBaseLink = (String) model.get("statusBaseLink");
        for (StatusDTO tempContent : listContent) {

            Item item = new Item();

            String statusText = tempContent.getContent();

            PegDownProcessor processor = new PegDownProcessor();
            String htmlText = processor.markdownToHtml(statusText);
            log.debug("feed html content {}", htmlText);
            // url handling  for mention & tags
            htmlText = convertLinks(htmlText);

            Content content = new Content();
            content.setType(Content.HTML);
            content.setValue(htmlText);
            item.setContent(content);

            // build link for the status
            StringBuilder linkBuilder = new StringBuilder(statusBaseLink);
            linkBuilder
                    .append("status/")
                    .append(tempContent.getStatusId());

            item.setTitle(statusText.substring(0, Math.min(30, statusText.length())));
            item.setLink(linkBuilder.toString());
            item.setPubDate(tempContent.getStatusDate());

            items.add(item);
        }
        return items;
    }
View Full Code Here

TOP

Related Classes of com.sun.syndication.feed.rss.Item

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.