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>2017-10-21 21:06:56 +0300
committerBrendan Long <self@brendanlong.com>2017-10-21 21:07:16 +0300
commite88f4eba50fb5d94ed901a53ca23fc932cc7553b (patch)
tree814f2bb232bb8429e6008741b6d5da5f9b3aead4
parentd40594ac81ef0724b79a4f8c075be5f291a4d240 (diff)
Pass a DB handle into plugins instead of having them look it uptestable-plugins
-rw-r--r--plugins/backend/bazqux/bazquxAPI.vala4
-rw-r--r--plugins/backend/bazqux/bazquxInterface.vala8
-rw-r--r--plugins/backend/demo/demoInterface.vala2
-rw-r--r--plugins/backend/feedbin/feedbinInterface.vala10
-rw-r--r--plugins/backend/feedhq/feedhqInterface.vala8
-rw-r--r--plugins/backend/feedly/feedlyAPI.vala14
-rw-r--r--plugins/backend/feedly/feedlyInterface.vala14
-rw-r--r--plugins/backend/fresh/freshAPI.vala6
-rw-r--r--plugins/backend/fresh/freshInterface.vala6
-rw-r--r--plugins/backend/inoreader/InoReaderAPI.vala8
-rw-r--r--plugins/backend/inoreader/InoReaderInterface.vala10
-rw-r--r--plugins/backend/local/localInterface.vala26
-rw-r--r--plugins/backend/oldreader/oldreaderAPI.vala6
-rw-r--r--plugins/backend/oldreader/oldreaderInterface.vala10
-rw-r--r--plugins/backend/owncloud/OwncloudNewsAPI.vala10
-rw-r--r--plugins/backend/owncloud/OwncloudNewsInterface.vala10
-rw-r--r--plugins/backend/ttrss/ttrssAPI.vala6
-rw-r--r--plugins/backend/ttrss/ttrssInterface.vala12
-rw-r--r--src/Backend/FeedServer.vala2
-rw-r--r--src/Backend/FeedServerInterface.vala2
20 files changed, 103 insertions, 71 deletions
diff --git a/plugins/backend/bazqux/bazquxAPI.vala b/plugins/backend/bazqux/bazquxAPI.vala
index ba1fcaf6..1555f797 100644
--- a/plugins/backend/bazqux/bazquxAPI.vala
+++ b/plugins/backend/bazqux/bazquxAPI.vala
@@ -191,7 +191,7 @@ public class FeedReader.bazquxAPI : GLib.Object {
new Tag(
id,
title,
- DataBase.readOnly().getTagColor()
+ m_db.getTagColor()
)
);
}
@@ -341,7 +341,7 @@ public class FeedReader.bazquxAPI : GLib.Object {
marked = true;
else if(cat.has_suffix("com.google/read"))
read = true;
- else if(cat.contains("/label/") && DataBase.readOnly().getTagName(cat) != null)
+ else if(cat.contains("/label/") && m_db.getTagName(cat) != null)
tags.add(cat);
}
diff --git a/plugins/backend/bazqux/bazquxInterface.vala b/plugins/backend/bazqux/bazquxInterface.vala
index e1ac551f..df5798a3 100644
--- a/plugins/backend/bazqux/bazquxInterface.vala
+++ b/plugins/backend/bazqux/bazquxInterface.vala
@@ -19,9 +19,11 @@ public class FeedReader.bazquxInterface : Peas.ExtensionBase, FeedServerInterfac
private bazquxUtils m_utils;
private Gtk.Entry m_userEntry;
private Gtk.Entry m_passwordEntry;
+ private DataBaseReadOnly m_db;
- public void init()
+ public void init(DataBaseReadOnly db)
{
+ m_db = db;
m_api = new bazquxAPI();
m_utils = new bazquxUtils();
}
@@ -252,13 +254,13 @@ public class FeedReader.bazquxInterface : Peas.ExtensionBase, FeedServerInterfac
public void markAllItemsRead()
{
- var categories = DataBase.readOnly().read_categories();
+ var categories = m_db.read_categories();
foreach(Category cat in categories)
{
m_api.markAsRead(cat.getCatID());
}
- var feeds = DataBase.readOnly().read_feeds_without_cat();
+ var feeds = m_db.read_feeds_without_cat();
foreach(Feed feed in feeds)
{
m_api.markAsRead(feed.getFeedID());
diff --git a/plugins/backend/demo/demoInterface.vala b/plugins/backend/demo/demoInterface.vala
index 8de7900f..ef016781 100644
--- a/plugins/backend/demo/demoInterface.vala
+++ b/plugins/backend/demo/demoInterface.vala
@@ -10,7 +10,7 @@ public class FeedReader.demoInterface : Peas.ExtensionBase, FeedServerInterface
// This method gets executed right after the plugin is loaded. Do everything
// you need to set up the plugin here.
//--------------------------------------------------------------------------------------
- public void init()
+ public void init(DataBaseReadOnly db)
{
}
diff --git a/plugins/backend/feedbin/feedbinInterface.vala b/plugins/backend/feedbin/feedbinInterface.vala
index 5193352d..4be35249 100644
--- a/plugins/backend/feedbin/feedbinInterface.vala
+++ b/plugins/backend/feedbin/feedbinInterface.vala
@@ -19,9 +19,11 @@ public class FeedReader.FeedbinInterface : Peas.ExtensionBase, FeedServerInterfa
private FeedbinUtils m_utils;
private Gtk.Entry m_userEntry;
private Gtk.Entry m_passwordEntry;
+ private DataBaseReadOnly m_db;
- public void init()
+ public void init(DataBaseReadOnly db)
{
+ m_db = db;
m_utils = new FeedbinUtils();
m_api = new FeedbinAPI(m_utils.getUser(), m_utils.getPassword(), Constants.USER_AGENT);
}
@@ -288,7 +290,7 @@ public class FeedReader.FeedbinInterface : Peas.ExtensionBase, FeedServerInterfa
int num_articles = 1; // set to any value > 0
for(var offset = 0; num_articles > 0; offset += count)
{
- var articles = DataBase.readOnly().read_articles(id, type, ArticleListState.ALL, "", count, offset);
+ var articles = m_db.read_articles(id, type, ArticleListState.ALL, "", count, offset);
var entry_ids = new Gee.ArrayList<int64?>();
foreach(var article in articles)
{
@@ -629,7 +631,7 @@ public class FeedReader.FeedbinInterface : Peas.ExtensionBase, FeedServerInterfa
since = new DateTime.now_utc().add_months(-6);
break;
}
- if(!DataBase.readOnly().isTableEmpty("articles"))
+ if(!m_db.isTableEmpty("articles"))
{
var last_sync = new DateTime.from_unix_utc(settings_state.get_int("last-sync"));
if(since == null || last_sync.to_unix() > since.to_unix())
@@ -678,7 +680,7 @@ public class FeedReader.FeedbinInterface : Peas.ExtensionBase, FeedServerInterfa
for(var offset = 0, c = 1000; ; offset += c)
{
var articles = new Gee.ArrayList<Article>();
- var existing_articles = DataBase.readOnly().read_articles(search_feed_id, search_type, ArticleListState.ALL, "", c, offset);
+ var existing_articles = m_db.read_articles(search_feed_id, search_type, ArticleListState.ALL, "", c, offset);
if(existing_articles.size == 0)
break;
diff --git a/plugins/backend/feedhq/feedhqInterface.vala b/plugins/backend/feedhq/feedhqInterface.vala
index 1c65f990..a75170b4 100644
--- a/plugins/backend/feedhq/feedhqInterface.vala
+++ b/plugins/backend/feedhq/feedhqInterface.vala
@@ -19,9 +19,11 @@ public class FeedReader.FeedHQInterface : Peas.ExtensionBase, FeedServerInterfac
private FeedHQUtils m_utils;
private Gtk.Entry m_userEntry;
private Gtk.Entry m_passwordEntry;
+ private DataBaseReadOnly m_db;
- public void init()
+ public void init(DataBaseReadOnly db)
{
+ m_db = db;
m_api = new FeedHQAPI();
m_utils = new FeedHQUtils();
}
@@ -254,13 +256,13 @@ public class FeedReader.FeedHQInterface : Peas.ExtensionBase, FeedServerInterfac
public void markAllItemsRead()
{
- var categories = DataBase.readOnly().read_categories();
+ var categories = m_db.read_categories();
foreach(Category cat in categories)
{
m_api.markAsRead(cat.getCatID());
}
- var feeds = DataBase.readOnly().read_feeds_without_cat();
+ var feeds = m_db.read_feeds_without_cat();
foreach(Feed feed in feeds)
{
m_api.markAsRead(feed.getFeedID());
diff --git a/plugins/backend/feedly/feedlyAPI.vala b/plugins/backend/feedly/feedlyAPI.vala
index 9c3483b3..6e435d46 100644
--- a/plugins/backend/feedly/feedlyAPI.vala
+++ b/plugins/backend/feedly/feedlyAPI.vala
@@ -19,8 +19,10 @@ public class FeedReader.FeedlyAPI : Object {
private string m_userID;
private Json.Array m_unreadcounts;
private FeedlyUtils m_utils;
+ private DataBaseReadOnly m_db;
- public FeedlyAPI() {
+ public FeedlyAPI(DataBaseReadOnly db) {
+ m_db = db;
m_connection = new FeedlyConnection();
m_utils = new FeedlyUtils();
}
@@ -278,7 +280,7 @@ public class FeedReader.FeedlyAPI : Object {
new Tag(
object.get_string_member("id"),
object.has_member("label") ? object.get_string_member("label") : "",
- DataBase.readOnly().getTagColor()
+ m_db.getTagColor()
)
);
}
@@ -598,7 +600,7 @@ public class FeedReader.FeedlyAPI : Object {
foreach(string catID in catArray)
{
- string catName = DataBase.readOnly().getCategoryName(catID);
+ string catName = m_db.getCategoryName(catID);
Json.Object catObject = new Json.Object();
catObject.set_string_member("id", catID);
catObject.set_string_member("label", catName);
@@ -618,7 +620,7 @@ public class FeedReader.FeedlyAPI : Object {
public void moveSubscription(string feedID, string newCatID, string? oldCatID = null)
{
- var Feed = DataBase.readOnly().read_feed(feedID);
+ var Feed = m_db.read_feed(feedID);
Json.Object object = new Json.Object();
object.set_string_member("id", feedID);
@@ -632,7 +634,7 @@ public class FeedReader.FeedlyAPI : Object {
{
if(catID != oldCatID)
{
- string catName = DataBase.readOnly().getCategoryName(catID);
+ string catName = m_db.getCategoryName(catID);
Json.Object catObject = new Json.Object();
catObject.set_string_member("id", catID);
catObject.set_string_member("label", catName);
@@ -640,7 +642,7 @@ public class FeedReader.FeedlyAPI : Object {
}
}
- string newCatName = DataBase.readOnly().getCategoryName(newCatID);
+ string newCatName = m_db.getCategoryName(newCatID);
Json.Object catObject = new Json.Object();
catObject.set_string_member("id", newCatID);
catObject.set_string_member("label", newCatName);
diff --git a/plugins/backend/feedly/feedlyInterface.vala b/plugins/backend/feedly/feedlyInterface.vala
index 0eba72b1..6c777e28 100644
--- a/plugins/backend/feedly/feedlyInterface.vala
+++ b/plugins/backend/feedly/feedlyInterface.vala
@@ -17,10 +17,12 @@ public class FeedReader.feedlyInterface : Peas.ExtensionBase, FeedServerInterfac
private FeedlyAPI m_api;
private FeedlyUtils m_utils;
+ private DataBaseReadOnly m_db;
- public void init()
+ public void init(DataBaseReadOnly db)
{
- m_api = new FeedlyAPI();
+ m_db = db;
+ m_api = new FeedlyAPI(m_db);
m_utils = new FeedlyUtils();
}
@@ -213,8 +215,8 @@ public class FeedReader.feedlyInterface : Peas.ExtensionBase, FeedServerInterfac
string catArray = "";
string feedArray = "";
- var categories = DataBase.readOnly().read_categories();
- var feeds = DataBase.readOnly().read_feeds_without_cat();
+ var categories = m_db.read_categories();
+ var feeds = m_db.read_feeds_without_cat();
foreach(Category cat in categories)
{
@@ -297,7 +299,7 @@ public class FeedReader.feedlyInterface : Peas.ExtensionBase, FeedServerInterfac
public void renameFeed(string feedID, string title)
{
- var feed = DataBase.readOnly().read_feed(feedID);
+ var feed = m_db.read_feed(feedID);
m_api.addSubscription(feed.getFeedID(), title, feed.getCatString());
}
@@ -328,7 +330,7 @@ public class FeedReader.feedlyInterface : Peas.ExtensionBase, FeedServerInterfac
public void removeCatFromFeed(string feedID, string catID)
{
- var feed = DataBase.readOnly().read_feed(feedID);
+ var feed = m_db.read_feed(feedID);
m_api.addSubscription(feed.getFeedID(), feed.getTitle(), feed.getCatString().replace(catID + ",", ""));
}
diff --git a/plugins/backend/fresh/freshAPI.vala b/plugins/backend/fresh/freshAPI.vala
index 839f4aee..72cf3eb4 100644
--- a/plugins/backend/fresh/freshAPI.vala
+++ b/plugins/backend/fresh/freshAPI.vala
@@ -17,9 +17,11 @@ public class FeedReader.freshAPI : Object {
private freshConnection m_connection;
private freshUtils m_utils;
+ private DataBaseReadOnly m_db;
- public freshAPI()
+ public freshAPI(DataBaseReadOnly db)
{
+ m_db = db;
m_connection = new freshConnection();
m_utils = new freshUtils();
}
@@ -311,7 +313,7 @@ public class FeedReader.freshAPI : Object {
var msg = new freshMessage();
msg.add("T", m_connection.getToken());
msg.add("s", streamID);
- msg.add("ts", DataBase.readOnly().getNewestArticle());
+ msg.add("ts", m_db.getNewestArticle());
var response = m_connection.postRequest(path, msg.get(), "application/x-www-form-urlencoded");
diff --git a/plugins/backend/fresh/freshInterface.vala b/plugins/backend/fresh/freshInterface.vala
index 6caf51f9..3ef0cbea 100644
--- a/plugins/backend/fresh/freshInterface.vala
+++ b/plugins/backend/fresh/freshInterface.vala
@@ -24,10 +24,12 @@ public class FeedReader.freshInterface : Peas.ExtensionBase, FeedServerInterface
private Gtk.Entry m_authUserEntry;
private Gtk.Revealer m_revealer;
private bool m_need_htaccess = false;
+ private DataBaseReadOnly m_db;
- public void init()
+ public void init(DataBaseReadOnly db)
{
- m_api = new freshAPI();
+ m_db = db;
+ m_api = new freshAPI(db);
m_utils = new freshUtils();
}
diff --git a/plugins/backend/inoreader/InoReaderAPI.vala b/plugins/backend/inoreader/InoReaderAPI.vala
index 2e357399..88c527a3 100644
--- a/plugins/backend/inoreader/InoReaderAPI.vala
+++ b/plugins/backend/inoreader/InoReaderAPI.vala
@@ -24,9 +24,11 @@ public class FeedReader.InoReaderAPI : GLib.Object {
private InoReaderConnection m_connection;
private InoReaderUtils m_utils;
private string m_userID;
+ private DataBaseReadOnly m_db;
- public InoReaderAPI ()
+ public InoReaderAPI (DataBaseReadOnly db)
{
+ m_db = db;
m_connection = new InoReaderConnection();
m_utils = new InoReaderUtils();
}
@@ -190,7 +192,7 @@ public class FeedReader.InoReaderAPI : GLib.Object {
new Tag(
id,
title,
- DataBase.readOnly().getTagColor()
+ m_db.getTagColor()
)
);
}
@@ -336,7 +338,7 @@ public class FeedReader.InoReaderAPI : GLib.Object {
marked = true;
else if(cat.has_suffix("com.google/read"))
read = true;
- else if(cat.contains("/label/") && DataBase.readOnly().getTagName(cat) != null)
+ else if(cat.contains("/label/") && m_db.getTagName(cat) != null)
tags.add(cat);
}
diff --git a/plugins/backend/inoreader/InoReaderInterface.vala b/plugins/backend/inoreader/InoReaderInterface.vala
index 3a6debd4..437e07b4 100644
--- a/plugins/backend/inoreader/InoReaderInterface.vala
+++ b/plugins/backend/inoreader/InoReaderInterface.vala
@@ -17,10 +17,12 @@ public class FeedReader.InoReaderInterface : Peas.ExtensionBase, FeedServerInter
private InoReaderAPI m_api;
private InoReaderUtils m_utils;
+ private DataBaseReadOnly m_db;
- public void init()
+ public void init(DataBaseReadOnly db)
{
- m_api = new InoReaderAPI();
+ m_db = db;
+ m_api = new InoReaderAPI(db);
m_utils = new InoReaderUtils();
}
@@ -227,13 +229,13 @@ public class FeedReader.InoReaderInterface : Peas.ExtensionBase, FeedServerInter
public void markAllItemsRead()
{
- var categories = DataBase.readOnly().read_categories();
+ var categories = m_db.read_categories();
foreach(Category cat in categories)
{
m_api.markAsRead(cat.getCatID());
}
- var feeds = DataBase.readOnly().read_feeds_without_cat();
+ var feeds = m_db.read_feeds_without_cat();
foreach(Feed feed in feeds)
{
m_api.markAsRead(feed.getFeedID());
diff --git a/plugins/backend/local/localInterface.vala b/plugins/backend/local/localInterface.vala
index 6f22d8d7..3c04575f 100644
--- a/plugins/backend/local/localInterface.vala
+++ b/plugins/backend/local/localInterface.vala
@@ -18,9 +18,11 @@ public class FeedReader.localInterface : Peas.ExtensionBase, FeedServerInterface
private localUtils m_utils;
private Soup.Session m_session;
private Gtk.ListBox m_feedlist;
+ private DataBaseReadOnly m_db;
- public void init()
+ public void init(DataBaseReadOnly db)
{
+ m_db = db;
m_utils = new localUtils();
m_session = new Soup.Session();
m_session.user_agent = Constants.USER_AGENT;
@@ -360,8 +362,8 @@ public class FeedReader.localInterface : Peas.ExtensionBase, FeedServerInterface
{
string tagID = "1";
- if(!DataBase.readOnly().isTableEmpty("tags"))
- tagID = (int.parse(DataBase.readOnly().getMaxID("tags", "tagID")) + 1).to_string();
+ if(!m_db.isTableEmpty("tags"))
+ tagID = (int.parse(m_db.getMaxID("tags", "tagID")) + 1).to_string();
Logger.info("createTag: ID = " + tagID);
return tagID;
@@ -400,9 +402,9 @@ public class FeedReader.localInterface : Peas.ExtensionBase, FeedServerInterface
feedID = "feedID00001";
- if(!DataBase.readOnly().isTableEmpty("feeds"))
+ if(!m_db.isTableEmpty("feeds"))
{
- feedID = "feedID%05d".printf(int.parse(DataBase.readOnly().getMaxID("feeds", "feed_id").substring(6)) + 1);
+ feedID = "feedID%05d".printf(int.parse(m_db.getMaxID("feeds", "feed_id").substring(6)) + 1);
}
Logger.info(@"addFeed: ID = $feedID");
@@ -410,7 +412,7 @@ public class FeedReader.localInterface : Peas.ExtensionBase, FeedServerInterface
if(Feed != null)
{
- if(!DataBase.readOnly().feed_exists(Feed.getURL())) {
+ if(!m_db.feed_exists(Feed.getURL())) {
var list = new Gee.LinkedList<Feed>();
list.add(Feed);
DataBase.writeAccess().write_feeds(list);
@@ -427,8 +429,8 @@ public class FeedReader.localInterface : Peas.ExtensionBase, FeedServerInterface
int highestID = 0;
- if(!DataBase.readOnly().isTableEmpty("feeds"))
- highestID = int.parse(DataBase.readOnly().getMaxID("feeds", "feed_id").substring(6)) + 1;
+ if(!m_db.isTableEmpty("feeds"))
+ highestID = int.parse(m_db.getMaxID("feeds", "feed_id").substring(6)) + 1;
foreach(Feed f in feeds)
{
@@ -478,12 +480,12 @@ public class FeedReader.localInterface : Peas.ExtensionBase, FeedServerInterface
{
string catID = "catID00001";
- if(!DataBase.readOnly().isTableEmpty("categories"))
+ if(!m_db.isTableEmpty("categories"))
{
- string? id = DataBase.readOnly().getCategoryID(title);
+ string? id = m_db.getCategoryID(title);
if(id == null)
{
- catID = "catID%05d".printf(int.parse(DataBase.readOnly().getMaxID("categories", "categorieID").substring(5)) + 1);
+ catID = "catID%05d".printf(int.parse(m_db.getMaxID("categories", "categorieID").substring(5)) + 1);
}
else
{
@@ -533,7 +535,7 @@ public class FeedReader.localInterface : Peas.ExtensionBase, FeedServerInterface
public void getArticles(int count, ArticleStatus whatToGet, string? feedID, bool isTagID, GLib.Cancellable? cancellable = null)
{
- var f = DataBase.readOnly().read_feeds();
+ var f = m_db.read_feeds();
var articleArray = new Gee.LinkedList<Article>();
GLib.Mutex mutex = GLib.Mutex();
diff --git a/plugins/backend/oldreader/oldreaderAPI.vala b/plugins/backend/oldreader/oldreaderAPI.vala
index 3b2d3fcc..72fc244a 100644
--- a/plugins/backend/oldreader/oldreaderAPI.vala
+++ b/plugins/backend/oldreader/oldreaderAPI.vala
@@ -24,9 +24,11 @@ public class FeedReader.OldReaderAPI : GLib.Object {
private OldReaderConnection m_connection;
private OldReaderUtils m_utils;
private string m_userID;
+ private DataBaseReadOnly m_db;
- public OldReaderAPI()
+ public OldReaderAPI(DataBaseReadOnly db)
{
+ m_db = db;
m_utils = new OldReaderUtils();
m_connection = new OldReaderConnection();
}
@@ -318,7 +320,7 @@ public class FeedReader.OldReaderAPI : GLib.Object {
marked = true;
else if(cat.has_suffix("com.google/read"))
read = true;
- else if(cat.contains("/label/") && DataBase.readOnly().getTagName(cat) != null)
+ else if(cat.contains("/label/") && m_db.getTagName(cat) != null)
tags.add(cat);
}
diff --git a/plugins/backend/oldreader/oldreaderInterface.vala b/plugins/backend/oldreader/oldreaderInterface.vala
index 7fbfb425..57c5f7de 100644
--- a/plugins/backend/oldreader/oldreaderInterface.vala
+++ b/plugins/backend/oldreader/oldreaderInterface.vala
@@ -19,10 +19,12 @@ public class FeedReader.OldReaderInterface : Peas.ExtensionBase, FeedServerInter
private OldReaderUtils m_utils;
private Gtk.Entry m_userEntry;
private Gtk.Entry m_passwordEntry;
+ private DataBaseReadOnly m_db;
- public void init()
+ public void init(DataBaseReadOnly db)
{
- m_api = new OldReaderAPI();
+ m_db = db;
+ m_api = new OldReaderAPI(db);
m_utils = new OldReaderUtils();
}
@@ -253,13 +255,13 @@ public class FeedReader.OldReaderInterface : Peas.ExtensionBase, FeedServerInter
public void markAllItemsRead()
{
- var categories = DataBase.readOnly().read_categories();
+ var categories = m_db.read_categories();
foreach(Category cat in categories)
{
m_api.markAsRead(cat.getCatID());
}
- var feeds = DataBase.readOnly().read_feeds_without_cat();
+ var feeds = m_db.read_feeds_without_cat();
foreach(Feed feed in feeds)
{
m_api.markAsRead(feed.getFeedID());
diff --git a/plugins/backend/owncloud/OwncloudNewsAPI.vala b/plugins/backend/owncloud/OwncloudNewsAPI.vala
index de39b7bc..79e8d5cd 100644
--- a/plugins/backend/owncloud/OwncloudNewsAPI.vala
+++ b/plugins/backend/owncloud/OwncloudNewsAPI.vala
@@ -29,9 +29,11 @@ public class FeedReader.OwncloudNewsAPI : GLib.Object {
private string m_password;
private OwncloudNewsUtils m_utils;
private Soup.Session m_session;
+ private DataBaseReadOnly m_db;
- public OwncloudNewsAPI()
+ public OwncloudNewsAPI(DataBaseReadOnly db)
{
+ m_db = db;
m_parser = new Json.Parser ();
m_utils = new OwncloudNewsUtils();
m_session = new Soup.Session();
@@ -352,7 +354,7 @@ public class FeedReader.OwncloudNewsAPI : GLib.Object {
{
string url = "%s/%s/read".printf((isCatID) ? "folders" : "feeds", feedID);
var message = new OwnCloudNewsMessage(m_session, m_OwnCloudURL + url, m_username, m_password, "PUT");
- message.add_int("newestItemId", int.parse(DataBase.readOnly().getNewestArticle()));
+ message.add_int("newestItemId", int.parse(m_db.getNewestArticle()));
int error = message.send();
if(error == ConnectionError.SUCCESS)
@@ -366,7 +368,7 @@ public class FeedReader.OwncloudNewsAPI : GLib.Object {
{
string url = "items/read";
var message = new OwnCloudNewsMessage(m_session, m_OwnCloudURL + url, m_username, m_password, "PUT");
- message.add_int("newestItemId", int.parse(DataBase.readOnly().getNewestArticle()));
+ message.add_int("newestItemId", int.parse(m_db.getNewestArticle()));
int error = message.send();
if(error == ConnectionError.SUCCESS)
@@ -400,7 +402,7 @@ public class FeedReader.OwncloudNewsAPI : GLib.Object {
public bool updateArticleMarked(string articleID, ArticleStatus marked)
{
- var article = DataBase.readOnly().read_article(articleID);
+ var article = m_db.read_article(articleID);
string url = "items/%s/%s/".printf(article.getFeedID(), article.getHash());
if(marked == ArticleStatus.MARKED)
diff --git a/plugins/backend/owncloud/OwncloudNewsInterface.vala b/plugins/backend/owncloud/OwncloudNewsInterface.vala
index 9a1f3a22..8e01a42a 100644
--- a/plugins/backend/owncloud/OwncloudNewsInterface.vala
+++ b/plugins/backend/owncloud/OwncloudNewsInterface.vala
@@ -24,10 +24,12 @@ public class FeedReader.OwncloudNewsInterface : Peas.ExtensionBase, FeedServerIn
private Gtk.Entry m_AuthPasswordEntry;
private Gtk.Revealer m_revealer;
private bool m_need_htaccess = false;
+ private DataBaseReadOnly m_db;
- public void init()
+ public void init(DataBaseReadOnly db)
{
- m_api = new OwncloudNewsAPI();
+ m_db = db;
+ m_api = new OwncloudNewsAPI(m_db);
m_utils = new OwncloudNewsUtils();
}
@@ -429,7 +431,7 @@ public class FeedReader.OwncloudNewsInterface : Peas.ExtensionBase, FeedServerIn
public int getUnreadCount()
{
- return (int)DataBase.readOnly().get_unread_total();
+ return (int)m_db.get_unread_total();
}
public void getArticles(int count, ArticleStatus whatToGet, string? feedID, bool isTagID, GLib.Cancellable? cancellable = null)
@@ -462,7 +464,7 @@ public class FeedReader.OwncloudNewsInterface : Peas.ExtensionBase, FeedServerIn
var articles = new Gee.LinkedList<Article>();
if(count == -1)
- m_api.getNewArticles(articles, DataBase.readOnly().getLastModified(), type, id);
+ m_api.getNewArticles(articles, m_db.getLastModified(), type, id);
else
m_api.getArticles(articles, 0, -1, read, type, id);
diff --git a/plugins/backend/ttrss/ttrssAPI.vala b/plugins/backend/ttrss/ttrssAPI.vala
index aab70994..ab5577af 100644
--- a/plugins/backend/ttrss/ttrssAPI.vala
+++ b/plugins/backend/ttrss/ttrssAPI.vala
@@ -22,9 +22,11 @@ public class FeedReader.ttrssAPI : GLib.Object {
private Json.Parser m_parser;
private string? m_iconDir = null;
private Soup.Session m_session;
+ private DataBaseReadOnly m_db;
- public ttrssAPI ()
+ public ttrssAPI (DataBaseReadOnly db)
{
+ m_db = db;
m_parser = new Json.Parser();
m_utils = new ttrssUtils();
m_session = new Soup.Session();
@@ -291,7 +293,7 @@ public class FeedReader.ttrssAPI : GLib.Object {
new Tag(
tag_node.get_int_member("id").to_string(),
tag_node.get_string_member("caption"),
- DataBase.readOnly().getTagColor()
+ m_db.getTagColor()
)
);
}
diff --git a/plugins/backend/ttrss/ttrssInterface.vala b/plugins/backend/ttrss/ttrssInterface.vala
index 915d1057..b9c16d0f 100644
--- a/plugins/backend/ttrss/ttrssInterface.vala
+++ b/plugins/backend/ttrss/ttrssInterface.vala
@@ -24,10 +24,12 @@ public class FeedReader.ttrssInterface : Peas.ExtensionBase, FeedServerInterface
private Gtk.Entry m_authUserEntry;
private Gtk.Revealer m_revealer;
private bool m_need_htaccess = false;
+ private DataBaseReadOnly m_db;
- public void init()
+ public void init(DataBaseReadOnly db)
{
- m_api = new ttrssAPI();
+ m_db = db;
+ m_api = new ttrssAPI(m_db);
m_utils = new ttrssUtils();
}
@@ -310,7 +312,7 @@ public class FeedReader.ttrssInterface : Peas.ExtensionBase, FeedServerInterface
public void markAllItemsRead()
{
- var categories = DataBase.readOnly().read_categories();
+ var categories = m_db.read_categories();
foreach(Category cat in categories)
{
m_api.catchupFeed(cat.getCatID(), true);
@@ -356,7 +358,7 @@ public class FeedReader.ttrssInterface : Peas.ExtensionBase, FeedServerInterface
}
if(success)
- feedID = (int.parse(DataBase.readOnly().getMaxID("feeds", "feed_id")) + 1).to_string();
+ feedID = (int.parse(m_db.getMaxID("feeds", "feed_id")) + 1).to_string();
else
feedID = "-98";
@@ -507,7 +509,7 @@ public class FeedReader.ttrssInterface : Peas.ExtensionBase, FeedServerInterface
foreach(Article article in articles)
{
var id = article.getArticleID();
- if(!DataBase.readOnly().article_exists(id))
+ if(!m_db.article_exists(id))
{
articleIDs += id + ",";
}
diff --git a/src/Backend/FeedServer.vala b/src/Backend/FeedServer.vala
index feded383..7c66c4fa 100644
--- a/src/Backend/FeedServer.vala
+++ b/src/Backend/FeedServer.vala
@@ -41,7 +41,7 @@ public class FeedReader.FeedServer : GLib.Object {
m_extensions.extension_added.connect((info, extension) => {
Logger.debug("feedserver: plugin loaded %s".printf(info.get_name()));
- (extension as FeedServerInterface).init();
+ (extension as FeedServerInterface).init(DataBase.readOnly());
});
m_extensions.extension_removed.connect((info, extension) => {
diff --git a/src/Backend/FeedServerInterface.vala b/src/Backend/FeedServerInterface.vala
index c8a8baf3..47d33ff0 100644
--- a/src/Backend/FeedServerInterface.vala
+++ b/src/Backend/FeedServerInterface.vala
@@ -21,7 +21,7 @@ public interface FeedReader.FeedServerInterface : GLib.Object {
public signal void showArticleListOverlay();
public signal void writeArticles(Gee.List<Article> articles);
- public abstract void init();
+ public abstract void init(DataBaseReadOnly db);
public abstract bool supportTags();