Return-Path: Delivered-To: apmail-incubator-esme-commits-archive@minotaur.apache.org Received: (qmail 19595 invoked from network); 6 Jul 2010 15:03:17 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 6 Jul 2010 15:03:17 -0000 Received: (qmail 77349 invoked by uid 500); 6 Jul 2010 15:03:17 -0000 Delivered-To: apmail-incubator-esme-commits-archive@incubator.apache.org Received: (qmail 77317 invoked by uid 500); 6 Jul 2010 15:03:17 -0000 Mailing-List: contact esme-commits-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: esme-dev@incubator.apache.org Delivered-To: mailing list esme-commits@incubator.apache.org Received: (qmail 77309 invoked by uid 99); 6 Jul 2010 15:03:16 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 06 Jul 2010 15:03:16 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 06 Jul 2010 15:03:14 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 6588A238888F; Tue, 6 Jul 2010 15:02:21 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r960909 - /incubator/esme/trunk/server/src/main/scala/org/apache/esme/external/RssFeed.scala Date: Tue, 06 Jul 2010 15:02:21 -0000 To: esme-commits@incubator.apache.org From: rhirsch@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20100706150221.6588A238888F@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: rhirsch Date: Tue Jul 6 15:02:21 2010 New Revision: 960909 URL: http://svn.apache.org/viewvc?rev=960909&view=rev Log: [ESME-224] Feed Actor Date parser error Patch by Imtiaz Ahmed Hajee Esmail Modified: incubator/esme/trunk/server/src/main/scala/org/apache/esme/external/RssFeed.scala Modified: incubator/esme/trunk/server/src/main/scala/org/apache/esme/external/RssFeed.scala URL: http://svn.apache.org/viewvc/incubator/esme/trunk/server/src/main/scala/org/apache/esme/external/RssFeed.scala?rev=960909&r1=960908&r2=960909&view=diff ============================================================================== --- incubator/esme/trunk/server/src/main/scala/org/apache/esme/external/RssFeed.scala (original) +++ incubator/esme/trunk/server/src/main/scala/org/apache/esme/external/RssFeed.scala Tue Jul 6 15:02:21 2010 @@ -35,7 +35,7 @@ object RssFeed { class RssFeed(user: User, rssURL: String, source: String, truncateChars: Int, tags: List[String]) extends Feed(user, rssURL, source, truncateChars, tags) { import scala.xml._ - + override def dateFormats = RssFeed.dateFormats override def getEntries(xml: Elem) = xml \\ "item" @@ -68,11 +68,12 @@ class RssFeed(user: User, rssURL: String } // need to compare by text since a pubDate is not mandatory and indeed, often is missing + /* override def getLastSortedMessages(msgs: List[Msg], lastMessage: Option[Msg]): List[Msg] = { lastMessage match { case Some(message: Msg) => // a hack to format text identically- difference in urls & trailing whitespace - val lastMessageText = + val lastMessageText = Message.create.setTextAndTags(message.text, Nil, Empty). get.body.trim msgs.takeWhile{ msg => @@ -82,5 +83,24 @@ class RssFeed(user: User, rssURL: String case None => msgs } }.reverse + */ + + override def getLastSortedMessages(msgs: List[Msg], lastMessage: Option[Msg]): List[Msg] = { + import net.liftweb.common.Box + lastMessage match { + case Some(message: Msg) => + // a hack to format text identically- difference in urls & trailing whitespace + val lastMessageText = + Message.create.setTextAndTags(message.text, Nil, Empty). + choice((m: Message) => Box(m.body.trim))(Box("")).get + //get.body.trim + msgs.takeWhile{ msg => + Message.create.setTextAndTags(msg.text, Nil, Empty). + choice((m: Message) => Box(m.body.trim))(Box("")).get != lastMessageText + //get.body.trim != lastMessageText + } + case None => msgs + } + }.reverse }