aboutsummaryrefslogtreecommitdiff
path: root/src/lstag.c
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2013-04-20 10:39:19 +0300
committerSergey Poznyakoff <gray@gnu.org.ua>2013-04-20 10:39:19 +0300
commit67dce06bb26798e2b11ee0883bdc7e08d7edb663 (patch)
tree3f3655179dded2bbdd16c411d3f0558fe4515bf9 /src/lstag.c
parent347387193da605922ed98742dbc7fa3f67a908f4 (diff)
downloadeclat-67dce06bb26798e2b11ee0883bdc7e08d7edb663.tar.gz
eclat-67dce06bb26798e2b11ee0883bdc7e08d7edb663.tar.bz2
Major rewrite. Provide short names for each command.
Diffstat (limited to 'src/lstag.c')
-rw-r--r--src/lstag.c50
1 files changed, 50 insertions, 0 deletions
diff --git a/src/lstag.c b/src/lstag.c
new file mode 100644
index 0000000..49c165b
--- /dev/null
+++ b/src/lstag.c
@@ -0,0 +1,50 @@
+/* This file is part of Eclat.
+ Copyright (C) 2012, 2013 Sergey Poznyakoff.
+
+ Eclat is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3, or (at your option)
+ any later version.
+
+ Eclat is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Eclat. If not, see <http://www.gnu.org/licenses/>. */
+
+#include "eclat.h"
+#include "lstag-cl.h"
+
+int
+eclat_describe_tags(eclat_command_env_t *env, int argc, char **argv)
+{
+ int i;
+ char *bufptr = NULL;
+ size_t bufsize = 0;
+ struct grecs_list_entry *ep;
+ int n = 1;
+
+ parse_options(argc, argv, &i);
+ argv += i;
+ argc -= i;
+ translate_resource_ids(argc, argv);
+
+ if (reslist->head) {
+ eclat_query_add_param(env->query,
+ "Filter.1.Name", "resource-id");
+ for (ep = reslist->head, i = 1; ep; ep = ep->next, i++) {
+ struct resource *res = ep->data;
+ if (res->map)
+ translate_ids(1, &res->resid, res->map);
+ grecs_asprintf(&bufptr, &bufsize,
+ "Filter.1.Value.%d", i);
+ eclat_query_add_param(env->query, bufptr, res->resid);
+ }
+ n++;
+ }
+ describe_query_update(env, argc, argv, NULL, n, NULL);
+
+ return 0;
+}

Return to:

Send suggestions and report system problems to the System administrator.