[virt-tools-list] [libosinfo] Add osinfo_loader_process_default_path()
Zeeshan Ali
zeeshanak at gnome.org
Wed Jun 22 23:08:01 UTC 2011
From: "Zeeshan Ali (Khattak)" <zeeshanak at gnome.org>
Add a method that enables applications to load the metadata osinfo
provides without having to specify any paths.
---
docs/reference/Libosinfo-sections.txt | 1 +
osinfo/Makefile.am | 3 ++-
osinfo/libosinfo.syms | 1 +
osinfo/osinfo_loader.c | 17 +++++++++++++++++
osinfo/osinfo_loader.h | 1 +
5 files changed, 22 insertions(+), 1 deletions(-)
diff --git a/docs/reference/Libosinfo-sections.txt b/docs/reference/Libosinfo-sections.txt
index 6c3ce95..f5fc2e4 100644
--- a/docs/reference/Libosinfo-sections.txt
+++ b/docs/reference/Libosinfo-sections.txt
@@ -70,6 +70,7 @@ osinfo_loader_new
osinfo_loader_get_db
osinfo_loader_process_path
osinfo_loader_process_uri
+osinfo_loader_process_default_path
<SUBSECTION Standard>
OSINFO_LOADER
OSINFO_IS_LOADER
diff --git a/osinfo/Makefile.am b/osinfo/Makefile.am
index 6b94e27..6cb824c 100644
--- a/osinfo/Makefile.am
+++ b/osinfo/Makefile.am
@@ -27,7 +27,8 @@ libosinfo_1_0_la_CFLAGS = \
-I$(top_srcdir) \
$(LIBXML_CFLAGS) \
$(GOBJECT_CFLAGS) \
- $(GIO_CFLAGS)
+ $(GIO_CFLAGS) \
+ -DDATA_DIR='"$(pkgdatadir)/data/oses"'
libosinfo_1_0_la_LDFLAGS = \
$(COVERAGE_LDFLAGS) \
diff --git a/osinfo/libosinfo.syms b/osinfo/libosinfo.syms
index 2ea5b55..80579b0 100644
--- a/osinfo/libosinfo.syms
+++ b/osinfo/libosinfo.syms
@@ -119,6 +119,7 @@ LIBOSINFO_0.0.1 {
osinfo_loader_get_type;
osinfo_loader_process_path;
osinfo_loader_process_uri;
+ osinfo_loader_process_default_path;
osinfo_loader_get_db;
osinfo_deployment_new;
osinfo_deployment_get_type;
diff --git a/osinfo/osinfo_loader.c b/osinfo/osinfo_loader.c
index ea93a63..fa2cc2d 100644
--- a/osinfo/osinfo_loader.c
+++ b/osinfo/osinfo_loader.c
@@ -964,6 +964,23 @@ void osinfo_loader_process_uri(OsinfoLoader *loader,
g_object_unref(file);
}
+/**
+ * osinfo_loader_process_default_path:
+ * @loader: the loader object
+ * @err: (out): filled with error information upon failure
+ *
+ * Loads data from the default path.
+ */
+void osinfo_loader_process_default_path(OsinfoLoader *loader,
+ GError **err)
+{
+ GFile *file = g_file_new_for_path(DATA_DIR);
+ osinfo_loader_process_file(loader,
+ file,
+ err);
+ g_object_unref(file);
+}
+
/*
* Local variables:
* indent-tabs-mode: nil
diff --git a/osinfo/osinfo_loader.h b/osinfo/osinfo_loader.h
index cc92495..e63cb5b 100644
--- a/osinfo/osinfo_loader.h
+++ b/osinfo/osinfo_loader.h
@@ -71,6 +71,7 @@ OsinfoDb *osinfo_loader_get_db(OsinfoLoader *loader);
void osinfo_loader_process_path(OsinfoLoader *loader, const gchar *path, GError **err);
void osinfo_loader_process_uri(OsinfoLoader *loader, const gchar *uri, GError **err);
+void osinfo_loader_process_default_path(OsinfoLoader *loader, GError **err);
#endif /* __OSINFO_LOADER_H__ */
--
1.7.5.4
More information about the virt-tools-list
mailing list