You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by lr...@apache.org on 2008/02/26 01:43:36 UTC

svn commit: r631050 - in /incubator/tuscany/java/sca/modules/binding-feed-atom/src/main/java/org/apache/tuscany/sca/binding/feed/provider: AtomBindingInvoker.java AtomFeedEntryUtil.java FeedBindingListenerServlet.java

Author: lresende
Date: Mon Feb 25 16:43:35 2008
New Revision: 631050

URL: http://svn.apache.org/viewvc?rev=631050&view=rev
Log:
More updates to porting binding-feed-atom to use Apache Abdera

Removed:
    incubator/tuscany/java/sca/modules/binding-feed-atom/src/main/java/org/apache/tuscany/sca/binding/feed/provider/AtomFeedEntryUtil.java
Modified:
    incubator/tuscany/java/sca/modules/binding-feed-atom/src/main/java/org/apache/tuscany/sca/binding/feed/provider/AtomBindingInvoker.java
    incubator/tuscany/java/sca/modules/binding-feed-atom/src/main/java/org/apache/tuscany/sca/binding/feed/provider/FeedBindingListenerServlet.java

Modified: incubator/tuscany/java/sca/modules/binding-feed-atom/src/main/java/org/apache/tuscany/sca/binding/feed/provider/AtomBindingInvoker.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-feed-atom/src/main/java/org/apache/tuscany/sca/binding/feed/provider/AtomBindingInvoker.java?rev=631050&r1=631049&r2=631050&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/binding-feed-atom/src/main/java/org/apache/tuscany/sca/binding/feed/provider/AtomBindingInvoker.java (original)
+++ incubator/tuscany/java/sca/modules/binding-feed-atom/src/main/java/org/apache/tuscany/sca/binding/feed/provider/AtomBindingInvoker.java Mon Feb 25 16:43:35 2008
@@ -78,7 +78,6 @@
         @Override
         public Message invoke(Message msg) {
 
-        	/*
             // Get an entry
             String id = (String)((Object[])msg.getBody())[0];
 
@@ -91,8 +90,9 @@
 
                 // Read the Atom entry
                 if (status == 200) {
-                    Entry feedEntry =
-                        AtomFeedEntryUtil.readFeedEntry("atom_1.0", new InputStreamReader(getMethod.getResponseBodyAsStream()));
+                	Document<Entry> doc = Abdera.getNewParser().parse(new InputStreamReader(getMethod.getResponseBodyAsStream()));
+                    Entry feedEntry = doc.getRoot();
+
                     msg.setBody(feedEntry);
 
                 } else if (status == 404) {
@@ -108,9 +108,6 @@
             }
 
             return msg;
-            */
-        	
-        	throw new UnsupportedOperationException("Not yet converted");
         }
     }
 
@@ -126,7 +123,6 @@
         @Override
         public Message invoke(Message msg) {
 
-        	/*
             // Post an entry
             Entry feedEntry = (Entry)((Object[])msg.getBody())[0];
 
@@ -137,7 +133,7 @@
 
                 // Write the Atom entry
                 StringWriter writer = new StringWriter();
-                AtomFeedEntryUtil.writeFeedEntry(feedEntry, "atom_1.0", writer);
+                feedEntry.writeTo(writer);
                 postMethod.setRequestHeader("Content-type", "application/atom+xml; charset=utf-8");
                 postMethod.setRequestEntity(new StringRequestEntity(writer.toString()));
 
@@ -146,9 +142,9 @@
 
                 // Read the Atom entry
                 if (status == 200 || status == 201) {
-                    Entry createdEntry =
-                        AtomFeedEntryUtil
-                            .readFeedEntry("atom_1.0", new InputStreamReader(postMethod.getResponseBodyAsStream()));
+                	Document<Entry> doc = Abdera.getNewParser().parse(new InputStreamReader(postMethod.getResponseBodyAsStream()));
+                    Entry createdEntry = doc.getRoot();
+
                     msg.setBody(createdEntry);
 
                 } else if (status == 404) {
@@ -164,9 +160,6 @@
             }
 
             return msg;
-            */
-        	
-        	throw new UnsupportedOperationException("Not yet converted");
         }
     }
 
@@ -181,8 +174,6 @@
 
         @Override
         public Message invoke(Message msg) {
-
-        	/*
             // Put an entry
             Object[] args = (Object[])msg.getBody();
             String id = (String)args[0];
@@ -195,7 +186,7 @@
 
                 // Write the Atom entry
                 StringWriter writer = new StringWriter();
-                AtomFeedEntryUtil.writeFeedEntry(feedEntry, "atom_1.0", writer);
+                feedEntry.writeTo(writer);
                 putMethod.setRequestHeader("Content-type", "application/atom+xml; charset=utf-8");
                 putMethod.setRequestEntity(new StringRequestEntity(writer.toString()));
 
@@ -205,9 +196,9 @@
                 // Read the Atom entry
                 if (status == 200 || status == 201) {
                     try {
-                        Entry updatedEntry =
-                            AtomFeedEntryUtil.readFeedEntry("atom_1.0", new InputStreamReader(putMethod
-                                .getResponseBodyAsStream()));
+                    	Document<Entry> doc = Abdera.getNewParser().parse(new InputStreamReader(putMethod.getResponseBodyAsStream()));
+                        Entry updatedEntry = doc.getRoot();
+
                         msg.setBody(updatedEntry);
                     } catch (Exception e) {
                         // Returning the updated entry is optional
@@ -226,9 +217,6 @@
             }
 
             return msg;
-            */
-        	
-        	throw new UnsupportedOperationException("Not yet converted");
         }
     }
 
@@ -297,8 +285,7 @@
 
                 // Read the Atom feed
                 if (status == 200) {
-                	Parser parser = Abdera.getNewParser();
-                    Document<Feed> doc = parser.parse(new InputStreamReader(getMethod.getResponseBodyAsStream()));
+                    Document<Feed> doc = Abdera.getNewParser().parse(new InputStreamReader(getMethod.getResponseBodyAsStream()));
                     Feed feed = doc.getRoot();
 
                     msg.setBody(feed);

Modified: incubator/tuscany/java/sca/modules/binding-feed-atom/src/main/java/org/apache/tuscany/sca/binding/feed/provider/FeedBindingListenerServlet.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-feed-atom/src/main/java/org/apache/tuscany/sca/binding/feed/provider/FeedBindingListenerServlet.java?rev=631050&r1=631049&r2=631050&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/binding-feed-atom/src/main/java/org/apache/tuscany/sca/binding/feed/provider/FeedBindingListenerServlet.java (original)
+++ incubator/tuscany/java/sca/modules/binding-feed-atom/src/main/java/org/apache/tuscany/sca/binding/feed/provider/FeedBindingListenerServlet.java Mon Feb 25 16:43:35 2008
@@ -35,10 +35,13 @@
 import org.apache.abdera.Abdera;
 import org.apache.abdera.model.Collection;
 import org.apache.abdera.model.Content;
+import org.apache.abdera.model.Document;
 import org.apache.abdera.model.Entry;
 import org.apache.abdera.model.Feed;
+import org.apache.abdera.model.Link;
 import org.apache.abdera.model.Service;
 import org.apache.abdera.model.Workspace;
+import org.apache.abdera.parser.ParseException;
 import org.apache.commons.codec.binary.Base64;
 import org.apache.tuscany.sca.databinding.Mediator;
 import org.apache.tuscany.sca.interfacedef.DataType;
@@ -278,7 +281,7 @@
             if (feedEntry != null) {
                 response.setContentType("application/atom+xml; charset=utf-8");
                 try {
-                    AtomFeedEntryUtil.writeFeedEntry(feedEntry, feedType, getWriter(response));
+                	feedEntry.writeTo(getWriter(response));
                 } catch (IOException ioe) {
                     throw new ServletException(ioe);
                 }
@@ -365,7 +368,7 @@
             return;
         }
 
-        /*
+
         // Get the request path
         String path = request.getPathInfo();
 
@@ -379,11 +382,10 @@
                 // Read the entry from the request
                 Entry feedEntry;
                 try {
-                    feedEntry = AtomFeedEntryUtil.readFeedEntry(feedType, request.getReader());
-                } catch (JDOMException e) {
-                    throw new ServletException(e);
-                } catch (FeedException e) {
-                    throw new ServletException(e);
+                	Document<Entry> doc = Abdera.getNewParser().parse(request.getReader());
+                	feedEntry = doc.getRoot();
+                } catch (ParseException pe) {
+                    throw new ServletException(pe);
                 }
 
                 // Let the component implementation create it
@@ -435,21 +437,18 @@
             if (createdFeedEntry != null) {
 
                 // Set location of the created entry in the Location header
-                for (Object l : createdFeedEntry.getOtherLinks()) {
-                    Link link = (Link)l;
-                    if (link.getRel() == null || "edit".equals(link.getRel())) {
-                        response.addHeader("Location", link.getHref());
-                        break;
-                    }
-                }
+            	Link editLink = createdFeedEntry.getEditLink();
+				if (editLink.getRel() == null || "edit".equals(editLink.getRel())) {
+					response.addHeader("Location", editLink.getHref().toString());
+				}
 
                 // Write the created Atom entry
                 response.setStatus(HttpServletResponse.SC_CREATED);
                 response.setContentType("application/atom+xml; charset=utf-8");
                 try {
-                    AtomFeedEntryUtil.writeFeedEntry(createdFeedEntry, feedType, getWriter(response));
-                } catch (FeedException e) {
-                    throw new ServletException(e);
+                	createdFeedEntry.writeTo(getWriter(response));
+                } catch (ParseException pe) {
+                    throw new ServletException(pe);
                 }
 
             } else {
@@ -459,7 +458,6 @@
         } else {
             response.sendError(HttpServletResponse.SC_NOT_FOUND);
         }
-        */
     }
 
     private Writer getWriter(HttpServletResponse response) throws UnsupportedEncodingException, IOException {
@@ -477,7 +475,6 @@
             return;
         }
 
-        /*
         // Get the request path
         String path = request.getPathInfo();
 
@@ -491,11 +488,10 @@
                 // Read the entry from the request
                 Entry feedEntry;
                 try {
-                    feedEntry = AtomFeedEntryUtil.readFeedEntry(feedType, request.getReader());
-                } catch (JDOMException e) {
-                    throw new ServletException(e);
-                } catch (FeedException e) {
-                    throw new ServletException(e);
+                	Document<Entry> doc = Abdera.getNewParser().parse(request.getReader());
+                	feedEntry = doc.getRoot();
+                } catch (ParseException pe) {
+                    throw new ServletException(pe);
                 }
 
                 // Let the component implementation create it
@@ -587,8 +583,6 @@
                 throw new ServletException((Throwable)responseMessage.getBody());
             }
         }
-        
-        */
     }
 
     /**
@@ -635,7 +629,6 @@
      * @return
      */
     private boolean authenticate(String user, String password) {
-
         // TODO Handle this using SCA security policies
         return ("admin".equals(user) && "admin".equals(password));
     }



---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org