[jboss-cvs] JBossBlog SVN: r67 - in trunk/blog-common/src/java/org/jboss/blog: rome and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Mar 14 11:35:15 EDT 2007
Author: adamw
Date: 2007-03-14 11:35:15 -0400 (Wed, 14 Mar 2007)
New Revision: 67
Added:
trunk/blog-common/src/java/org/jboss/blog/rome/
trunk/blog-common/src/java/org/jboss/blog/rome/CommentRssModule.java
trunk/blog-common/src/java/org/jboss/blog/rome/CommentRssModuleGenerator.java
trunk/blog-common/src/java/org/jboss/blog/rome/CommentRssModuleImpl.java
trunk/blog-common/src/java/org/jboss/blog/rome/CommentRssModuleParser.java
Log:
Refactoring
Added: trunk/blog-common/src/java/org/jboss/blog/rome/CommentRssModule.java
===================================================================
--- trunk/blog-common/src/java/org/jboss/blog/rome/CommentRssModule.java (rev 0)
+++ trunk/blog-common/src/java/org/jboss/blog/rome/CommentRssModule.java 2007-03-14 15:35:15 UTC (rev 67)
@@ -0,0 +1,14 @@
+package org.jboss.blog.rome;
+
+import com.sun.syndication.feed.module.Module;
+import com.sun.syndication.feed.CopyFrom;
+
+/**
+ * @author Adam Warski (adamw at aster.pl)
+ */
+public interface CommentRssModule extends Module, CopyFrom {
+ public static final String URI = "http://wellformedweb.org/CommentAPI/";
+
+ public String getCommentRss();
+ public void setCommentRss(String commentRss);
+}
Added: trunk/blog-common/src/java/org/jboss/blog/rome/CommentRssModuleGenerator.java
===================================================================
--- trunk/blog-common/src/java/org/jboss/blog/rome/CommentRssModuleGenerator.java (rev 0)
+++ trunk/blog-common/src/java/org/jboss/blog/rome/CommentRssModuleGenerator.java 2007-03-14 15:35:15 UTC (rev 67)
@@ -0,0 +1,58 @@
+package org.jboss.blog.rome;
+
+import com.sun.syndication.io.ModuleGenerator;
+import com.sun.syndication.feed.module.Module;
+
+import java.util.Set;
+import java.util.HashSet;
+import java.util.Collections;
+
+import org.jdom.Namespace;
+import org.jdom.Element;
+
+/**
+ * @author Adam Warski (adamw at aster.pl)
+ */
+public class CommentRssModuleGenerator implements ModuleGenerator {
+ private static final Namespace COMM_RSS_NS =
+ Namespace.getNamespace("wfw", CommentRssModule.URI);
+
+ public String getNamespaceUri() {
+ return CommentRssModule.URI;
+ }
+
+ private static Set NAMESPACES;
+
+ static {
+ Set nss = new HashSet();
+ //noinspection unchecked
+ nss.add(CommentRssModuleGenerator.COMM_RSS_NS);
+ //noinspection unchecked
+ CommentRssModuleGenerator.NAMESPACES = Collections.unmodifiableSet(nss);
+ }
+
+ public Set getNamespaces() {
+ return CommentRssModuleGenerator.NAMESPACES;
+ }
+
+ public void generate(Module module, Element element) {
+ // this is not necessary, it is done to avoid the namespace definition in every item.
+ Element root = element;
+ while (root.getParent()!=null && root.getParent() instanceof Element) {
+ root = (Element) element.getParent();
+ }
+ root.addNamespaceDeclaration(CommentRssModuleGenerator.COMM_RSS_NS);
+
+ CommentRssModule crm = (CommentRssModule) module;
+ if (crm.getCommentRss() != null) {
+ element.addContent(generateSimpleElement("commentRss",
+ crm.getCommentRss()));
+ }
+ }
+
+ protected Element generateSimpleElement(String name, String value) {
+ Element element = new Element(name, CommentRssModuleGenerator.COMM_RSS_NS);
+ element.addContent(value);
+ return element;
+ }
+}
Added: trunk/blog-common/src/java/org/jboss/blog/rome/CommentRssModuleImpl.java
===================================================================
--- trunk/blog-common/src/java/org/jboss/blog/rome/CommentRssModuleImpl.java (rev 0)
+++ trunk/blog-common/src/java/org/jboss/blog/rome/CommentRssModuleImpl.java 2007-03-14 15:35:15 UTC (rev 67)
@@ -0,0 +1,32 @@
+package org.jboss.blog.rome;
+
+import com.sun.syndication.feed.module.ModuleImpl;
+
+/**
+ * @author Adam Warski (adamw at aster.pl)
+ */
+public class CommentRssModuleImpl extends ModuleImpl
+ implements CommentRssModule {
+ private String commentRss;
+
+ public CommentRssModuleImpl() {
+ super(CommentRssModule.class, CommentRssModule.URI);
+ }
+
+ public String getCommentRss() {
+ return commentRss;
+ }
+
+ public void setCommentRss(String commentRss) {
+ this.commentRss = commentRss;
+ }
+
+ public Class getInterface() {
+ return CommentRssModule.class;
+ }
+
+ public void copyFrom(Object obj) {
+ CommentRssModule crm = (CommentRssModule) obj;
+ setCommentRss(crm.getCommentRss());
+ }
+}
Added: trunk/blog-common/src/java/org/jboss/blog/rome/CommentRssModuleParser.java
===================================================================
--- trunk/blog-common/src/java/org/jboss/blog/rome/CommentRssModuleParser.java (rev 0)
+++ trunk/blog-common/src/java/org/jboss/blog/rome/CommentRssModuleParser.java 2007-03-14 15:35:15 UTC (rev 67)
@@ -0,0 +1,31 @@
+package org.jboss.blog.rome;
+
+import com.sun.syndication.io.ModuleParser;
+import com.sun.syndication.feed.module.Module;
+import org.jdom.Namespace;
+import org.jdom.Element;
+
+/**
+ * @author Adam Warski (adamw at aster.pl)
+ */
+public class CommentRssModuleParser implements ModuleParser {
+ private static final Namespace COMM_RSS_NS =
+ Namespace.getNamespace("wfw", CommentRssModule.URI);
+
+ public String getNamespaceUri() {
+ return CommentRssModule.URI;
+ }
+
+ public Module parse(Element dcRoot) {
+ boolean foundSomething = false;
+ CommentRssModule fm = new CommentRssModuleImpl();
+
+ Element e = dcRoot.getChild("commentRss", CommentRssModuleParser.COMM_RSS_NS);
+ if (e != null) {
+ foundSomething = true;
+ fm.setCommentRss(e.getText());
+ }
+
+ return (foundSomething) ? fm : null;
+ }
+}
More information about the jboss-cvs-commits
mailing list