summaryrefslogtreecommitdiff
path: root/res/res_config_sqlite.c
diff options
context:
space:
mode:
authorJason Parker <jparker@digium.com>2007-10-19 18:01:00 +0000
committerJason Parker <jparker@digium.com>2007-10-19 18:01:00 +0000
commit65761cbd7a322352fdb834fedee8d4bbb62be61c (patch)
treef7b900279b3959d2cc8feddc22a7d8643eb60f95 /res/res_config_sqlite.c
parent306b944208788246310ebec3c7e2639839768378 (diff)
More changes to NEW_CLI.
Also fixes a few cli messages and some minor formatting. (closes issue #11001) Reported by: seanbright Patches: newcli.1.patch uploaded by seanbright (license 71) newcli.2.patch uploaded by seanbright (license 71) newcli.4.patch uploaded by seanbright (license 71) newcli.5.patch uploaded by seanbright (license 71) newcli.6.patch uploaded by seanbright (license 71) newcli.7.patch uploaded by seanbright (license 71) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86534 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'res/res_config_sqlite.c')
-rw-r--r--res/res_config_sqlite.c51
1 files changed, 28 insertions, 23 deletions
diff --git a/res/res_config_sqlite.c b/res/res_config_sqlite.c
index 773681594..40545a575 100644
--- a/res/res_config_sqlite.c
+++ b/res/res_config_sqlite.c
@@ -106,10 +106,6 @@
#define RES_CONFIG_SQLITE_DRIVER "sqlite"
#define RES_CONFIG_SQLITE_DESCRIPTION "Resource Module for SQLite 2"
#define RES_CONFIG_SQLITE_CONF_FILE "res_config_sqlite.conf"
-#define RES_CONFIG_SQLITE_STATUS_SUMMARY "Show status information about the SQLite 2 driver"
-#define RES_CONFIG_SQLITE_STATUS_USAGE \
- "Usage: show sqlite status\n" \
- " " RES_CONFIG_SQLITE_STATUS_SUMMARY "\n"
enum {
RES_CONFIG_SQLITE_CONFIG_ID,
@@ -456,7 +452,7 @@ static int realtime_destroy_handler(const char *database, const char *table,
* \param argv arguments list
* \return RESULT_SUCCESS
*/
-static int cli_status(int fd, int argc, char *argv[]);
+static char *handle_cli_show_sqlite_status(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a);
/*! The SQLite database object. */
static sqlite *db;
@@ -503,12 +499,8 @@ AST_MUTEX_DEFINE_STATIC(mutex);
* Structure containing details and callback functions for the CLI status
* command.
*/
-static struct ast_cli_entry cli_status_cmd =
-{
- .cmda = {"show", "sqlite", "status", NULL},
- .handler = cli_status,
- .summary = RES_CONFIG_SQLITE_STATUS_SUMMARY,
- .usage = RES_CONFIG_SQLITE_STATUS_USAGE
+static struct ast_cli_entry cli_status[] = {
+ NEW_CLI(handle_cli_show_sqlite_status, "Show status information about the SQLite 2 driver"),
};
/*
@@ -1382,31 +1374,44 @@ static int realtime_destroy_handler(const char *database, const char *table,
return rows_num;
}
-
-static int cli_status(int fd, int argc, char *argv[])
+static char *handle_cli_show_sqlite_status(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
{
- ast_cli(fd, "SQLite database path: %s\n", dbfile);
- ast_cli(fd, "config_table: ");
+ switch (cmd) {
+ case CLI_INIT:
+ e->command = "show sqlite status";
+ e->usage =
+ "Usage: show sqlite status\n"
+ " Show status information about the SQLite 2 driver\n";
+ return NULL;
+ case CLI_GENERATE:
+ return NULL;
+ }
+
+ if (a->argc != 3)
+ return CLI_SHOWUSAGE;
+
+ ast_cli(a->fd, "SQLite database path: %s\n", dbfile);
+ ast_cli(a->fd, "config_table: ");
if (!config_table)
- ast_cli(fd, "unspecified, must be present in extconfig.conf\n");
+ ast_cli(a->fd, "unspecified, must be present in extconfig.conf\n");
else
- ast_cli(fd, "%s\n", config_table);
+ ast_cli(a->fd, "%s\n", config_table);
- ast_cli(fd, "cdr_table: ");
+ ast_cli(a->fd, "cdr_table: ");
if (!cdr_table)
- ast_cli(fd, "unspecified, CDR support disabled\n");
+ ast_cli(a->fd, "unspecified, CDR support disabled\n");
else
- ast_cli(fd, "%s\n", cdr_table);
+ ast_cli(a->fd, "%s\n", cdr_table);
- return RESULT_SUCCESS;
+ return CLI_SUCCESS;
}
static int unload_module(void)
{
if (cli_status_registered)
- ast_cli_unregister(&cli_status_cmd);
+ ast_cli_unregister_multiple(cli_status, sizeof(cli_status) / sizeof(struct ast_cli_entry));
if (cdr_registered)
ast_cdr_unregister(RES_CONFIG_SQLITE_NAME);
@@ -1516,7 +1521,7 @@ static int load_module(void)
cdr_registered = 1;
}
- error = ast_cli_register(&cli_status_cmd);
+ error = ast_cli_register_multiple(cli_status, sizeof(cli_status) / sizeof(struct ast_cli_entry));
if (error) {
unload_module();