Author: rfeng
Date: Tue Jun 24 23:22:15 2008
New Revision: 671442
URL: http://svn.apache.org/viewvc?rev=671442&view=rev
Log:
Apply the patch from Dan Becker on TUSCANY-2436. Thanks.
Modified:
tuscany/java/sca/demos/alert-aggregator-webapp/src/main/java/org/apache/tuscany/sca/demos/aggregator/RSSCheckerServiceImpl.java
tuscany/java/sca/demos/alert-aggregator-webapp/src/main/resources/sources.xml
Modified:
tuscany/java/sca/demos/alert-aggregator-webapp/src/main/java/org/apache/tuscany/sca/demos/aggregator/RSSCheckerServiceImpl.java
URL:
http://svn.apache.org/viewvc/tuscany/java/sca/demos/alert-aggregator-webapp/src/main/java/org/apache/tuscany/sca/demos/aggregator/RSSCheckerServiceImpl.java?rev=671442&r1=671441&r2=671442&view=diff
==============================================================================
---
tuscany/java/sca/demos/alert-aggregator-webapp/src/main/java/org/apache/tuscany/sca/demos/aggregator/RSSCheckerServiceImpl.java
(original)
+++
tuscany/java/sca/demos/alert-aggregator-webapp/src/main/java/org/apache/tuscany/sca/demos/aggregator/RSSCheckerServiceImpl.java
Tue Jun 24 23:22:15 2008
@@ -20,6 +20,7 @@
import java.net.URL;
import java.text.DateFormat;
+import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
@@ -44,9 +45,12 @@
List returnAlertList = returnAlerts.getAlert();
try {
- // Turn the date into something we can process.
- DateFormat dateFormatter = DateFormat.getDateTimeInstance();
- Date timestamp = dateFormatter.parse(lastchecktimestamp);
+ // lastchecktimestamp comes from sources.xml configuration.
+ // That origin requires ISO 8601 date input (yyyy-MM-dd
hh:mm:ss).
+ DateFormat configDateFormatter = new SimpleDateFormat(
"yyyy-MM-dd hh:mm:ss");
+ Date timestamp = configDateFormatter.parse(lastchecktimestamp);
+ // Turn feed dates into something we can process.
+ DateFormat feedDateFormatter = DateFormat.getDateTimeInstance();
// get the feed data from the supplied address
SyndFeedInput input = new SyndFeedInput();
@@ -58,6 +62,7 @@
for(Object entry: entries){
SyndEntry syndEntry = (SyndEntry)entry;
+ // System.err.println( "Entry pubdate=" +
syndEntry.getPublishedDate() );
if (syndEntry.getPublishedDate().after(timestamp)){
AlertType newAlert = factory.createAlertType();
@@ -67,7 +72,7 @@
// "]]>");
newAlert.setSummary("");
newAlert.setAddress(syndEntry.getLink());
-
newAlert.setDate(dateFormatter.format(syndEntry.getPublishedDate()));
+
newAlert.setDate(feedDateFormatter.format(syndEntry.getPublishedDate()));
newAlert.setId(rssaddress);
newAlert.setUnread(true);
@@ -76,6 +81,7 @@
}
} catch(Exception ex) {
+ ex.printStackTrace( System.err );
System.err.println("Exception " + ex.toString());
}
Modified:
tuscany/java/sca/demos/alert-aggregator-webapp/src/main/resources/sources.xml
URL:
http://svn.apache.org/viewvc/tuscany/java/sca/demos/alert-aggregator-webapp/src/main/resources/sources.xml?rev=671442&r1=671441&r2=671442&view=diff
==============================================================================
---
tuscany/java/sca/demos/alert-aggregator-webapp/src/main/resources/sources.xml
(original)
+++
tuscany/java/sca/demos/alert-aggregator-webapp/src/main/resources/sources.xml
Tue Jun 24 23:22:15 2008
@@ -17,17 +17,18 @@
specific language governing permissions and limitations
under the License.
-->
+<!-- Note: the demo expects LastChecked date in ISO 8601 format (yyyy-MM-dd
hh:mm:ss). -->
<ns0:Config xmlns:ns0="http://tuscany.apache.org/sca/demos/aggregator/types">
<ns0:Source Id="0" FeedType="rss">
<ns0:Name>BBC News</ns0:Name>
<ns0:Address>http://news.bbc.co.uk/</ns0:Address>
- <ns0:LastChecked>10-Jun-2007 16:34:03</ns0:LastChecked>
+ <ns0:LastChecked>2008-06-20 12:00:00</ns0:LastChecked>
<ns0:FeedAddress>http://newsrss.bbc.co.uk/rss/newsonline_uk_edition/world/rss.xml</ns0:FeedAddress>
</ns0:Source>
<ns0:Source Id="1" FeedType="rss">
<ns0:Name>Engadget</ns0:Name>
<ns0:Address>http://www.engadget.com</ns0:Address>
- <ns0:LastChecked>10-Jun-2007 16:34:03</ns0:LastChecked>
+ <ns0:LastChecked>2008-06-20 12:00:00</ns0:LastChecked>
<ns0:FeedAddress>http://www.engadget.com/rss.xml</ns0:FeedAddress>
</ns0:Source>
</ns0:Config>