#ifndef NEWSBOAT_RSSPARSER_H_ #define NEWSBOAT_RSSPARSER_H_ #include #include "remoteapi.h" #include "rss.h" #include "rsspp.h" namespace newsboat { class ConfigContainer; class Cache; class RssParser { public: RssParser(const std::string& uri, Cache* c, ConfigContainer*, RssIgnores* ii, RemoteApi* a = 0); ~RssParser(); std::shared_ptr parse(); bool check_and_update_lastmodified(); void set_easyhandle(CurlHandle* h) { easyhandle = h; } private: void replace_newline_characters(std::string& str); std::string render_xhtml_title(const std::string& title, const std::string& link); time_t parse_date(const std::string& datestr); void set_rtl(std::shared_ptr feed, const std::string& lang); void retrieve_uri(const std::string& uri); void download_http(const std::string& uri); void get_execplugin(const std::string& plugin); void download_filterplugin(const std::string& filter, const std::string& uri); void parse_file(const std::string& file); void fill_feed_fields(std::shared_ptr feed); void fill_feed_items(std::shared_ptr feed); void set_item_title(std::shared_ptr feed, std::shared_ptr x, const rsspp::Item& item); void set_item_author(std::shared_ptr x, const rsspp::Item& item); void set_item_content(std::shared_ptr x, const rsspp::Item& item); void set_item_enclosure(std::shared_ptr x, const rsspp::Item& item); std::string get_guid(const rsspp::Item& item) const; void add_item_to_feed(std::shared_ptr feed, std::shared_ptr item); void handle_content_encoded(std::shared_ptr x, const rsspp::Item& item) const; void handle_itunes_summary(std::shared_ptr x, const rsspp::Item& item); bool is_html_type(const std::string& type); void fetch_ttrss(const std::string& feed_id); void fetch_newsblur(const std::string& feed_id); void fetch_ocnews(const std::string& feed_id); std::string my_uri; Cache* ch; ConfigContainer* cfgcont; bool skip_parsing; bool is_valid; RssIgnores* ign; rsspp::Feed f; RemoteApi* api; bool is_ttrss; bool is_newsblur; bool is_ocnews; CurlHandle* easyhandle; }; } // namespace newsboat #endif /* NEWSBOAT_RSSPARSER_H_ */ value='dave/bundler-string-length'>dave/bundler-string-length Unnamed repository; edit this file 'description' to name the repository.
aboutsummaryrefslogtreecommitdiff
AgeCommit message (Expand)AuthorFilesLines
2022-04-03wipGravatar Jarred Sumner 120-20/+8988
2022-04-03[bun.js] Expose `ImageData` globallyGravatar Jarred Sumner 12-2/+1237
2022-04-02More typesGravatar Jarred Sumner 2-39/+3998
2022-04-02Add more typingsGravatar Jarred Sumner 1-2/+416
2022-04-02Add more tests for Node FSGravatar Jarred Sumner 4-1/+60
2022-04-02[bun.js] fs.readSync & fs.writeSync should return just the numberGravatar Jarred Sumner 1-24/+57
2022-04-02[bun.js] Support `mode` and `flags` as integer args in fs.openSync (instead o...Gravatar Jarred Sumner 1-0/+6
2022-04-02Update base.zigGravatar Jarred Sumner 1-0/+1
2022-04-02Fix GC bug when reading TypedArray from user inputGravatar Jarred Sumner 1-6/+36
2022-04-02s/Buffer/TypedArrayGravatar Jarred Sumner 1-17/+17
2022-04-02Fix mmap on macOS x64Gravatar Jarred Sumner 2-29/+27