summaryrefslogtreecommitdiff
path: root/src/database.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/database.cc')
-rw-r--r--src/database.cc56
1 files changed, 56 insertions, 0 deletions
diff --git a/src/database.cc b/src/database.cc
index 207a114..e55cd2a 100644
--- a/src/database.cc
+++ b/src/database.cc
@@ -25,3 +25,59 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
*/
#include "database.h"
+
+#include "database_gourmet.h"
+#include "database_krecipes.h"
+
+#include <cassert>
+
+DatabaseGourmet db1("/mnt/atuin/docs/tine/Fritid/Mad/recipes.db");
+DatabaseKrecipes db2("/mnt/atuin/docs/tine/Fritid/Mad/krecipes.krecdb");
+
+Database::Database()
+{
+}
+
+Database::~Database()
+{
+}
+
+int Database::id() const
+{
+ return {};
+}
+
+std::deque<RecipeItem> Database::getRecipes()
+{
+ auto res1 = db1.getRecipes();
+ auto res2 = db2.getRecipes();
+
+ for(auto& res : res1)
+ {
+ res.id |= db1.id();
+ }
+
+ for(auto& res : res2)
+ {
+ res.id |= db2.id();
+ res1.push_back(res);
+ }
+
+ return res1;
+}
+
+Recipe Database::getRecipe(int id)
+{
+ if((id & db1.id()) == db1.id())
+ {
+ return db1.getRecipe(id & (~db1.id()));
+ }
+
+ if((id & db2.id()) == db2.id())
+ {
+ return db2.getRecipe(id & (~db2.id()));
+ }
+
+ assert(false); // we looked up an id, but it wasn't in any of the databases? this shouldn't happen...
+ return {};
+}