From f3625a8140de041303aa91da3d119d36a095f58e Mon Sep 17 00:00:00 2001 From: Radoslaw Wicik Date: Thu, 28 Jan 2021 13:44:17 +0100 Subject: [PATCH] [EGD-4831] Move FileIndexer init script to proper place Moving sql scripts to proper place to be more consistent with the code. --- image/user/db/file_indexer_001.sql | 36 ++++++++++ image/user/db/file_indexer_002.sql | 27 +++++++ .../agents/file_indexer/FileIndexerAgent.cpp | 10 +-- .../agents/file_indexer/file_indexer.sql | 71 ------------------- 4 files changed, 65 insertions(+), 79 deletions(-) create mode 100644 image/user/db/file_indexer_001.sql create mode 100644 image/user/db/file_indexer_002.sql delete mode 100644 module-services/service-db/agents/file_indexer/file_indexer.sql diff --git a/image/user/db/file_indexer_001.sql b/image/user/db/file_indexer_001.sql new file mode 100644 index 0000000000000000000000000000000000000000..67607b92e94a0d0041c36a644147e6b84c61df2a --- /dev/null +++ b/image/user/db/file_indexer_001.sql @@ -0,0 +1,36 @@ +-- Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved. +-- For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md + +-- Main file table +CREATE TABLE IF NOT EXISTS file_tab ( + file_id INTEGER, + path TEXT NOT NULL UNIQUE, + size INTEGER, + mime_type INTEGER, + mtime INTEGER, + directory TEXT, + file_type INTEGER, + PRIMARY KEY (file_id), + CONSTRAINT file_path_unique + UNIQUE (file_id, path) ON CONFLICT REPLACE + ); + +-- Table contains information +-- about file metadata. +CREATE TABLE IF NOT EXISTS metadata_tab ( + file_id INTEGER NOT NULL, + property TEXT NOT NULL, + value TEXT NOT NULL, + PRIMARY KEY (file_id, property), + FOREIGN KEY (file_id) REFERENCES file_tab(file_id) + ); + +-- Table contains information who to inform +-- about changes in values. +CREATE TABLE IF NOT EXISTS notifications_tab ( + id INTEGER PRIMARY KEY, + path TEXT NOT NULL, + service TEXT, + CONSTRAINT notification_unique + UNIQUE(path, service) +); diff --git a/image/user/db/file_indexer_002.sql b/image/user/db/file_indexer_002.sql new file mode 100644 index 0000000000000000000000000000000000000000..077b8a769d8cc1ef3011225cc7a0d67b63547f61 --- /dev/null +++ b/image/user/db/file_indexer_002.sql @@ -0,0 +1,27 @@ +-- Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved. +-- For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md + + +INSERT OR REPLACE INTO file_tab (file_id, path, size, mime_type, mtime, directory, file_type) VALUES + (1, 'mp3/track1.mp3', 456666, 1, 1603929600, 'mp3',12297), + (2, 'mp3/track2.mp3', 345354 ,1, 1603929604, 'mp3',12297), + (3, 'mp3/track3.mp3', 34534 ,1, 1603929604, 'mp3',12297), + (4, 'mp3/track4.mp3', 345354 ,1, 1603929604, 'mp3',12297); + + +INSERT OR REPLACE INTO metadata_tab (file_id, property, value) VALUES + (1,'artist','Sting'), + (1,'genre','Rock'), + (1,'album','Album1'), + (2,'artist','Madonna'), + (2,'genre','Rock'), + (2,'album','Album2'), + (3,'artist','Lady Gaga'), + (3,'genre','Rock'), + (3,'album','Album3'), + (4,'artist','Nick Levis'), + (4,'genre','Soul'), + (4,'album','Album4'); + +INSERT OR REPLACE INTO notifications_tab (id, path, service) VALUES + (1,'mp3','ServiceDB'); diff --git a/module-services/service-db/agents/file_indexer/FileIndexerAgent.cpp b/module-services/service-db/agents/file_indexer/FileIndexerAgent.cpp index e3056cca233f8706dd10cdfd648900fc8506ee8e..a4a772c7d007b2a47e7437d7dde67ae875c8ecc0 100644 --- a/module-services/service-db/agents/file_indexer/FileIndexerAgent.cpp +++ b/module-services/service-db/agents/file_indexer/FileIndexerAgent.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved. +// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved. // For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md #include "FileIndexerAgent.hpp" @@ -17,9 +17,6 @@ FileIndexerAgent::FileIndexerAgent(sys::Service *parentService) : DatabaseAgent( void FileIndexerAgent::initDb() { - LOG_INFO("[ServiceDB][File Indexer] Initialized"); - database->execute(getDbInitString().c_str()); - auto notifications = database->query(FileIndexer::Statements::getAllNotifications); if (nullptr == notifications || FileIndexer::ONE_ROW_FOUND == notifications->getRowCount()) { return; @@ -76,10 +73,7 @@ void FileIndexerAgent::registerMessages() auto FileIndexerAgent::getDbInitString() -> const std::string { - const char *sql = ("" -#include "file_indexer.sql" - ); - return sql; + return {}; } auto FileIndexerAgent::getDbFilePath() -> const std::string diff --git a/module-services/service-db/agents/file_indexer/file_indexer.sql b/module-services/service-db/agents/file_indexer/file_indexer.sql deleted file mode 100644 index 86a6cbd0ca6eae534e2952a0d9021cbf97c0b16c..0000000000000000000000000000000000000000 --- a/module-services/service-db/agents/file_indexer/file_indexer.sql +++ /dev/null @@ -1,71 +0,0 @@ --- Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved. --- For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md - -R"dbInitStr( - -/* Create File indexer tables */ -BEGIN TRANSACTION; - --- Main file table -CREATE TABLE IF NOT EXISTS file_tab ( - file_id INTEGER, - path TEXT NOT NULL UNIQUE, - size INTEGER, - mime_type INTEGER, - mtime INTEGER, - directory TEXT, - file_type INTEGER, - PRIMARY KEY (file_id), - CONSTRAINT file_path_unique - UNIQUE (file_id, path) ON CONFLICT REPLACE - ); - --- Table contains information --- about file metadata. -CREATE TABLE IF NOT EXISTS metadata_tab ( - file_id INTEGER NOT NULL, - property TEXT NOT NULL, - value TEXT NOT NULL, - PRIMARY KEY (file_id, property), - FOREIGN KEY (file_id) REFERENCES file_tab(file_id) - ); - --- Table contains information who to inform --- about changes in values. -CREATE TABLE IF NOT EXISTS notifications_tab ( - id INTEGER PRIMARY KEY, - path TEXT NOT NULL, - service TEXT, - CONSTRAINT notification_unique - UNIQUE(path, service) -); - --- ----------- insert default values ---------------------- - -INSERT OR REPLACE INTO file_tab (file_id, path, size, mime_type, mtime, directory, file_type) VALUES - (1, 'mp3/track1.mp3', 456666, 1, 1603929600, 'mp3',12297), - (2, 'mp3/track2.mp3', 345354 ,1, 1603929604, 'mp3',12297), - (3, 'mp3/track3.mp3', 34534 ,1, 1603929604, 'mp3',12297), - (4, 'mp3/track4.mp3', 345354 ,1, 1603929604, 'mp3',12297); - - -INSERT OR REPLACE INTO metadata_tab (file_id, property, value) VALUES - (1,'artist','Sting'), - (1,'genre','Rock'), - (1,'album','Album1'), - (2,'artist','Madonna'), - (2,'genre','Rock'), - (2,'album','Album2'), - (3,'artist','Lady Gaga'), - (3,'genre','Rock'), - (3,'album','Album3'), - (4,'artist','Nick Levis'), - (4,'genre','Soul'), - (4,'album','Album4'); - -INSERT OR REPLACE INTO notifications_tab (id, path, service) VALUES - (1,'mp3','ServiceDB'); - -COMMIT; - -)dbInitStr"