#include <arpa/inet.h>
#include <sys/un.h>
#include <netdb.h>
+#include <lopsub.h>
#include "server.cmdline.h"
#include "para.h"
return ret;
}
-int com_init(struct command_context *cc)
+static int com_init(struct command_context *cc, struct lls_parse_result *lpr)
{
int i, j, ret;
uint32_t table_mask = (1 << (NUM_AFS_TABLES + 1)) - 1;
struct osl_object query = {.data = &table_mask,
.size = sizeof(table_mask)};
+ unsigned num_inputs = lls_num_inputs(lpr);
ret = make_database_dir();
if (ret < 0)
return ret;
- if (cc->argc != 1) {
+ if (num_inputs > 0) {
table_mask = 0;
- for (i = 1; i < cc->argc; i++) {
+ for (i = 0; i < num_inputs; i++) {
for (j = 0; j < NUM_AFS_TABLES; j++) {
struct afs_table *t = &afs_tables[j];
- if (strcmp(cc->argv[i], t->name))
+ if (strcmp(lls_input(i, lpr), t->name))
continue;
table_mask |= (1 << j);
break;
return send_callback_request(com_init_callback, &query,
afs_cb_result_handler, cc);
}
+EXPORT_SERVER_CMD_HANDLER(init);
/**
* Flags for the check command.
SN: list of afs commands
TM: mood lyr img pl
---
-N: init
-P: AFS_READ | AFS_WRITE
-D: Initialize the osl tables for the audio file selector.
-U: init [table_name ...]
-H: When invoked without arguments, this command creates all tables. Otherwise
-H: only the tables given by table_name... are created.
----
N: ls
P: AFS_READ
D: List audio files.
to the server process has the same effect as running this command.
[/description]
+[subcommand init]
+ purpose = initialize the database tables for the audio file selector
+ synopsis = [table_name...]
+ aux_info = AFS_READ | AFS_WRITE
+ [description]
+ When invoked without arguments, this command creates all
+ tables: audio_files, attributes, scores, moods, lyrics, images,
+ playlists. Otherwise only the given tables are created.
+ [/description]
+
[subcommand jmp]
purpose = reposition the current stream
non-opts-name = n