1 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
3 * Copyright (C) 2008 Red Hat, Inc.
7 #define SOUP_LOGGER_H 1
9 #include <libsoup/soup-types.h>
13 #define SOUP_TYPE_LOGGER (soup_logger_get_type ())
14 #define SOUP_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SOUP_TYPE_LOGGER, SoupLogger))
15 #define SOUP_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SOUP_TYPE_LOGGER, SoupLoggerClass))
16 #define SOUP_IS_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SOUP_TYPE_LOGGER))
17 #define SOUP_IS_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((obj), SOUP_TYPE_LOGGER))
18 #define SOUP_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SOUP_TYPE_LOGGER, SoupLoggerClass))
22 SOUP_LOGGER_LOG_MINIMAL,
23 SOUP_LOGGER_LOG_HEADERS,
33 GObjectClass parent_class;
35 /* Padding for future expansion */
36 void (*_libsoup_reserved1) (void);
37 void (*_libsoup_reserved2) (void);
38 void (*_libsoup_reserved3) (void);
39 void (*_libsoup_reserved4) (void);
42 typedef SoupLoggerLogLevel (*SoupLoggerFilter) (SoupLogger *logger,
46 typedef void (*SoupLoggerPrinter) (SoupLogger *logger,
47 SoupLoggerLogLevel level,
52 GType soup_logger_get_type (void);
54 SoupLogger *soup_logger_new (SoupLoggerLogLevel level,
57 #ifndef LIBSOUP_DISABLE_DEPRECATED
58 SOUP_DEPRECATED_IN_2_24_FOR(soup_session_add_feature)
59 void soup_logger_attach (SoupLogger *logger,
60 SoupSession *session);
61 SOUP_DEPRECATED_IN_2_24_FOR(soup_session_remove_feature)
62 void soup_logger_detach (SoupLogger *logger,
63 SoupSession *session);
66 void soup_logger_set_request_filter (SoupLogger *logger,
67 SoupLoggerFilter request_filter,
69 GDestroyNotify destroy);
70 void soup_logger_set_response_filter (SoupLogger *logger,
71 SoupLoggerFilter response_filter,
73 GDestroyNotify destroy);
75 void soup_logger_set_printer (SoupLogger *logger,
76 SoupLoggerPrinter printer,
77 gpointer printer_data,
78 GDestroyNotify destroy);
82 #endif /* SOUP_LOGGER_H */