Enlightenment CVS committal

Author  : chaos
Project : e17
Module  : apps/evfs

Dir     : e17/apps/evfs/src/bin


Modified Files:
        Makefile.am evfs_metadata.c 
Added Files:
        evfs_metadata_db.c 


Log Message:
* Add group icon hinting
* Split out seeder to new file - create DB upgrade system

===================================================================
RCS file: /cvs/e/e17/apps/evfs/src/bin/Makefile.am,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -3 -r1.20 -r1.21
--- Makefile.am 19 Jul 2006 16:27:10 -0000      1.20
+++ Makefile.am 20 Jul 2006 15:15:40 -0000      1.21
@@ -18,7 +18,8 @@
        evfs_server_handle.c \
        evfs_operation.c \
        evfs_operation_tasks.c \
-       evfs_metadata.c \
+       evfs_metadata.c \ 
+       evfs_metadata_db.c \
        #evfs_mounts.c \
        $(top_srcdir)/src/common/evfs_vfolder.c
 
===================================================================
RCS file: /cvs/e/e17/apps/evfs/src/bin/evfs_metadata.c,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -3 -r1.15 -r1.16
--- evfs_metadata.c     20 Jul 2006 10:33:30 -0000      1.15
+++ evfs_metadata.c     20 Jul 2006 15:15:40 -0000      1.16
@@ -17,6 +17,8 @@
 
 #include <sqlite3.h>
 
+#include "evfs_metadata_db.h"
+
 #define EVFS_METADATA_GROUP_LIST "/evfs/group/list"
 #define EVFS_METADATA_BASE_DATA "block"
 
@@ -259,7 +261,6 @@
        sqlite3_reset(pStmt);
        sqlite3_finalize(pStmt);
 
-
        return exists;
 }
 
@@ -314,7 +315,6 @@
                }
 
                snprintf(metadata_file, PATH_MAX, 
"%s/.e/evfs/evfs_metadata.eet", homedir);
-               snprintf(metadata_db, PATH_MAX, "%s/.e/evfs/evfs_metadata.db", 
homedir);
 
                if (stat(metadata_file, &config_dir_stat)) {
                        printf("Making new metadata file..\n");
@@ -358,67 +358,8 @@
                        eet_close(_evfs_metadata_eet);
                }
 
-               /*Check if we need to seed the DB*/
-               if (stat(metadata_db, &config_dir_stat)) {
-                       char* errMsg = 0;
-                       
-                       ret = sqlite3_open(metadata_db, &db);
-                       if( ret ){
-                           fprintf(stderr, "Can't open metadata database: 
%s\n", sqlite3_errmsg(db));
-                           sqlite3_close(db);
-                           exit(1);
-                       }
-
-                       /*Seed statements*/
-                       ret = sqlite3_exec(db, 
-                       "CREATE TABLE File (id integer primary key 
AUTOINCREMENT, filename varchar(1024));", 
-                       NULL, 0,&errMsg);
-                       if( ret ){
-                           fprintf(stderr, "Create error: %s\n", 
sqlite3_errmsg(db));
-                           sqlite3_close(db);
-                           exit(1);
-                       }
-
-                       ret = sqlite3_exec(db, 
-                       "CREATE TABLE FileGroup (id integer primary key 
AUTOINCREMENT, File int, MetaGroup int);", 
-                       NULL, 0,&errMsg);
-
-                       ret = sqlite3_exec(db, 
-                       "CREATE TABLE MetaGroup (id integer primary key 
AUTOINCREMENT, name varchar(255), parent int);", 
-                       NULL, 0,&errMsg);
-
-                       ret = sqlite3_exec(db, 
-                       "CREATE TABLE CustomValues (id integer primary key 
AUTOINCREMENT, name varchar(255), value varchar(255));", 
-                       NULL, 0,&errMsg);
-
-                       /*Inserts*/
-                       ret = sqlite3_exec(db, 
-                       "INSERT INTO \"MetaGroup\" VALUES(NULL, 'Pictures', 
0);", 
-                       NULL, 0,&errMsg);
-
-                       ret = sqlite3_exec(db, 
-                       "INSERT INTO \"MetaGroup\" VALUES(NULL, 'Video', 0);", 
-                       NULL, 0,&errMsg);
-
-                       ret = sqlite3_exec(db, 
-                       "INSERT INTO \"MetaGroup\" VALUES(NULL, 'Audio', 0);", 
-                       NULL, 0,&errMsg);
-
-                       ret = sqlite3_exec(db, 
-                       "INSERT INTO \"CustomValues\" VALUES(NULL, 
'ConfigVersion', '1');", 
-                       NULL, 0,&errMsg);
-
-
-               } else {
-
-                       ret = sqlite3_open(metadata_db, &db);
-                       if( ret ){
-                           fprintf(stderr, "Can't open metadata database: 
%s\n", sqlite3_errmsg(db));
-                           sqlite3_close(db);
-                           exit(1);
        
-                       }
-               }
+               evfs_metadata_db_init(&db);
        }
 
 }
@@ -427,15 +368,26 @@
        int ret;
        Evas_List* ret_list = NULL;
        sqlite3_stmt *pStmt;
+       evfs_metadata_group_header* g;
+       char* str;
 
-       ret = sqlite3_prepare(db, "select name from MetaGroup where parent = 
0", 
+       ret = sqlite3_prepare(db, "select name,visualHint from MetaGroup where 
parent = 0", 
                        -1, &pStmt, 0);
 
        do {
                ret = sqlite3_step(pStmt);
+               
 
-               if (ret == SQLITE_ROW) 
-                       ret_list = evas_list_append(ret_list, 
strdup(sqlite3_column_text(pStmt,0)));
+               if (ret == SQLITE_ROW) {
+                       g = calloc(1, sizeof(evfs_metadata_group_header));
+                       g->name = strdup(sqlite3_column_text(pStmt,0));
+                       if (sqlite3_column_text(pStmt, 1)) {
+                               g->visualhint = 
strdup(sqlite3_column_text(pStmt,1));
+                               printf("Loaded visualhint %s\n", g->visualhint);
+                       }
+                       
+                       ret_list = evas_list_append(ret_list, g);
+               }
        } while (ret == SQLITE_ROW);
 
        sqlite3_reset(pStmt);



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to