aboutsummaryrefslogtreecommitdiffstats
path: root/camel/camel-session.c
diff options
context:
space:
mode:
Diffstat (limited to 'camel/camel-session.c')
-rw-r--r--camel/camel-session.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/camel/camel-session.c b/camel/camel-session.c
index a6e308693f..5dbd19d963 100644
--- a/camel/camel-session.c
+++ b/camel/camel-session.c
@@ -81,6 +81,7 @@ static CamelProvider vee_provider = {
static void
camel_session_init (CamelSession *session)
{
+ session->online = TRUE;
session->modules = camel_provider_init ();
session->providers = g_hash_table_new (g_strcase_hash, g_strcase_equal);
session->priv = g_malloc0(sizeof(*session->priv));
@@ -640,3 +641,29 @@ camel_session_remove_timeout (CamelSession *session, guint handle)
return CS_CLASS (session)->remove_timeout (session, handle);
}
+
+
+/**
+ * camel_session_is_online:
+ * @session: the session.
+ *
+ * Return value: whether or not @session is online.
+ **/
+gboolean
+camel_session_is_online (CamelSession *session)
+{
+ return session->online;
+}
+
+/**
+ * camel_session_set_online:
+ * @session: the session
+ * @online: whether or not the session should be online
+ *
+ * Sets the online status of @session to @online.
+ **/
+void
+camel_session_set_online (CamelSession *session, gboolean online)
+{
+ session->online = online;
+}