Back to index

libindicator  12.10.0
Functions | Variables
service-version-manager.c File Reference
#include <glib.h>
#include "libindicator/indicator-service-manager.h"
#include "service-version-values.h"

Go to the source code of this file.

Functions

gboolean timeout (gpointer data)
void connection_bad (IndicatorServiceManager *sm, gboolean connected, gpointer user_data)
void connection_good (IndicatorServiceManager *sm, gboolean connected, gpointer user_data)
int main (int argc, char **argv)

Variables

static GMainLoop * mainloop = NULL
static gboolean con_good = FALSE
static gboolean con_bad = FALSE

Function Documentation

void connection_bad ( IndicatorServiceManager *  sm,
gboolean  connected,
gpointer  user_data 
)

Definition at line 41 of file service-version-manager.c.

{
       if (!connected) return;
       g_debug("Connection From Bad!");
       con_bad = TRUE;
       return;
}

Here is the caller graph for this function:

void connection_good ( IndicatorServiceManager *  sm,
gboolean  connected,
gpointer  user_data 
)

Definition at line 50 of file service-version-manager.c.

{
       if (!connected) return;
       g_debug("Connection From Good.");
       con_good = TRUE;
       return;
}

Here is the caller graph for this function:

int main ( int  argc,
char **  argv 
)

Definition at line 59 of file service-version-manager.c.

{
       g_type_init();
       g_log_set_always_fatal(G_LOG_LEVEL_CRITICAL);
       g_print("Manager: DBUS_SESSION_BUS_ADDRESS = %s\n", g_getenv("DBUS_SESSION_BUS_ADDRESS"));

       IndicatorServiceManager * goodis = indicator_service_manager_new_version("org.ayatana.version.good", SERVICE_VERSION_GOOD);
       g_signal_connect(G_OBJECT(goodis), INDICATOR_SERVICE_MANAGER_SIGNAL_CONNECTION_CHANGE, G_CALLBACK(connection_good), NULL);

       IndicatorServiceManager * badis = indicator_service_manager_new_version("org.ayatana.version.bad", SERVICE_VERSION_GOOD);
       g_signal_connect(G_OBJECT(badis), INDICATOR_SERVICE_MANAGER_SIGNAL_CONNECTION_CHANGE, G_CALLBACK(connection_bad), NULL);

       g_timeout_add_seconds(1, timeout, NULL);

       mainloop = g_main_loop_new(NULL, FALSE);
       g_main_loop_run(mainloop);

       g_object_unref(goodis);
       g_object_unref(badis);

       g_debug("Quiting");
       if (con_good && !con_bad) {
              g_debug("Passed");
              return 0;
       }
       g_debug("Failed");
       return 1;
}

Here is the call graph for this function:

gboolean timeout ( gpointer  data)

Definition at line 33 of file service-version-manager.c.

{
       g_debug("Timeout.");
       g_main_loop_quit(mainloop);
       return FALSE;
}

Variable Documentation

gboolean con_bad = FALSE [static]

Definition at line 30 of file service-version-manager.c.

gboolean con_good = FALSE [static]

Definition at line 29 of file service-version-manager.c.

GMainLoop* mainloop = NULL [static]

Definition at line 28 of file service-version-manager.c.