diff options
author | rsiddharth <s@ricketyspace.net> | 2020-09-19 00:38:49 -0400 |
---|---|---|
committer | rsiddharth <s@ricketyspace.net> | 2020-09-19 00:38:49 -0400 |
commit | 70a486c2556de741ce00de15711012b2ec533aac (patch) | |
tree | 54b53b85f7d7c98c57c978498d707a75d4efd3c7 | |
parent | 303c2de46bc52dc8f90ab31048ddbf51016c64e5 (diff) |
cedar.go: add processNews
-rw-r--r-- | cedar.go | 35 |
1 files changed, 35 insertions, 0 deletions
@@ -140,4 +140,39 @@ func (entry Entry) email() error { return nil } +func processNews() error { + newsXML, err := newsFeed() + if err != nil { + return err + } + + news, err := parseFeed(newsXML) + if err != nil { + return err + } + + cache, err := cacheFor("news") + if err != nil { + return err + } + + if len(news.Entry) < 1 { + return nil + } + + for i := 0; i < len(news.Entry); i++ { + if news.Entry[i].in(cache) { + continue + } + + err := news.Entry[i].email() + if err == nil { + cache.add(news.Entry[i]) + } + } + cache.save() + + return nil +} + func main() {} |