Top | ![]() |
![]() |
![]() |
![]() |
EDBusServerExitCode | e_dbus_server_run () |
void | e_dbus_server_quit () |
void | e_dbus_server_hold () |
void | e_dbus_server_release () |
void | e_dbus_server_load_modules () |
EDBusServerExitCode e_dbus_server_run (EDBusServer *server
,gboolean wait_for_client
);
Emits the “run” signal.
By default the server
will start its main loop and attempt to acquire
its well-known session bus name. If the server
's main loop is already
running, the function will immediately return E_DBUS_SERVER_EXIT_NONE.
Otherwise the function blocks until e_dbus_server_quit()
is called.
If wait_for_client
is TRUE
, the server
will continue running until
the first client connection is made instead of quitting on its own if
no client connection is made within the first few seconds.
Since: 3.4
void e_dbus_server_quit (EDBusServer *server
,EDBusServerExitCode code
);
Emits the “quit” signal with the given code
.
By default the server
will quit its main loop and cause
e_dbus_server_run()
to return code
.
Since: 3.4
void
e_dbus_server_hold (EDBusServer *server
);
Increases the use count of server
.
Use this function to indicate that the server has a reason to continue
to run. To cancel the hold, call e_dbus_server_release()
.
Since: 3.4
void
e_dbus_server_release (EDBusServer *server
);
Decreates the use count of server
.
When the use count reaches zero, the server will stop running.
Never call this function except to cancel the effect of a previous call
to e_dbus_server_hold()
.
Since: 3.4
void
e_dbus_server_load_modules (EDBusServer *server
);
This function should be called once during server
initialization to
load all available library modules to extend the server
's functionality.
Since: 3.4
struct EDBusServer { GObject parent; EDBusServerPrivate *priv; };
Contains only private data that should be read and manipulated using the functions below.
Since: 3.4
struct EDBusServerClass { GObjectClass parent_class; const gchar *bus_name; const gchar *module_directory; /* Signals */ void (*bus_acquired) (EDBusServer *server, GDBusConnection *connection); void (*bus_name_acquired) (EDBusServer *server, GDBusConnection *connection); void (*bus_name_lost) (EDBusServer *server, GDBusConnection *connection); EDBusServerExitCode (*run_server) (EDBusServer *server); void (*quit_server) (EDBusServer *server, EDBusServerExitCode code); gpointer reserved[14]; };