25 #ifndef DRIVER_H_INCLUDED
26 #define DRIVER_H_INCLUDED
82 gboolean (*
attach)(LogDriverPlugin *s, LogDriver *d);
83 void (*
detach)(LogDriverPlugin *s, LogDriver *d);
87 static inline gboolean
88 log_driver_plugin_attach(LogDriverPlugin *
self, LogDriver *d)
90 return self->attach(
self, d);
94 log_driver_plugin_detach(LogDriverPlugin *
self, LogDriver *d)
97 self->detach(
self, d);
101 log_driver_plugin_free(LogDriverPlugin *
self)
129 #define log_driver_get_plugin(self, T, name) \
131 T *plugin = (T *) log_driver_lookup_plugin(self, name); \
132 g_assert(plugin != NULL); \
166 LogQueue *(*acquire_queue)(LogDestDriver *s,
const gchar *persist_name, gint stats_level,
167 StatsClusterKeyBuilder *driver_sck_builder,
168 StatsClusterKeyBuilder *queue_sck_builder);
181 static inline LogQueue *
182 log_dest_driver_acquire_queue(LogDestDriver *
self,
const gchar *persist_name, gint stats_level,
183 StatsClusterKeyBuilder *driver_sck_builder,
184 StatsClusterKeyBuilder *queue_sck_builder)
188 q =
self->acquire_queue(
self, persist_name, stats_level, driver_sck_builder, queue_sck_builder);
191 self->queues = g_list_prepend(
self->queues, q);
198 log_dest_driver_release_queue(LogDestDriver *
self, LogQueue *q)
202 self->queues = g_list_remove(
self->queues, q);
205 self->release_queue(
self, q);
const gchar * name
Definition: debugger.c:265
LogDriverPlugin * log_driver_lookup_plugin(LogDriver *self, const gchar *name)
Definition: driver.c:68
gboolean log_src_driver_init_method(LogPipe *s)
Definition: driver.c:192
gboolean log_driver_deinit_method(LogPipe *s)
Definition: driver.c:114
void log_dest_driver_init_instance(LogDestDriver *self, GlobalConfig *cfg)
Definition: driver.c:426
gboolean log_driver_init_method(LogPipe *s)
Definition: driver.c:108
void log_driver_append(LogDriver *self, LogDriver *next)
void log_driver_plugin_free_method(LogDriverPlugin *self)
Definition: driver.c:36
void log_driver_plugin_init_instance(LogDriverPlugin *self, const gchar *name)
Definition: driver.c:42
void log_src_driver_free(LogPipe *s)
Definition: driver.c:259
void log_src_driver_init_instance(LogSrcDriver *self, GlobalConfig *cfg)
Definition: driver.c:248
gboolean log_src_driver_deinit_method(LogPipe *s)
Definition: driver.c:218
void log_src_driver_queue_method(LogPipe *s, LogMessage *msg, const LogPathOptions *path_options)
Definition: driver.c:231
void log_dest_driver_free(LogPipe *s)
Definition: driver.c:440
gboolean log_driver_add_plugin(LogDriver *self, LogDriverPlugin *plugin)
Definition: driver.c:52
gboolean log_dest_driver_deinit_method(LogPipe *s)
Definition: driver.c:412
gboolean log_dest_driver_init_method(LogPipe *s)
Definition: driver.c:366
void log_dest_driver_queue_method(LogPipe *s, LogMessage *msg, const LogPathOptions *path_options)
Definition: driver.c:327
#define self
Definition: rcptid.c:38
Definition: stats-counter.h:67
gint log_fifo_size
Definition: driver.h:175
gint throttle
Definition: driver.h:176
GList * queues
Definition: driver.h:173
LogDriver super
Definition: driver.h:164
StatsCounterItem * queued_global_messages
Definition: driver.h:177
void(* release_queue)(LogDestDriver *s, LogQueue *q)
Definition: driver.h:169
gboolean(* attach)(LogDriverPlugin *s, LogDriver *d)
Definition: driver.h:82
SignalSlotConnector * signal_connector
Definition: driver.h:74
void(* detach)(LogDriverPlugin *s, LogDriver *d)
Definition: driver.h:83
void(* free_fn)(LogDriverPlugin *s)
Definition: driver.h:84
const gchar * name
Definition: driver.h:75
LogPipe super
Definition: driver.h:111
GList * plugins
Definition: driver.h:119
gchar * id
Definition: driver.h:115
SignalSlotConnector * signal_slot_connector
Definition: driver.h:117
gchar * group
Definition: driver.h:114
StatsCounterItem * processed_group_messages
Definition: driver.h:121
gboolean optional
Definition: driver.h:113
StatsCounterItem * received_global_messages
Definition: driver.h:149
gint group_len
Definition: driver.h:148
LogDriver super
Definition: driver.h:147
GlobalConfig * cfg
Definition: test_batched_ack_tracker.c:34
LogMessage * msg
Definition: test_rename.c:35
LogPathOptions path_options
Definition: test_wildcard_file_reader.c:62