Enlightenment CVS committal Author : chaos Project : e17 Module : apps/evfs
Dir : e17/apps/evfs/src/include Modified Files: evfs.h evfs_command.h evfs_commands.h evfs_common.h evfs_event.h evfs_event_helper.h evfs_plugin.h evfs_server.h evfs_server_handle.h Log Message: Ok, lotsa changes: * Abstracted out the plugin architecture. Two plugins types now: Filesystem, and metadata provider * Added audio tagger metadata provider (based on e_taggerd by CodeWarrior). Be warned - metadata provider file type is hardcoded to go to this plugin for now - more later, including libextract) * A few bug fixes, whatever ended up in this commit cycle =================================================================== RCS file: /cvs/e/e17/apps/evfs/src/include/evfs.h,v retrieving revision 1.45 retrieving revision 1.46 diff -u -3 -r1.45 -r1.46 --- evfs.h 11 Apr 2006 07:01:03 -0000 1.45 +++ evfs.h 21 Apr 2006 15:10:16 -0000 1.46 @@ -13,6 +13,8 @@ #include <Ecore_Ipc.h> #include <Ecore_File.h> +#include <Evas.h> + #include <stdlib.h> #include <string.h> =================================================================== RCS file: /cvs/e/e17/apps/evfs/src/include/evfs_command.h,v retrieving revision 1.8 retrieving revision 1.9 diff -u -3 -r1.8 -r1.9 --- evfs_command.h 5 Apr 2006 05:39:05 -0000 1.8 +++ evfs_command.h 21 Apr 2006 15:10:16 -0000 1.9 @@ -19,7 +19,8 @@ EVFS_CMD_FILE_TEST = 11, EVFS_CMD_PING = 12, EVFS_CMD_OPERATION_RESPONSE = 13, - EVFS_CMD_DIRECTORY_CREATE = 14 + EVFS_CMD_DIRECTORY_CREATE = 14, + EVFS_CMD_METADATA_RETRIEVE = 15 } evfs_command_type; =================================================================== RCS file: /cvs/e/e17/apps/evfs/src/include/evfs_commands.h,v retrieving revision 1.12 retrieving revision 1.13 diff -u -3 -r1.12 -r1.13 --- evfs_commands.h 5 Apr 2006 05:43:04 -0000 1.12 +++ evfs_commands.h 21 Apr 2006 15:10:16 -0000 1.13 @@ -18,4 +18,7 @@ long evfs_client_directory_create(evfs_connection * conn, evfs_filereference * file); +long +evfs_client_metadata_retrieve(evfs_connection * conn, evfs_filereference* file ); + #endif =================================================================== RCS file: /cvs/e/e17/apps/evfs/src/include/evfs_common.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- evfs_common.h 12 Mar 2006 05:27:33 -0000 1.3 +++ evfs_common.h 21 Apr 2006 15:10:16 -0000 1.4 @@ -4,4 +4,7 @@ evfs_plugin *evfs_get_plugin_for_uri(evfs_server * server, char *uri_base); evfs_filereference* evfs_filereference_clone(evfs_filereference* source); +evfs_plugin* evfs_meta_plugin_get_for_type(evfs_server* server, char* mime); + + #endif =================================================================== RCS file: /cvs/e/e17/apps/evfs/src/include/evfs_event.h,v retrieving revision 1.12 retrieving revision 1.13 diff -u -3 -r1.12 -r1.13 --- evfs_event.h 5 Apr 2006 05:39:05 -0000 1.12 +++ evfs_event.h 21 Apr 2006 15:10:16 -0000 1.13 @@ -14,6 +14,7 @@ EVFS_EV_FILE_READ = 7, EVFS_EV_PONG = 8, EVFS_EV_OPERATION = 9, + EVFS_EV_METADATA = 10, EVFS_EV_ERROR = 100, EVFS_EV_NOT_SUPPORTED = 101 @@ -34,17 +35,13 @@ EVFS_EV_PART_DATA = 6, EVFS_EV_PART_STAT_SIZE = 7, EVFS_EV_PART_FILE_REFERENCE = 8, - EVFS_EV_PART_FILE_REFERENCE_USERNAME = 9, - EVFS_EV_PART_FILE_REFERENCE_PASSWORD = 10, + EVFS_EV_PART_METALIST = 9, EVFS_EV_PART_PROGRESS = 11, EVFS_COMMAND_EXTRA = 12, EVFS_COMMAND_TYPE = 13, EVFS_FILE_REFERENCE = 14, - EVFS_FILE_REFERENCE_PASSWORD = 15, - EVFS_FILE_REFERENCE_USERNAME = 16, - EVFS_FILE_REFERENCE_FD = 17, EVFS_EV_PART_OPERATION = 18, EVFS_EV_PART_FILE_MONITOR = 19, @@ -77,6 +74,12 @@ } evfs_stat; +typedef struct evfs_meta_obj +{ + char* key; + char* value; +} evfs_meta_obj; + typedef struct evfs_event_id_notify evfs_event_id_notify; struct evfs_event_id_notify { @@ -128,6 +131,12 @@ char *bytes; } evfs_event_data; +typedef struct evfs_event_meta +{ + Evas_List* meta_list; + Ecore_Hash* meta_hash; +} evfs_event_meta; + /*typedef struct evfs_event_operation { evfs_operation* op; } evfs_event_operation;*/ @@ -144,6 +153,11 @@ evfs_event_stat stat; evfs_event_progress *progress; struct evfs_operation *op; + + /*This is just a hack until we separate out + * the different evfs_event types into a struct + * hierarchy */ + evfs_event_meta* meta; evfs_event_data data; } =================================================================== RCS file: /cvs/e/e17/apps/evfs/src/include/evfs_event_helper.h,v retrieving revision 1.16 retrieving revision 1.17 diff -u -3 -r1.16 -r1.17 --- evfs_event_helper.h 12 Mar 2006 05:27:33 -0000 1.16 +++ evfs_event_helper.h 21 Apr 2006 15:10:16 -0000 1.17 @@ -23,4 +23,7 @@ void evfs_operation_event_create(evfs_client * client, evfs_command * command, evfs_operation * op, char* misc); +void +evfs_meta_data_event_create(evfs_client* client,evfs_command* command, Evas_List* ret_list); + #endif =================================================================== RCS file: /cvs/e/e17/apps/evfs/src/include/evfs_plugin.h,v retrieving revision 1.13 retrieving revision 1.14 diff -u -3 -r1.13 -r1.14 --- evfs_plugin.h 3 Feb 2006 23:12:13 -0000 1.13 +++ evfs_plugin.h 21 Apr 2006 15:10:16 -0000 1.14 @@ -3,6 +3,11 @@ #include "evfs_client.h" +typedef struct evfs_plugin_functions_meta +{ + Evas_List* (*evfs_file_meta_retrieve)(evfs_client* client, evfs_command* command); +} evfs_plugin_functions_meta; + typedef struct evfs_plugin_functions { int (*evfs_client_disconnect) (evfs_client *); @@ -32,11 +37,31 @@ typedef struct evfs_plugin { - evfs_plugin_functions *functions; - void *dl_ref; - char *uri; } evfs_plugin; +#define EVFS_PLUGIN(plugin) ((evfs_plugin*)plugin) + +typedef struct evfs_plugin_file +{ + evfs_plugin base; + + char *uri; + evfs_plugin_functions *functions; + +} evfs_plugin_file; +#define EVFS_PLUGIN_FILE(plugin) ((evfs_plugin_file*)plugin) + +typedef struct evfs_plugin_meta +{ + evfs_plugin base; + + char *uri; + evfs_plugin_functions_meta *functions; + +} evfs_plugin_meta; +#define EVFS_PLUGIN_META(plugin) ((evfs_plugin_meta*)plugin) + + #endif =================================================================== RCS file: /cvs/e/e17/apps/evfs/src/include/evfs_server.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- evfs_server.h 3 Feb 2006 23:12:13 -0000 1.3 +++ evfs_server.h 21 Apr 2006 15:10:16 -0000 1.4 @@ -16,6 +16,7 @@ { Ecore_Hash *client_hash; Ecore_Hash *plugin_uri_hash; + Ecore_Hash *plugin_meta_hash; Ecore_Ipc_Server *ipc_server; unsigned long clientCounter; =================================================================== RCS file: /cvs/e/e17/apps/evfs/src/include/evfs_server_handle.h,v retrieving revision 1.16 retrieving revision 1.17 diff -u -3 -r1.16 -r1.17 --- evfs_server_handle.h 14 Mar 2006 13:06:23 -0000 1.16 +++ evfs_server_handle.h 21 Apr 2006 15:10:16 -0000 1.17 @@ -25,3 +25,5 @@ evfs_command * command); void evfs_handle_directory_create_command(evfs_client * client, evfs_command * command); + +void evfs_handle_metadata_command(evfs_client* client, evfs_command* command); ------------------------------------------------------- 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