mirror of
https://github.com/miniflux/v2.git
synced 2025-06-27 16:36:00 +00:00
Refactor RSS Parser to use an adapter
This commit is contained in:
parent
66b8483791
commit
648b9a8f6f
11 changed files with 497 additions and 364 deletions
|
@ -13,11 +13,11 @@ import (
|
|||
|
||||
// Parse returns a normalized feed struct from a RSS feed.
|
||||
func Parse(baseURL string, data io.ReadSeeker) (*model.Feed, error) {
|
||||
feed := new(rssFeed)
|
||||
rssFeed := new(RSS)
|
||||
decoder := xml.NewXMLDecoder(data)
|
||||
decoder.DefaultSpace = "rss"
|
||||
if err := decoder.Decode(feed); err != nil {
|
||||
if err := decoder.Decode(rssFeed); err != nil {
|
||||
return nil, fmt.Errorf("rss: unable to parse feed: %w", err)
|
||||
}
|
||||
return feed.Transform(baseURL), nil
|
||||
return NewRSSAdapter(rssFeed).BuildFeed(baseURL), nil
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue