You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by js...@apache.org on 2007/06/25 07:11:05 UTC
svn commit: r550350 - in /incubator/tuscany/java/sca/demos:
alert-aggregator/src/main/java/org/apache/tuscany/sca/demos/aggregator/
bigbank-account/src/main/java/bigbank/account/feed/
bigbank-account/src/main/resources/
Author: jsdelfino
Date: Sun Jun 24 22:11:04 2007
New Revision: 550350
URL: http://svn.apache.org/viewvc?view=rev&rev=550350
Log:
Ported demos to latest changes in the feed binding.
Modified:
incubator/tuscany/java/sca/demos/alert-aggregator/src/main/java/org/apache/tuscany/sca/demos/aggregator/AlertsFeedServiceImpl.java
incubator/tuscany/java/sca/demos/alert-aggregator/src/main/java/org/apache/tuscany/sca/demos/aggregator/AlertsServiceImpl.java
incubator/tuscany/java/sca/demos/bigbank-account/src/main/java/bigbank/account/feed/AccountFeedImpl.java
incubator/tuscany/java/sca/demos/bigbank-account/src/main/resources/BigBank.composite
Modified: incubator/tuscany/java/sca/demos/alert-aggregator/src/main/java/org/apache/tuscany/sca/demos/aggregator/AlertsFeedServiceImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/demos/alert-aggregator/src/main/java/org/apache/tuscany/sca/demos/aggregator/AlertsFeedServiceImpl.java?view=diff&rev=550350&r1=550349&r2=550350
==============================================================================
--- incubator/tuscany/java/sca/demos/alert-aggregator/src/main/java/org/apache/tuscany/sca/demos/aggregator/AlertsFeedServiceImpl.java (original)
+++ incubator/tuscany/java/sca/demos/alert-aggregator/src/main/java/org/apache/tuscany/sca/demos/aggregator/AlertsFeedServiceImpl.java Sun Jun 24 22:11:04 2007
@@ -23,12 +23,13 @@
import java.util.ArrayList;
import java.util.List;
-import org.apache.tuscany.sca.binding.feed.Feed;
+import org.apache.tuscany.sca.binding.feed.ResourceCollection;
import org.apache.tuscany.sca.demos.aggregator.types.AlertType;
import org.apache.tuscany.sca.demos.aggregator.types.AlertsType;
import org.osoa.sca.annotations.Reference;
import org.osoa.sca.annotations.Service;
+import com.sun.syndication.feed.atom.Feed;
import com.sun.syndication.feed.synd.SyndEntry;
import com.sun.syndication.feed.synd.SyndEntryImpl;
import com.sun.syndication.feed.synd.SyndFeed;
@@ -39,8 +40,8 @@
*
* @version $Rev$ $Date$
*/
-@Service(Feed.class)
-public class AlertsFeedServiceImpl implements Feed {
+@Service(ResourceCollection.class)
+public class AlertsFeedServiceImpl implements ResourceCollection {
private AlertsService alerts;
@@ -56,14 +57,14 @@
*
* @return the structure containing alerts
*/
- public SyndFeed get(String uri) {
+ public Feed getCollection() {
// Create a new Feed
SyndFeed feed = new SyndFeedImpl();
feed.setTitle("Apache Tuscant Feed Aggregator");
feed.setDescription("A sample showing an SCA application to aggregate various types of feeds");
feed.setAuthor("Apache Tuscany");
- feed.setLink(uri);
+ feed.setLink("http://incubator.apache.org/tuscany");
// Aggregate entries from feed1 and feed2
List<SyndEntry> entries = new ArrayList<SyndEntry>();
@@ -86,6 +87,7 @@
}
feed.setEntries(entries);
- return feed;
+
+ return (Feed)feed.createWireFeed("atom_1.0");
}
}
Modified: incubator/tuscany/java/sca/demos/alert-aggregator/src/main/java/org/apache/tuscany/sca/demos/aggregator/AlertsServiceImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/demos/alert-aggregator/src/main/java/org/apache/tuscany/sca/demos/aggregator/AlertsServiceImpl.java?view=diff&rev=550350&r1=550349&r2=550350
==============================================================================
--- incubator/tuscany/java/sca/demos/alert-aggregator/src/main/java/org/apache/tuscany/sca/demos/aggregator/AlertsServiceImpl.java (original)
+++ incubator/tuscany/java/sca/demos/alert-aggregator/src/main/java/org/apache/tuscany/sca/demos/aggregator/AlertsServiceImpl.java Sun Jun 24 22:11:04 2007
@@ -39,7 +39,7 @@
import com.sun.syndication.feed.synd.SyndFeed;
import com.sun.syndication.feed.synd.SyndFeedImpl;
-import org.apache.tuscany.sca.binding.feed.Feed;
+import org.apache.tuscany.sca.binding.feed.ResourceCollection;
/**
* Read all new alerts from the specified sources
Modified: incubator/tuscany/java/sca/demos/bigbank-account/src/main/java/bigbank/account/feed/AccountFeedImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/demos/bigbank-account/src/main/java/bigbank/account/feed/AccountFeedImpl.java?view=diff&rev=550350&r1=550349&r2=550350
==============================================================================
--- incubator/tuscany/java/sca/demos/bigbank-account/src/main/java/bigbank/account/feed/AccountFeedImpl.java (original)
+++ incubator/tuscany/java/sca/demos/bigbank-account/src/main/java/bigbank/account/feed/AccountFeedImpl.java Sun Jun 24 22:11:04 2007
@@ -18,51 +18,87 @@
*/
package bigbank.account.feed;
-import org.apache.tuscany.sca.binding.feed.Feed;
+import java.io.InputStream;
+import java.util.Collections;
+
+import org.apache.tuscany.sca.binding.feed.EditableResourceCollection;
+import org.apache.tuscany.sca.binding.feed.ResourceNotFoundException;
import org.osoa.sca.annotations.Reference;
import org.osoa.sca.annotations.Service;
import bigbank.account.AccountService;
-import com.sun.syndication.feed.synd.SyndContent;
-import com.sun.syndication.feed.synd.SyndContentImpl;
-import com.sun.syndication.feed.synd.SyndEntry;
-import com.sun.syndication.feed.synd.SyndEntryImpl;
-import com.sun.syndication.feed.synd.SyndFeed;
-import com.sun.syndication.feed.synd.SyndFeedImpl;
+import com.sun.syndication.feed.atom.Content;
+import com.sun.syndication.feed.atom.Entry;
+import com.sun.syndication.feed.atom.Feed;
+import com.sun.syndication.feed.atom.Link;
/**
* @version $$Rev$$ $$Date$$
*/
-@Service(Feed.class)
-public class AccountFeedImpl implements Feed {
+@Service(EditableResourceCollection.class)
+public class AccountFeedImpl implements EditableResourceCollection {
@Reference
protected AccountService accountService;
@SuppressWarnings("unchecked")
- public SyndFeed get(String uri) {
-
- // Get the account report for the specified customer ID
- String customerID = uri.substring(uri.lastIndexOf('/')+1);
- double balance = accountService.getAccountReport(customerID);
- String value = Double.toString(balance);
+ public com.sun.syndication.feed.atom.Feed getCollection() {
// Create a new Feed
- SyndFeed feed = new SyndFeedImpl();
+ Feed feed = new Feed();
+ feed.setId("accounts");
feed.setTitle("Account Report Feed");
- feed.setDescription("A sample Account Report feed");
- feed.setAuthor("anonymous");
- feed.setLink(uri);
-
- SyndEntry entry = new SyndEntryImpl();
- entry.setAuthor("anonymous");
- SyndContent content = new SyndContentImpl();
- content.setValue(value);
- entry.setDescription(content);
+ Content subtitle = new Content();
+ subtitle.setValue("This is a sample feed");
+ feed.setSubtitle(subtitle);
+ Link link = new Link();
+ link.setHref("http://incubator.apache.org/tuscany");
+ feed.getAlternateLinks().add(link);
+
+ // Add the Account report entry
+ Entry entry = get("1234");
feed.getEntries().add(entry);
return feed;
+ }
+
+ public void delete(String id) {
+ }
+
+ public Entry get(String id) {
+
+ // Get the account report for the specified customer ID
+ double balance = accountService.getAccountReport(id);
+ String value = Double.toString(balance);
+
+ Entry entry = new Entry();
+ entry.setId("account-" + id);
+ entry.setTitle("Account Report Entry");
+ Content summary = new Content();
+ summary.setType(Content.HTML);
+ summary.setValue("This is your account report: <b>" + value + "</b>");
+ entry.setSummary(summary);
+ Content content = new Content();
+ content.setValue(value);
+ entry.setContents(Collections.singletonList(content));
+ return entry;
+ }
+
+ public Entry post(Entry entry) {
+ return null;
+ }
+
+ public Entry put(String id, Entry entry) {
+ return null;
+ }
+
+ public Entry postMedia(String title, String slug, String contentType, InputStream media) {
+ return null;
+ }
+
+ public Entry putMedia(String id, String contentType, InputStream media) throws ResourceNotFoundException {
+ return null;
}
}
Modified: incubator/tuscany/java/sca/demos/bigbank-account/src/main/resources/BigBank.composite
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/demos/bigbank-account/src/main/resources/BigBank.composite?view=diff&rev=550350&r1=550349&r2=550350
==============================================================================
--- incubator/tuscany/java/sca/demos/bigbank-account/src/main/resources/BigBank.composite (original)
+++ incubator/tuscany/java/sca/demos/bigbank-account/src/main/resources/BigBank.composite Sun Jun 24 22:11:04 2007
@@ -19,7 +19,11 @@
</service>
<service name="AccountFeed" promote="AccountFeedComponent">
- <binding.atom uri="/feed/*"/>
+ <binding.rss uri="/rss"/>
+ </service>
+
+ <service name="AccountFeed" promote="AccountFeedComponent">
+ <binding.atom uri="/atom"/>
</service>
<component name="AccountServiceComponent">
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org