aboutsummaryrefslogtreecommitdiffstats
path: root/libemail-engine/e-mail-session.c
diff options
context:
space:
mode:
Diffstat (limited to 'libemail-engine/e-mail-session.c')
-rw-r--r--libemail-engine/e-mail-session.c21
1 files changed, 20 insertions, 1 deletions
diff --git a/libemail-engine/e-mail-session.c b/libemail-engine/e-mail-session.c
index 0c594ac476..7cffcc514f 100644
--- a/libemail-engine/e-mail-session.c
+++ b/libemail-engine/e-mail-session.c
@@ -53,7 +53,6 @@
#include "camel-sasl-xoauth2.h"
#include "e-mail-authenticator.h"
-#include "e-mail-junk-filter.h"
#include "e-mail-session.h"
#include "e-mail-folder-utils.h"
#include "e-mail-utils.h"
@@ -2149,6 +2148,26 @@ e_mail_session_get_available_junk_filters (EMailSession *session)
return g_list_sort (list, (GCompareFunc) e_mail_junk_filter_compare);
}
+/**
+ * e_mail_session_get_junk_filter_by_name:
+ * @session: an #EMailSession
+ * @filter_name: a junk filter name
+ *
+ * Looks up an #EMailJunkFilter extension by its filter name, as specified
+ * in its class structure. If no match is found, the function returns %NULL.
+ *
+ * Returns: an #EMailJunkFilter, or %NULL
+ **/
+EMailJunkFilter *
+e_mail_session_get_junk_filter_by_name (EMailSession *session,
+ const gchar *filter_name)
+{
+ g_return_val_if_fail (E_IS_MAIL_SESSION (session), NULL);
+ g_return_val_if_fail (filter_name != NULL, NULL);
+
+ return g_hash_table_lookup (session->priv->junk_filters, filter_name);
+}
+
static void
mail_session_get_inbox_thread (GSimpleAsyncResult *simple,
EMailSession *session,