Skip to content

Commit

Permalink
Merge pull request #2 from windymelt/fix-logic
Browse files Browse the repository at this point in the history
Fixed IO
  • Loading branch information
windymelt committed Sep 25, 2023
2 parents c28d0fb + 8a4869b commit 2294f53
Showing 1 changed file with 17 additions and 17 deletions.
34 changes: 17 additions & 17 deletions src/Main.scala
Original file line number Diff line number Diff line change
Expand Up @@ -48,19 +48,23 @@ object Rss2Discord extends IOApp.Simple {
import scala.collection.JavaConverters._

val feedUrl = feedUrlEnv.get
val feed = new SyndFeedInput().build(new XmlReader(new URL(feedUrl)))

val now = DateTime.now()
val entriesToPost = feed
.getEntries()
.asScala
.filter {
case e if (e.publishedDateTime orElse e.updatedDateTime).isDefined =>
val dt = (e.publishedDateTime orElse e.updatedDateTime).get
dt.isAfter(now.minusMinutes(30))
case _ => false
}
entriesToPost.map(e => post(formatEntry(e))).toSeq.sequence.as(())
def entriesToPost(timeAfter: DateTime) = IO.delay {
val feed = new SyndFeedInput().build(new XmlReader(new URL(feedUrl)))
feed
.getEntries()
.asScala
.filter {
case e if (e.publishedDateTime orElse e.updatedDateTime).isDefined =>
val dt = (e.publishedDateTime orElse e.updatedDateTime).get
dt.isAfter(timeAfter)
case _ => false
}
}
for {
dt <- IO(DateTime.now())
entries <- entriesToPost(timeAfter = dt.minusMinutes(31))
} yield entries.toSeq.traverse(e => post(formatEntry(e))).void
}

def formatEntry(entry: SyndEntry): String = {
Expand All @@ -82,10 +86,6 @@ Author: ${entry.getAuthor()}
val parsedResult =
clientResource.flatMap(_.run(req)).use(res)

for {
pr <- parsedResult
} yield {
println(pr)
}
parsedResult.debug().void
}
}

0 comments on commit 2294f53

Please sign in to comment.