A
person construct is used to describe about a person (or) an organisation.
Person
construct contain following elements.
a.
name
: Represents human readable name of the person
b.
uri
: Specify the IRI associated with the person
c.
email
: Email address associated with the person
org.apache.abdera.model.Person
interface represents the person construct.
How to add Person
construct to a feed?
Feed
interface provides addAuthor method to add a person details to feed.
Person addAuthor(String name, String email, String iri) <T extends Source> T addAuthor(Person person) Person addAuthor(String name); private static void addAuthorToFeed(Feed feed) { String name = "hari krishna"; String email = "noreply@blogger.com"; String iri = "https://self-learning-java-tutorial.blogspot.com"; feed.addAuthor(name, email, iri); }
Above
snippet generates following xml data.
<author> <name>hari krishna</name> <email>noreply@blogger.com</email> <uri>https://self-learning-java-tutorial.blogspot.com</uri> </author>
Can I add Person
construct to entry?
Yes,
you can add person construct to entry also.
<entry> <id>tag:blogger.com,1999:blog-3062500619105519975.post-918659526208416960</id> <published>2016-12-17T02:39:08.409Z</published> <title type="text">SWT: Slider Tutorial</title> <content type="html">Slider class is used to define Slider widget</content> <author> <name>Rama Krishna Gurram</name> <email>noreply@blogger.com</email> <uri>https://self-learning-java-tutorial.blogspot.com</uri> </author> </entry>
Find
the below working application.
HelloWorld.java
import java.io.IOException; import java.util.Date; import org.apache.abdera.Abdera; import org.apache.abdera.model.Content; import org.apache.abdera.model.Entry; import org.apache.abdera.model.Feed; import org.apache.abdera.model.Text; import org.apache.abdera.writer.Writer; public class HelloWorld { private static void addMetaData(Feed feed) { feed.setId("tag:blogger.com,1999:blog-3062500619105519975"); feed.setUpdated(new Date()); feed.setTitle("java tutorial : Blog to learn java programming"); feed.setSubtitle("Learners Blog"); } private static void addLinksToFeed(Feed feed) { /* Adding Links */ String rel = "http://schemas.google.com/g/2005#feed"; String type = "application/atom+xml"; String href = "https://self-learning-java-tutorial.blogspot.com/feeds/posts/default"; String title = ""; String hreflang = ""; long length = 0; feed.addLink(href, rel, type, title, hreflang, length); rel = "self"; type = "application/atom+xml"; href = "http://www.blogger.com/feeds/3062500619105519975/posts/default?alt=atom"; feed.addLink(href, rel, type, title, hreflang, length); } private static void addAuthorToFeed(Feed feed) { String name = "hari krishna"; String email = "noreply@blogger.com"; String iri = "https://self-learning-java-tutorial.blogspot.com"; feed.addAuthor(name, email, iri); } private static void addEntry(Feed feed) { Entry entry1 = feed.addEntry(); entry1.setId("tag:blogger.com,1999:blog-3062500619105519975.post-918659526208416960"); entry1.setPublished(new Date()); entry1.setTitle("SWT: Slider Tutorial", Text.Type.TEXT); entry1.setContent("Slider class is used to define Slider widget", Content.Type.HTML); entry1.addAuthor("Rama Krishna Gurram", "noreply@blogger.com", "https://self-learning-java-tutorial.blogspot.com"); Entry entry2 = feed.addEntry(); entry2.setId("tag:blogger.com,1999:blog-3062500619105519975.post-918659526208416960"); entry2.setPublished(new Date()); entry2.setTitle("SWT: Slider Tutorial", Text.Type.HTML); entry2.setContent("Slider class is used to define Slider widget", Content.Type.HTML); Entry entry3 = feed.addEntry(); entry3.setId("tag:blogger.com,1999:blog-3062500619105519975.post-918659526208416960"); entry3.setPublished(new Date()); entry3.setTitle("SWT: Slider Tutorial", Text.Type.XHTML); entry3.setContent("Slider class is used to define Slider widget", Content.Type.HTML); feed.addEntry(entry1); feed.addEntry(entry2); feed.addEntry(entry3); } public static void main(String args[]) throws IOException { Abdera abdera = new Abdera(); /* Create a new Feed instance. */ Feed feed = abdera.newFeed(); /* Populate feed */ addMetaData(feed); addLinksToFeed(feed); addAuthorToFeed(feed); addEntry(feed); /* Print the feed to console */ Writer writer = abdera.getWriterFactory().getWriter("prettyxml"); feed.writeTo(writer, System.out); } }
Output
<?xml version='1.0' encoding='UTF-8'?> <feed xmlns="http://www.w3.org/2005/Atom"> <id>tag:blogger.com,1999:blog-3062500619105519975</id> <updated>2016-12-17T02:39:08.389Z</updated> <title type="text">java tutorial : Blog to learn java programming</title> <subtitle type="text">Learners Blog</subtitle> <link href="https://self-learning-java-tutorial.blogspot.com/feeds/posts/default" rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" title="" hreflang="" length="0"/> <link href="http://www.blogger.com/feeds/3062500619105519975/posts/default?alt=atom" rel="self" type="application/atom+xml" title="" hreflang="" length="0"/> <author> <name>hari krishna</name> <email>noreply@blogger.com</email> <uri>https://self-learning-java-tutorial.blogspot.com</uri> </author> <entry> <id>tag:blogger.com,1999:blog-3062500619105519975.post-918659526208416960</id> <published>2016-12-17T02:39:08.409Z</published> <title type="text">SWT: Slider Tutorial</title> <content type="html">Slider class is used to define Slider widget</content> <author> <name>Rama Krishna Gurram</name> <email>noreply@blogger.com</email> <uri>https://self-learning-java-tutorial.blogspot.com</uri> </author> </entry> <entry> <id>tag:blogger.com,1999:blog-3062500619105519975.post-918659526208416960</id> <published>2016-12-17T02:39:08.411Z</published> <title type="html">SWT: Slider Tutorial</title> <content type="html">Slider class is used to define Slider widget</content> </entry> <entry> <id>tag:blogger.com,1999:blog-3062500619105519975.post-918659526208416960</id> <published>2016-12-17T02:39:08.412Z</published> <title type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">SWT: Slider Tutorial</div> </title> <content type="html">Slider class is used to define Slider widget</content> </entry> </feed>
No comments:
Post a Comment