Enlightenment CVS committal Author : chaos Project : e17 Module : apps/evfs
Dir : e17/apps/evfs/src/bin Modified Files: evfs_metadata_db.c evfs_server_handle.c evfs_worker.c Log Message: An event to get a list of all extracted metadata keywords =================================================================== RCS file: /cvs/e/e17/apps/evfs/src/bin/evfs_metadata_db.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -3 -r1.15 -r1.16 --- evfs_metadata_db.c 28 Aug 2007 02:45:39 -0000 1.15 +++ evfs_metadata_db.c 29 Aug 2007 04:31:39 -0000 1.16 @@ -639,3 +639,27 @@ return files; } + +Evas_List* evfs_metadata_db_meta_list_get(sqlite3* db) +{ + char query[PATH_MAX]; + Evas_List* meta = NULL; + int ret; + sqlite3_stmt *pStmt; + + snprintf(query,sizeof(query),"select keyword, count(*) cnt from FileMeta group by keyword order by cnt desc"); + ret = sqlite3_prepare(db, query, -1, &pStmt, 0); + if (ret == SQLITE_OK) { + while ((ret = sqlite3_step(pStmt)) == SQLITE_ROW) { + EvfsMetaObject* m = NEW(EvfsMetaObject); + char* mt = strdup(sqlite3_column_text(pStmt,0)); + m->key = mt; + + meta = evas_list_append(meta, m); + } + sqlite3_reset(pStmt); + sqlite3_finalize(pStmt); + + } + return meta; +} =================================================================== RCS file: /cvs/e/e17/apps/evfs/src/bin/evfs_server_handle.c,v retrieving revision 1.87 retrieving revision 1.88 diff -u -3 -r1.87 -r1.88 --- evfs_server_handle.c 27 Aug 2007 13:38:53 -0000 1.87 +++ evfs_server_handle.c 29 Aug 2007 04:31:39 -0000 1.88 @@ -791,3 +791,17 @@ evfs_metadata_db_close(db); } + +void evfs_handle_meta_all_request(evfs_client* client, evfs_command* command) +{ + Evas_List* e; + sqlite3* db; + + db = evfs_metadata_db_connect(); + if (db) { + e = evfs_metadata_db_meta_list_get(db); + evfs_metadata_db_close(db); + + evfs_metaall_event_create(client,command,e); + } +} =================================================================== RCS file: /cvs/e/e17/apps/evfs/src/bin/evfs_worker.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- evfs_worker.c 26 Aug 2007 13:08:36 -0000 1.9 +++ evfs_worker.c 29 Aug 2007 04:31:39 -0000 1.10 @@ -181,6 +181,10 @@ evfs_handle_vfolder_create(client,command); break; + case EVFS_CMD_META_ALL_REQUEST: + evfs_handle_meta_all_request(client,command); + break; + default: printf("Warning - unhandled command %d\n", command->type); break; ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs