aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTed Gould <ted@gould.cx>2010-01-19 17:20:21 -0600
committerTed Gould <ted@gould.cx>2010-01-19 17:20:21 -0600
commit08fef8dc585407e88d27da07a7c6fd726303a0dd (patch)
tree1283cd17274c69ea24bf2a7e8a66aa879d95d4f0
parent85394de1aa25fea66bbe30e3ceeafc754f2e8ff7 (diff)
downloadlibayatana-appindicator-08fef8dc585407e88d27da07a7c6fd726303a0dd.tar.gz
libayatana-appindicator-08fef8dc585407e88d27da07a7c6fd726303a0dd.tar.bz2
libayatana-appindicator-08fef8dc585407e88d27da07a7c6fd726303a0dd.zip
Adding a _new function for the appstore and using it. It now takes the lru file.
-rw-r--r--src/application-service-appstore.c13
-rw-r--r--src/application-service-appstore.h2
-rw-r--r--src/application-service.c3
3 files changed, 17 insertions, 1 deletions
diff --git a/src/application-service-appstore.c b/src/application-service-appstore.c
index d0b5570..2121a0d 100644
--- a/src/application-service-appstore.c
+++ b/src/application-service-appstore.c
@@ -52,6 +52,7 @@ typedef struct _ApplicationServiceAppstorePrivate ApplicationServiceAppstorePriv
struct _ApplicationServiceAppstorePrivate {
DBusGConnection * bus;
GList * applications;
+ AppLruFile * lrufile;
};
#define APP_STATUS_PASSIVE_STR "passive"
@@ -148,6 +149,7 @@ application_service_appstore_init (ApplicationServiceAppstore *self)
ApplicationServiceAppstorePrivate * priv = APPLICATION_SERVICE_APPSTORE_GET_PRIVATE(self);
priv->applications = NULL;
+ priv->lrufile = NULL;
GError * error = NULL;
priv->bus = dbus_g_bus_get(DBUS_BUS_STARTER, &error);
@@ -645,6 +647,17 @@ application_service_appstore_application_remove (ApplicationServiceAppstore * ap
return;
}
+/* Creates a basic appstore object and attaches the
+ LRU file object to it. */
+ApplicationServiceAppstore *
+application_service_appstore_new (AppLruFile * lrufile)
+{
+ ApplicationServiceAppstore * appstore = APPLICATION_SERVICE_APPSTORE(g_object_new(APPLICATION_SERVICE_APPSTORE_TYPE, NULL));
+ ApplicationServiceAppstorePrivate * priv = APPLICATION_SERVICE_APPSTORE_GET_PRIVATE(appstore);
+ priv->lrufile = lrufile;
+ return appstore;
+}
+
/* DBus Interface */
static gboolean
_application_service_server_get_applications (ApplicationServiceAppstore * appstore, GArray ** apps)
diff --git a/src/application-service-appstore.h b/src/application-service-appstore.h
index 6bd7a01..d2e0013 100644
--- a/src/application-service-appstore.h
+++ b/src/application-service-appstore.h
@@ -25,6 +25,7 @@ with this program. If not, see <http://www.gnu.org/licenses/>.
#include <glib.h>
#include <glib-object.h>
+#include "application-service-lru-file.h"
G_BEGIN_DECLS
@@ -50,6 +51,7 @@ struct _ApplicationServiceAppstore {
GObject parent;
};
+ApplicationServiceAppstore * application_service_appstore_new (AppLruFile * lrufile);
GType application_service_appstore_get_type (void);
void application_service_appstore_application_add (ApplicationServiceAppstore * appstore,
const gchar * dbus_name,
diff --git a/src/application-service.c b/src/application-service.c
index abb86ee..ffd042e 100644
--- a/src/application-service.c
+++ b/src/application-service.c
@@ -66,7 +66,7 @@ main (int argc, char ** argv)
lrufile = app_lru_file_new();
/* Building our app store */
- appstore = APPLICATION_SERVICE_APPSTORE(g_object_new(APPLICATION_SERVICE_APPSTORE_TYPE, NULL));
+ appstore = application_service_appstore_new(lrufile);
/* Adding a watcher for the Apps coming up */
watcher = application_service_watcher_new(appstore);
@@ -79,6 +79,7 @@ main (int argc, char ** argv)
g_object_unref(G_OBJECT(watcher));
g_object_unref(G_OBJECT(appstore));
g_object_unref(G_OBJECT(service));
+ g_object_unref(G_OBJECT(lrufile));
return 0;
}