482cd8f6baaff31cfbfc99391f19d1e739e67114 tdreszer Mon Sep 27 11:59:41 2010 -0700 Moved mdb queries from hgTracks and hgApi to mdb. Made sure the queries exclude files. diff --git src/hg/hgApi/hgApi.c src/hg/hgApi/hgApi.c index bb78e33..2f9e681 100644 --- src/hg/hgApi/hgApi.c +++ src/hg/hgApi/hgApi.c @@ -2,6 +2,7 @@ #include "common.h" #include "hdb.h" +#include "mdb.h" #include "cheapcgi.h" #include "hPrint.h" #include "dystring.h" @@ -50,6 +51,8 @@ dyStringPrintf(json, "\n%s}", tabs); } +#define MDB_VAL_TRUNC_AT 64 + int main(int argc, char *argv[]) { struct dyString *output = newDyString(10000); @@ -93,22 +96,14 @@ boolean metaDbExists = sqlTableExists(conn, "metaDb"); if(metaDbExists) { - char query[256]; - struct sqlResult *sr = NULL; - char **row; int i; - struct slName *el, *termList = NULL; char *var = cgiOptionalString("var"); if(var) var = sqlEscapeString(var); else fail("Missing var parameter"); - safef(query, sizeof(query), "select distinct val from metaDb where var = '%s'", var); - sr = sqlGetResult(conn, query); - while ((row = sqlNextRow(sr)) != NULL) - slNameAddHead(&termList, row[0]); - sqlFreeResult(&sr); - slSort(&termList, slNameCmpCase); + struct slName *termList = mdbValSearch(conn, var, MDB_VAL_STD_TRUNCATION, TRUE, FALSE); // Tables not files + struct slName *el; dyStringPrintf(output, "[\n"); for (el = termList, i = 0; el != NULL; el = el->next, i++) {