Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/jangernert/FeedReader.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrendan Long <self@brendanlong.com>2019-02-09 02:33:23 +0300
committerBrendan Long <self@brendanlong.com>2019-02-09 22:04:18 +0300
commit70707972ef2c4109d5110d50566ddbc307883501 (patch)
tree09f8f6548a965e919bec6a6f05697923c160d803 /plugins
parent5174f60c77c7129139a10a7477995e81ebc75516 (diff)
Improve arguments in ttrssAPI.getArticles
Take a string list instead of a comma separated string, and just return the articles.
Diffstat (limited to 'plugins')
-rw-r--r--plugins/backend/ttrss/ttrssAPI.vala9
-rw-r--r--plugins/backend/ttrss/ttrssInterface.vala13
2 files changed, 10 insertions, 12 deletions
diff --git a/plugins/backend/ttrss/ttrssAPI.vala b/plugins/backend/ttrss/ttrssAPI.vala
index 65ea00a8..f5bd7ccc 100644
--- a/plugins/backend/ttrss/ttrssAPI.vala
+++ b/plugins/backend/ttrss/ttrssAPI.vala
@@ -560,12 +560,16 @@ public Gee.List<string>? NewsPlus(ArticleStatus type, int limit)
}
-public void getArticles(string articleIDs, Gee.List<Article> articles)
+public Gee.List<Article> getArticles(Gee.List<string> articleIDs)
{
+ var articles = new Gee.ArrayList<Article>();
+ if(articleIDs.is_empty)
+ return articles;
+
var message = new ttrssMessage(m_session, m_ttrss_url);
message.add_string("sid", m_ttrss_sessionid);
message.add_string("op", "getArticle");
- message.add_string("article_id", articleIDs);
+ message.add_string("article_id", StringUtils.join(articleIDs, ","));
int error = message.send();
if(error == ConnectionError.SUCCESS)
@@ -633,6 +637,7 @@ public void getArticles(string articleIDs, Gee.List<Article> articles)
articles.add(Article);
}
}
+ return articles;
}
public bool catchupFeed(string feedID, bool isCatID)
diff --git a/plugins/backend/ttrss/ttrssInterface.vala b/plugins/backend/ttrss/ttrssInterface.vala
index 4621f382..f86d1bfb 100644
--- a/plugins/backend/ttrss/ttrssInterface.vala
+++ b/plugins/backend/ttrss/ttrssInterface.vala
@@ -475,7 +475,7 @@ public void getArticles(int count, ArticleStatus whatToGet, DateTime? since, str
if(cancellable != null && cancellable.is_cancelled())
return;
- string articleIDs = "";
+ var articleIDs = new Gee.ArrayList<string>();
int skip = count;
int amount = 200;
@@ -509,18 +509,11 @@ public void getArticles(int count, ArticleStatus whatToGet, DateTime? since, str
var id = article.getArticleID();
if(!db.article_exists(id))
{
- articleIDs += id + ",";
+ articleIDs.add(id);
}
}
}
-
- if(articleIDs.length > 0)
- articleIDs = articleIDs.substring(0, articleIDs.length -1);
-
- var articles = new Gee.LinkedList<Article>();
-
- if(articleIDs != "")
- m_api.getArticles(articleIDs, articles);
+ var articles = m_api.getArticles(articleIDs);
articles.sort((a, b) => {
return strcmp(a.getArticleID(), b.getArticleID());