Skip to content
Extraits de code Groupes Projets
Vérifiée Valider 206cc96e rédigé par Kubat's avatar Kubat
Parcourir les fichiers

Cleaning

parent c380b1be
Branches
Étiquettes
1 requête de fusion!98Queue and playlist interactions with lkt
......@@ -60,11 +60,7 @@ them.
the \fBarg\fP should be the id of the kara in the sqlite3 database.
.TP
\(bu
\fBfs://${arg}\fP
the \fBarg\fP should be a part of the path to the kara.
.TP
\(bu
\fBlang://${arg}\fP / \fBlanguage://${arg}\fP
\fBlang://${arg}\fP
the \fBarg\fP should be the language of the kara.
.TP
\(bu
......@@ -72,12 +68,16 @@ the \fBarg\fP should be the language of the kara.
the \fBarg\fP should be the type of the kara.
.TP
\(bu
\fBcat://${arg}\fP / \fBcategory://${arg}\fP
\fBcategory://${arg}\fP
the \fBarg\fP should be the category of the kara.
.TP
\(bu
\fBauthor://${arg}\fP
the \fBarg\fP should be the author of the kara
the \fBarg\fP should be the author of the kara.
.TP
\(bu
\fBplaylist://${plt-name}\fP
The \fBplt-name\fP should be the name of a playlist.
.TP
\(bu
\fBquery://${arg}\fP
......
......@@ -84,15 +84,14 @@ enum log_level {
#define LKT_MAX_SQLITE_STATEMENT 1024
#define PROTECTED_DATABASE "disk"
#define LKT_DATABASE_NAME_KID "id"
#define LKT_DATABASE_NAME_KNAME "source_name"
#define LKT_DATABASE_NAME_KTITLE "song_title"
#define LKT_DATABASE_NAME_KCAT "category"
#define LKT_DATABASE_NAME_KTYPE "song_type"
#define LKT_DATABASE_NAME_KAUTHOR "author_name"
#define LKT_DATABASE_NAME_KLANG "language"
#define LKT_DATABASE_KARA_COLUMNT_ANY "any_col"
#define LKT_DATABASE_KARA_ALL "string"
#define LKT_DB_ID "id"
#define LKT_DB_NAME "source_name"
#define LKT_DB_TITLE "song_title"
#define LKT_DB_CAT "category"
#define LKT_DB_TYPE "song_type"
#define LKT_DB_AUTHOR "author_name"
#define LKT_DB_LANG "language"
#define LKT_DB_ALL "string"
#define LEKTOR_TAG_MAX 256
#define LKT_MESSAGE_ARGS_MAX 32
......
......@@ -20,9 +20,9 @@ database_search_database_init(volatile sqlite3 *db, struct lkt_search *ret)
RETURN_UNLESS(ret, "Exit because return pointer is NULL", false);
static const char *SQL_STMT_TEMPLATE =
"WITH content AS ("
" SELECT kara.id AS id, string AS any_col, LENGTH(CAST(kara.id AS TEXT)) AS len"
" SELECT kara.id AS id, string, LENGTH(CAST(kara.id AS TEXT)) AS len"
" FROM kara WHERE %s LIKE ?)"
"SELECT id, any_col, (SELECT MAX(len) FROM content)"
"SELECT id, string, (SELECT MAX(len) FROM content)"
"FROM content LIMIT %d OFFSET %d;";
char SQL_STMT[LKT_MAX_SQLITE_STATEMENT];
ret->type = lkt_search_database;
......@@ -120,12 +120,12 @@ database_search_queue_init(volatile sqlite3 *db, struct lkt_search *ret)
"WITH content AS ("
" SELECT"
" kara_id AS id,"
" string AS any_col,"
" string,"
" LENGTH(CAST(kara_id AS TEXT)) AS len"
" FROM queue"
" JOIN kara "
" ON kara_id = kara.id AND %s LIKE ?)"
"SELECT id, any_col, (SELECT MAX(len) FROM content)"
"SELECT id, string, (SELECT MAX(len) FROM content)"
"FROM content LIMIT %d OFFSET %d;";
char SQL_STMT[LKT_MAX_SQLITE_STATEMENT];
ret->type = lkt_search_queue;
......
......@@ -176,19 +176,19 @@ database_plt_add_uri(volatile sqlite3 *db, const char *name,
switch (uri->type) {
case uri_type:
column = LKT_DATABASE_NAME_KTYPE;
column = LKT_DB_TYPE;
break;
case uri_author:
column = LKT_DATABASE_NAME_KAUTHOR;
column = LKT_DB_AUTHOR;
break;
case uri_category:
column = LKT_DATABASE_NAME_KCAT;
column = LKT_DB_CAT;
break;
case uri_language:
column = LKT_DATABASE_NAME_KLANG;
column = LKT_DB_LANG;
break;
case uri_query:
column = LKT_DATABASE_KARA_ALL;
column = LKT_DB_ALL;
break;
default:
return false;
......
......@@ -258,28 +258,23 @@ error:
}
bool
database_queue_add_uri(volatile sqlite3 *db, struct lkt_uri *uri, int priority)
database_queue_add_uri(volatile sqlite3 *db, struct lkt_uri *uri, int prio)
{
switch (uri->type) {
case uri_query:
return queue_add_with_col_like_str(db, LKT_DATABASE_KARA_ALL,
uri->value, priority);
return queue_add_with_col_like_str(db, LKT_DB_ALL, uri->value, prio);
case uri_id:
return database_queue_add_id(db, uri->id, priority);
return database_queue_add_id(db, uri->id, prio);
case uri_type:
return queue_add_with_col_like_str(db, LKT_DATABASE_NAME_KTYPE,
uri->value, priority);
return queue_add_with_col_like_str(db, LKT_DB_TYPE, uri->value, prio);
case uri_category:
return queue_add_with_col_like_str(db, LKT_DATABASE_NAME_KCAT,
uri->value, priority);
return queue_add_with_col_like_str(db, LKT_DB_CAT, uri->value, prio);
case uri_language:
return queue_add_with_col_like_str(db, LKT_DATABASE_NAME_KLANG,
uri->value, priority);
return queue_add_with_col_like_str(db, LKT_DB_LANG, uri->value, prio);
case uri_author:
return queue_add_with_col_like_str(db, LKT_DATABASE_NAME_KAUTHOR,
uri->value, priority);
return queue_add_with_col_like_str(db, LKT_DB_AUTHOR, uri->value, prio);
case uri_playlist:
return database_queue_add_plt(db, (char *) uri->value, priority);
return database_queue_add_plt(db, (char *) uri->value, prio);
default:
LOG_WARN("DB", "Add to queue for uri of type %d is not"
" implemented", uri->type);
......
......@@ -23,7 +23,7 @@ __prefix(char *str, struct lkt_uri *ret)
return NULL;
if (STR_NMATCH(str, "id", 2)) {
ret->column_name = LKT_DATABASE_NAME_KID;
ret->column_name = LKT_DB_ID;
ret->type = uri_id;
val = str + 2;
} else if (STR_NMATCH(str, "playlist", 8)) {
......@@ -31,23 +31,23 @@ __prefix(char *str, struct lkt_uri *ret)
ret->type = uri_playlist;
val = str + 3;
} else if (STR_NMATCH(str, "type", 4)) {
ret->column_name = LKT_DATABASE_NAME_KTYPE;
ret->column_name = LKT_DB_TYPE;
ret->type = uri_type;
val = str + 4;
} else if (STR_NMATCH(str, "author", 6)) {
ret->column_name = LKT_DATABASE_NAME_KAUTHOR;
ret->column_name = LKT_DB_AUTHOR;
ret->type = uri_author;
val = str + 6;
} else if (STR_NMATCH(str, "category", 8)) {
ret->column_name = LKT_DATABASE_NAME_KCAT;
ret->column_name = LKT_DB_CAT;
ret->type = uri_category;
val = str + 8;
} else if (STR_NMATCH(str, "lang", 4)) {
ret->column_name = LKT_DATABASE_NAME_KLANG;
ret->column_name = LKT_DB_LANG;
ret->type = uri_language;
val = str + 4;
} else if (STR_NMATCH(str, "query", 5)) {
ret->column_name = LKT_DATABASE_KARA_ALL;
ret->column_name = LKT_DB_ALL;
ret->type = uri_query;
val = str + 5;
} else
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter