Enlightenment CVS committal

Author  : chaos
Project : e17
Module  : apps/evfs

Dir     : e17/apps/evfs/src/bin


Modified Files:
        evfs_main.c evfs_metadata.c 


Log Message:
* More metadata work

===================================================================
RCS file: /cvs/e/e17/apps/evfs/src/bin/evfs_main.c,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -3 -r1.46 -r1.47
--- evfs_main.c 10 Jun 2006 02:35:58 -0000      1.46
+++ evfs_main.c 24 Jun 2006 13:01:04 -0000      1.47
@@ -1,7 +1,7 @@
 
 /*
 
-Copyright (C) 2005 Alexander Taylor <[EMAIL PROTECTED]>.
+Copyright (C) 2005-2006 Alexander Taylor <[EMAIL PROTECTED]>.
 
 Permission is hereby granted, free of charge, to any person obtaining a copy
 of this software and associated documentation files (the "Software"), to
@@ -451,6 +451,7 @@
    evfs_io_initialise();
    evfs_vfolder_initialise();
    evfs_operation_initialise();
+   evfs_metadata_init();
 
    if ((server->ipc_server =
         ecore_ipc_server_connect(ECORE_IPC_LOCAL_USER, EVFS_IPC_TITLE, 0,
===================================================================
RCS file: /cvs/e/e17/apps/evfs/src/bin/evfs_metadata.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -3 -r1.1 -r1.2
--- evfs_metadata.c     20 Jun 2006 16:35:34 -0000      1.1
+++ evfs_metadata.c     24 Jun 2006 13:01:04 -0000      1.2
@@ -3,6 +3,7 @@
 #endif
 
 #include "evfs.h"
+#include "evfs_metadata.h"
 
 #include <unistd.h>
 #include <stdio.h>
@@ -11,7 +12,67 @@
 #include <sys/types.h>
 
 #include <Eet.h>
+#include <Evas.h>
 #include <limits.h>
+
+static int evfs_metadata_state = 0;
+static Eet_Data_Descriptor* Evfs_Metadata_String_Edd;
+static char* homedir;
+static char metadata_file[PATH_MAX];
+static Eet_File* _evfs_metadata_eet;
+
+Eet_Data_Descriptor* _evfs_metadata_edd_create(char* desc, int size) 
+{
+       Eet_Data_Descriptor* edd;
+       
+       edd= eet_data_descriptor_new(desc, size,
+                              (void *(*)(void *))evas_list_next,
+                              (void *(*)(void *, void *))evas_list_append,
+                              (void *(*)(void *))evas_list_data,
+                              (void *(*)(void *))evas_list_free,
+                              (void (*)
+                               (void *,
+                                int (*)(void *, const char *, void *, void *),
+                                void *))evas_hash_foreach, (void *(*)(void *,
+                                                                      const 
char
+                                                                      *,
+                                                                      void *))
+                              evas_hash_add, (void (*)(void *))evas_hash_free);
+
+       return edd;
+}
+
+void evfs_metadata_init()
+{
+       struct stat config_dir_stat;
+       
+       if (!evfs_metadata_state) {
+               evfs_metadata_state++;
+       } else return;
+
+       printf(". EVFS metadata initialise..\n");
+
+       homedir = strdup(getenv("HOME"));
+       snprintf(metadata_file, PATH_MAX, "%s/.e/evfs", homedir);
+
+       if (stat(metadata_file, &config_dir_stat)) {
+               mkdir(metadata_file, 0700);
+       }
+       snprintf(metadata_file, PATH_MAX, "%s/.e/evfs/evfs_metadata.eet", 
homedir);
+
+       /*Open/close the file*/
+       _evfs_metadata_eet = eet_open(metadata_file, EET_FILE_MODE_WRITE);
+       eet_close(_evfs_metadata_eet);
+
+       /*String edd*/
+       Evfs_Metadata_String_Edd = 
_evfs_metadata_edd_create("evfs_metadata_string", sizeof(evfs_metadata_object));
+       EET_DATA_DESCRIPTOR_ADD_BASIC(Evfs_Metadata_String_Edd, 
evfs_metadata_object,
+                                 "description", description, EET_T_STRING);
+       EET_DATA_DESCRIPTOR_ADD_BASIC(Evfs_Metadata_String_Edd, 
evfs_metadata_object,
+                                 "key", key, EET_T_STRING);
+       EET_DATA_DESCRIPTOR_ADD_BASIC(Evfs_Metadata_String_Edd, 
evfs_metadata_object,
+                                 "value", value, EET_T_STRING);
+}
 
 void evfs_metadata_file_set_key_value_edd(evfs_filereference* ref, char* key, 
                void* value, Eet_Data_Descriptor* edd) 



Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to