summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorCarlos Garnacho <carlosg@gnome.org>2011-03-10 13:12:55 +0100
committerMartyn Russell <martyn@lanedo.com>2011-03-15 15:43:40 +0000
commit557ac36e50842e6fb89c69bf269bfaa3349499a4 (patch)
tree733c222c1e5a7f676fa5954c74743904d8c8c17b /examples
parent625d9706e7e97a9b8093b21eeb8e707f579c0b29 (diff)
downloadtracker-557ac36e50842e6fb89c69bf269bfaa3349499a4.tar.gz
tracker-extract: Use module manager from libtracker-extract
Also fixed mockup example to use new APIs
Diffstat (limited to 'examples')
-rw-r--r--examples/libtracker-extract/01-mockup.rule.in4
-rw-r--r--examples/libtracker-extract/Makefile.am11
-rw-r--r--examples/libtracker-extract/tracker-extract-mockup.c41
3 files changed, 29 insertions, 27 deletions
diff --git a/examples/libtracker-extract/01-mockup.rule.in b/examples/libtracker-extract/01-mockup.rule.in
new file mode 100644
index 000000000..31d56b561
--- /dev/null
+++ b/examples/libtracker-extract/01-mockup.rule.in
@@ -0,0 +1,4 @@
+[ExtractorRule]
+ModulePath=@modulesdir@/libextract-mp3.so
+MimeTypes=audio/mpeg;audio/x-mp3;
+
diff --git a/examples/libtracker-extract/Makefile.am b/examples/libtracker-extract/Makefile.am
index 798c73c2c..74cdc435f 100644
--- a/examples/libtracker-extract/Makefile.am
+++ b/examples/libtracker-extract/Makefile.am
@@ -19,3 +19,14 @@ libextract_mockup_la_LIBADD = \
$(BUILD_LIBS) \
$(LIBTRACKER_EXTRACT_LIBS)
+rules_in_files = 01-mockup.rule.in
+
+%.rule: %.rule.in
+ @sed -e "s|@modulesdir[@]|${modulesdir}|" $< > $@
+
+rulesdir = $(datadir)/tracker/extract-rules
+rules_DATA = 01-mockup.rule
+
+CLEANFILES = $(rules_DATA)
+
+EXTRA_DIST = $(rules_in_files) \ No newline at end of file
diff --git a/examples/libtracker-extract/tracker-extract-mockup.c b/examples/libtracker-extract/tracker-extract-mockup.c
index afb60df99..3ddb94b86 100644
--- a/examples/libtracker-extract/tracker-extract-mockup.c
+++ b/examples/libtracker-extract/tracker-extract-mockup.c
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2010, Your name <Your email address>
+ * Copyright (C) 2011, Your name <Your email address>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -26,22 +26,17 @@
#include <libtracker-extract/tracker-extract.h>
#include <libtracker-sparql/tracker-sparql.h>
-static void extract_mockup (const gchar *uri,
- TrackerSparqlBuilder *preupdate,
- TrackerSparqlBuilder *metadata);
-
-static TrackerExtractData data[] = {
- /* TODO: Insert mime types and functions here. */
- { "audio/mpeg", extract_mockup },
- { "audio/x-mp3", extract_mockup },
- { NULL, NULL }
-};
-
-static void
-extract_mockup (const gchar *uri,
- TrackerSparqlBuilder *preupdate,
- TrackerSparqlBuilder *metadata)
+G_MODULE_EXPORT gboolean
+tracker_extract_get_metadata (const gchar *uri,
+ const gchar *mimetype,
+ TrackerSparqlBuilder *preupdate,
+ TrackerSparqlBuilder *metadata)
{
+ /* NOTE: This function has to exist, tracker-extract checks
+ * the symbole table for this function and if it doesn't
+ * exist, the module is not loaded to be used as an extractor.
+ */
+
/* File information */
FILE *f;
GFileInfo *info;
@@ -105,7 +100,7 @@ extract_mockup (const gchar *uri,
*/
if (size < 64) {
g_free (filename);
- return;
+ return FALSE;
}
/* TODO: Open file */
@@ -113,7 +108,7 @@ extract_mockup (const gchar *uri,
if (!f) {
g_free (filename);
- return;
+ return FALSE;
}
/* TODO: Get data from file.
@@ -335,14 +330,6 @@ extract_mockup (const gchar *uri,
g_free (composer);
g_free (performer);
g_free (filename);
-}
-TrackerExtractData *
-tracker_extract_get_data (void)
-{
- /* NOTE: This function has to exist, tracker-extract checks
- * the symbole table for this function and if it doesn't
- * exist, the module is not loaded to be used as an extractor.
- */
- return data;
+ return TRUE;
}