Java Code Examples for com.rometools.rome.feed.atom.Entry#setTitle()

The following examples show how to use com.rometools.rome.feed.atom.Entry#setTitle() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: CustomerAtomFeedView.java    From event-driven-spring-boot with Apache License 2.0 6 votes vote down vote up
@Override
protected List<Entry> buildFeedEntries(Map<String, Object> model, HttpServletRequest request,
                                       HttpServletResponse response) throws Exception {

	List<Entry> entries = new ArrayList<Entry>();
	List<Customer> customerlist = (List<Customer>) model.get("customers");

	for (Customer o : customerlist) {
		Entry entry = new Entry();
		entry.setId("https://github.com/mploed/event-driven-spring-boot/customer/" + Long.toString(o.getId()));
		entry.setUpdated(o.getUpdated());
		entry.setTitle("Customer " + o.getId());
		List<Content> contents = new ArrayList<Content>();
		Content content = new Content();
		content.setSrc(baseUrl(request) + "customer/rest/" + Long.toString(o.getId()));
		content.setType("application/json");
		contents.add(content);
		entry.setContents(contents);
		Content summary = new Content();
		summary.setValue("This is the customer " + o.getId());
		entry.setSummary(summary);
		entries.add(entry);
	}

	return entries;
}
 
Example 2
Source File: OrderAtomFeedView.java    From microservice-atom with Apache License 2.0 6 votes vote down vote up
@Override
protected List<Entry> buildFeedEntries(Map<String, Object> model, HttpServletRequest request,
		HttpServletResponse response) throws Exception {

	List<Entry> entries = new ArrayList<Entry>();
	List<Order> orderlist = (List<Order>) model.get("orders");

	for (Order o : orderlist) {
		Entry entry = new Entry();
		entry.setId("tag:ewolff.com/microservice-atom/order/" + Long.toString(o.getId()));
		entry.setUpdated(o.getUpdated());
		entry.setTitle("Order " + o.getId());
		List<Content> contents = new ArrayList<Content>();
		Content content = new Content();
		content.setSrc(baseUrl(request) + "order/" + Long.toString(o.getId()));
		content.setType("application/json");
		contents.add(content);
		entry.setContents(contents);
		Content summary = new Content();
		summary.setValue("This is the order " + o.getId());
		entry.setSummary(summary);
		entries.add(entry);
	}

	return entries;
}
 
Example 3
Source File: VetsAtomView.java    From docker-workflow-plugin with MIT License 6 votes vote down vote up
@Override
protected List<Entry> buildFeedEntries(Map<String, Object> model,
                                       HttpServletRequest request, HttpServletResponse response) throws Exception {

    Vets vets = (Vets) model.get("vets");
    List<Vet> vetList = vets.getVetList();
    List<Entry> entries = new ArrayList<Entry>(vetList.size());

    for (Vet vet : vetList) {
        Entry entry = new Entry();
        // see http://diveintomark.org/archives/2004/05/28/howto-atom-id#other
        entry.setId(String.format("tag:springsource.org,%s", vet.getId()));
        entry.setTitle(String.format("Vet: %s %s", vet.getFirstName(), vet.getLastName()));
        //entry.setUpdated(visit.getDate().toDate());

        Content summary = new Content();
        summary.setValue(vet.getSpecialties().toString());
        entry.setSummary(summary);

        entries.add(entry);
    }
    response.setContentType("blabla");
    return entries;

}
 
Example 4
Source File: VetsAtomView.java    From audit4j-demo with Apache License 2.0 6 votes vote down vote up
@Override
protected List<Entry> buildFeedEntries(Map<String, Object> model,
                                       HttpServletRequest request, HttpServletResponse response) throws Exception {

    Vets vets = (Vets) model.get("vets");
    List<Vet> vetList = vets.getVetList();
    List<Entry> entries = new ArrayList<Entry>(vetList.size());

    for (Vet vet : vetList) {
        Entry entry = new Entry();
        // see http://diveintomark.org/archives/2004/05/28/howto-atom-id#other
        entry.setId(String.format("tag:springsource.org,%s", vet.getId()));
        entry.setTitle(String.format("Vet: %s %s", vet.getFirstName(), vet.getLastName()));
        //entry.setUpdated(visit.getDate().toDate());

        Content summary = new Content();
        summary.setValue(vet.getSpecialties().toString());
        entry.setSummary(summary);

        entries.add(entry);
    }
    response.setContentType("blabla");
    return entries;

}
 
Example 5
Source File: AtomFeedView.java    From wallride with Apache License 2.0 6 votes vote down vote up
@SuppressWarnings("unchecked")
@Override
protected List<Entry> buildFeedEntries(
		Map<String, Object> model,
		HttpServletRequest request,
		HttpServletResponse response)
throws Exception {
	Set<Article> articles = (Set<Article>)model.get("articles");
	List<Entry> entries = new ArrayList<>(articles.size());
	for (Article article : articles) {
		Entry entry = new Entry();
		entry.setTitle(article.getTitle());
		entry.setPublished(Date.from(article.getDate().atZone(ZoneId.systemDefault()).toInstant()));
		Content content = new Content();
		content.setValue(article.getBody());
		entry.setSummary(content);

		Link link = new Link();
		link.setHref(link(article));
		List<Link> links = new ArrayList<Link>();
		links.add(link);
		entry.setAlternateLinks(links);
		entries.add(entry);
	}
	return entries;
}
 
Example 6
Source File: VetsAtomView.java    From activejpa with Apache License 2.0 6 votes vote down vote up
@Override
protected List<Entry> buildFeedEntries(Map<String, Object> model,
                                       HttpServletRequest request, HttpServletResponse response) throws Exception {

    Vets vets = (Vets) model.get("vets");
    List<Vet> vetList = vets.getVetList();
    List<Entry> entries = new ArrayList<Entry>(vetList.size());

    for (Vet vet : vetList) {
        Entry entry = new Entry();
        // see http://diveintomark.org/archives/2004/05/28/howto-atom-id#other
        entry.setId(String.format("tag:springsource.org,%s", vet.getId()));
        entry.setTitle(String.format("Vet: %s %s", vet.getFirstName(), vet.getLastName()));
        //entry.setUpdated(visit.getDate().toDate());

        Content summary = new Content();
        summary.setValue(vet.getSpecialties().toString());
        entry.setSummary(summary);

        entries.add(entry);
    }
    response.setContentType("blabla");
    return entries;

}
 
Example 7
Source File: AtomFeedViewTests.java    From spring-analysis-note with MIT License 5 votes vote down vote up
@Override
protected List<Entry> buildFeedEntries(Map<String, Object> model, HttpServletRequest request, HttpServletResponse response) {
	List<Entry> entries = new ArrayList<>();
	for (String name : model.keySet()) {
		Entry entry = new Entry();
		entry.setTitle(name);
		Content content = new Content();
		content.setValue((String) model.get(name));
		entry.setSummary(content);
		entries.add(entry);
	}
	return entries;
}
 
Example 8
Source File: AtomFeedHttpMessageConverterTests.java    From spring-analysis-note with MIT License 5 votes vote down vote up
@Test
public void write() throws IOException, SAXException {
	Feed feed = new Feed("atom_1.0");
	feed.setTitle("title");

	Entry entry1 = new Entry();
	entry1.setId("id1");
	entry1.setTitle("title1");

	Entry entry2 = new Entry();
	entry2.setId("id2");
	entry2.setTitle("title2");

	List<Entry> entries = new ArrayList<>(2);
	entries.add(entry1);
	entries.add(entry2);
	feed.setEntries(entries);

	MockHttpOutputMessage outputMessage = new MockHttpOutputMessage();
	converter.write(feed, null, outputMessage);

	assertEquals("Invalid content-type", new MediaType("application", "atom+xml", StandardCharsets.UTF_8),
			outputMessage.getHeaders().getContentType());
	String expected = "<feed xmlns=\"http://www.w3.org/2005/Atom\">" + "<title>title</title>" +
			"<entry><id>id1</id><title>title1</title></entry>" +
			"<entry><id>id2</id><title>title2</title></entry></feed>";
	NodeMatcher nm = new DefaultNodeMatcher(ElementSelectors.byName);
	assertThat(outputMessage.getBodyAsString(StandardCharsets.UTF_8),
			isSimilarTo(expected).ignoreWhitespace().withNodeMatcher(nm));
}
 
Example 9
Source File: AtomFeedViewTests.java    From java-technology-stack with MIT License 5 votes vote down vote up
@Override
protected List<Entry> buildFeedEntries(Map<String, Object> model, HttpServletRequest request, HttpServletResponse response) {
	List<Entry> entries = new ArrayList<>();
	for (String name : model.keySet()) {
		Entry entry = new Entry();
		entry.setTitle(name);
		Content content = new Content();
		content.setValue((String) model.get(name));
		entry.setSummary(content);
		entries.add(entry);
	}
	return entries;
}
 
Example 10
Source File: AtomFeedHttpMessageConverterTests.java    From java-technology-stack with MIT License 5 votes vote down vote up
@Test
public void write() throws IOException, SAXException {
	Feed feed = new Feed("atom_1.0");
	feed.setTitle("title");

	Entry entry1 = new Entry();
	entry1.setId("id1");
	entry1.setTitle("title1");

	Entry entry2 = new Entry();
	entry2.setId("id2");
	entry2.setTitle("title2");

	List<Entry> entries = new ArrayList<>(2);
	entries.add(entry1);
	entries.add(entry2);
	feed.setEntries(entries);

	MockHttpOutputMessage outputMessage = new MockHttpOutputMessage();
	converter.write(feed, null, outputMessage);

	assertEquals("Invalid content-type", new MediaType("application", "atom+xml", StandardCharsets.UTF_8),
			outputMessage.getHeaders().getContentType());
	String expected = "<feed xmlns=\"http://www.w3.org/2005/Atom\">" + "<title>title</title>" +
			"<entry><id>id1</id><title>title1</title></entry>" +
			"<entry><id>id2</id><title>title2</title></entry></feed>";
	NodeMatcher nm = new DefaultNodeMatcher(ElementSelectors.byName);
	assertThat(outputMessage.getBodyAsString(StandardCharsets.UTF_8),
			isSimilarTo(expected).ignoreWhitespace().withNodeMatcher(nm));
}
 
Example 11
Source File: HrmsAtomViewBuilder.java    From Spring-MVC-Blueprints with MIT License 5 votes vote down vote up
@Override
protected List<Entry> buildFeedEntries(Map<String, Object> model,
		HttpServletRequest req, HttpServletResponse response) throws Exception {
	// get data model which is passed by the Spring container
	  List<HrmsNews> news = (List<HrmsNews>) model.get("allNews");
       List<Entry> entries = new ArrayList<Entry>(news.size());
		
		for(HrmsNews topic : news ){
		
			Entry entry = new Entry();
			
			
			entry.setId(topic.getId()+"");
						
			entry.setTitle(topic.getDescription());
			
			Content summary = new Content();
			summary.setValue(topic.getSummary());
		    entry.setSummary(summary);
		       
		    Link link = new Link();
		    link.setType("text/html");
		    link.setHref(topic.getLink()); //because I have a different controller to show news at http://yourfanstasticsiteUrl.com/news/ID
		    List arrLinks = new ArrayList();
		    arrLinks.add(link);
		    entry.setAlternateLinks(arrLinks);
		    entry.setUpdated(new Date());
			
		    entries.add(entry);
		}
		
		return entries;
}
 
Example 12
Source File: AtomFeedViewTests.java    From spring4-understanding with Apache License 2.0 5 votes vote down vote up
@Override
protected List<Entry> buildFeedEntries(Map model, HttpServletRequest request, HttpServletResponse response)
		throws Exception {
	List<Entry> entries = new ArrayList<Entry>();
	for (Iterator iterator = model.keySet().iterator(); iterator.hasNext();) {
		String name = (String) iterator.next();
		Entry entry = new Entry();
		entry.setTitle(name);
		Content content = new Content();
		content.setValue((String) model.get(name));
		entry.setSummary(content);
		entries.add(entry);
	}
	return entries;
}
 
Example 13
Source File: AtomFeedHttpMessageConverterTests.java    From spring4-understanding with Apache License 2.0 5 votes vote down vote up
@Test
public void write() throws IOException, SAXException {
	Feed feed = new Feed("atom_1.0");
	feed.setTitle("title");

	Entry entry1 = new Entry();
	entry1.setId("id1");
	entry1.setTitle("title1");

	Entry entry2 = new Entry();
	entry2.setId("id2");
	entry2.setTitle("title2");

	List<Entry> entries = new ArrayList<Entry>(2);
	entries.add(entry1);
	entries.add(entry2);
	feed.setEntries(entries);

	MockHttpOutputMessage outputMessage = new MockHttpOutputMessage();
	converter.write(feed, null, outputMessage);

	assertEquals("Invalid content-type", new MediaType("application", "atom+xml", utf8),
			outputMessage.getHeaders().getContentType());
	String expected = "<feed xmlns=\"http://www.w3.org/2005/Atom\">" + "<title>title</title>" +
			"<entry><id>id1</id><title>title1</title></entry>" +
			"<entry><id>id2</id><title>title2</title></entry></feed>";
	assertXMLEqual(expected, outputMessage.getBodyAsString(utf8));
}
 
Example 14
Source File: VetsAtomView.java    From enhanced-pet-clinic with Apache License 2.0 5 votes vote down vote up
@Override
protected List<Entry> buildFeedEntries(Map<String, Object> model, HttpServletRequest request,
		HttpServletResponse response) throws Exception {

	log.info("In buildFeedEntries: " + model);

	Vets vets = (Vets) model.get("vets");
	List<Vet> vetList = vets.getVetList();
	List<Entry> entries = new ArrayList<Entry>(vetList.size());

	for (Vet vet : vetList) {
		Entry entry = new Entry();
		// see
		// http://diveintomark.org/archives/2004/05/28/howto-atom-id#other
		entry.setId(String.format("tag:springsource.org,%s", vet.getId()));
		entry.setTitle(String.format("Vet: %s %s", vet.getFirstName(), vet.getLastName()));
		entry.setUpdated(new Date());

		Content summary = new Content();
		summary.setValue(vet.getSpecialties().toString());
		entry.setSummary(summary);

		entries.add(entry);
	}
	response.setContentType("blabla");
	return entries;
}
 
Example 15
Source File: FileBasedCollection.java    From rome with Apache License 2.0 5 votes vote down vote up
/**
 * Add media entry to collection. Accepts a media file to be added to collection. The file will
 * be saved to disk in a directory under the collection's directory and the path will follow the
 * pattern <code>[collection-plural]/[entryid]/media/[entryid]</code>. An Atom entry will be
 * created to store metadata for the entry and it will exist at the path
 * <code>[collection-plural]/[entryid]/entry.xml</code>. The entry will be added to the
 * collection's feed in [collection-plural]/feed.xml.
 *
 * @param entry Entry object
 * @param slug String to be used in file-name
 * @param is Source of media data
 * @throws java.lang.Exception On Error
 * @return Location URI of entry
 */
public String addMediaEntry(final Entry entry, final String slug, final InputStream is) throws Exception {
    synchronized (FileStore.getFileStore()) {

        // Save media file temp file
        final Content content = entry.getContents().get(0);
        if (entry.getTitle() == null) {
            entry.setTitle(slug);
        }
        final String fileName = createFileName(slug != null ? slug : entry.getTitle(), content.getType());
        final File tempFile = File.createTempFile(fileName, "tmp");
        final FileOutputStream fos = new FileOutputStream(tempFile);
        Utilities.copyInputToOutput(is, fos);
        fos.close();

        // Save media file
        final FileInputStream fis = new FileInputStream(tempFile);
        saveMediaFile(fileName, content.getType(), tempFile.length(), fis);
        fis.close();
        final File resourceFile = new File(getEntryMediaPath(fileName));

        // Create media-link entry
        updateTimestamps(entry);

        // Save media-link entry
        final String entryPath = getEntryPath(fileName);
        final OutputStream os = FileStore.getFileStore().getFileOutputStream(entryPath);
        updateMediaEntryAppLinks(entry, resourceFile.getName(), true);
        Atom10Generator.serializeEntry(entry, new OutputStreamWriter(os, "UTF-8"));
        os.flush();
        os.close();

        // Update feed with new entry
        final Feed f = getFeedDocument();
        updateMediaEntryAppLinks(entry, resourceFile.getName(), false);
        updateFeedDocumentWithNewEntry(f, entry);

        return getEntryEditURI(fileName, false, true);
    }
}
 
Example 16
Source File: FileBasedCollection.java    From rome with Apache License 2.0 5 votes vote down vote up
private void updateMediaEntryAppLinks(final Entry entry, final String fileName, final boolean singleEntry) {

        // TODO: figure out why PNG is missing from Java MIME types
        final FileTypeMap map = FileTypeMap.getDefaultFileTypeMap();
        if (map instanceof MimetypesFileTypeMap) {
            try {
                ((MimetypesFileTypeMap) map).addMimeTypes("image/png png PNG");
            } catch (final Exception ignored) {
            }
        }
        entry.setId(getEntryMediaViewURI(fileName));
        entry.setTitle(fileName);
        entry.setUpdated(new Date());

        final List<Link> otherlinks = new ArrayList<Link>();
        entry.setOtherLinks(otherlinks);

        final Link editlink = new Link();
        editlink.setRel("edit");
        editlink.setHref(getEntryEditURI(fileName, relativeURIs, singleEntry));
        otherlinks.add(editlink);

        final Link editMedialink = new Link();
        editMedialink.setRel("edit-media");
        editMedialink.setHref(getEntryMediaEditURI(fileName, relativeURIs, singleEntry));
        otherlinks.add(editMedialink);

        final Content content = entry.getContents().get(0);
        content.setSrc(getEntryMediaViewURI(fileName));
        final List<Content> contents = new ArrayList<Content>();
        contents.add(content);
        entry.setContents(contents);
    }