summaryrefslogtreecommitdiffstats
path: root/include/afb
diff options
context:
space:
mode:
authorFulup Ar Foll <fulup@iot.bzh>2016-05-29 23:41:40 +0200
committerFulup Ar Foll <fulup@iot.bzh>2016-05-29 23:41:40 +0200
commit26bca5f8a8c6f9403a84945a5cd914b6da948efd (patch)
tree88469dc3eaa063b3d773d5221fe3cb67e9b04cc0 /include/afb
parent706bc5c7e0db5f7a782f80ab99fa8fe005289f8d (diff)
parent2ea7ffb3abc8c62cfd5235ba4dbcd040f0235d69 (diff)
Merge branch 'master' of https://github.com/iotbzh/afb-daemon
Diffstat (limited to 'include/afb')
-rw-r--r--include/afb/afb-event-sender-itf.h35
-rw-r--r--include/afb/afb-plugin.h23
2 files changed, 8 insertions, 50 deletions
diff --git a/include/afb/afb-event-sender-itf.h b/include/afb/afb-event-sender-itf.h
deleted file mode 100644
index ad354319..00000000
--- a/include/afb/afb-event-sender-itf.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright (C) 2016 "IoT.bzh"
- * Author: José Bollo <jose.bollo@iot.bzh>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#pragma once
-
-struct json_object;
-
-struct afb_event_sender_itf {
- void (*push)(void *event_sender, const char *name, struct json_object *object);
-};
-
-struct afb_event_sender {
- const struct afb_event_sender_itf *itf;
- void *closure;
-};
-
-static inline void afb_event_sender_push(struct afb_event_sender mgr, const char *name, struct json_object *object)
-{
- return mgr.itf->push(mgr.closure, name, object);
-}
-
diff --git a/include/afb/afb-plugin.h b/include/afb/afb-plugin.h
index 2b065b08..1eb3475b 100644
--- a/include/afb/afb-plugin.h
+++ b/include/afb/afb-plugin.h
@@ -39,7 +39,6 @@
*/
#include <afb/afb-req-itf.h>
-#include <afb/afb-event-sender-itf.h>
/*
* Definition of the versions of the plugin.
@@ -141,10 +140,10 @@ struct sd_bus;
* Definition of the facilities provided by the daemon.
*/
struct afb_daemon_itf {
- struct afb_event_sender (*get_event_sender)(void *closure); /* get the event manager */
- struct sd_event *(*get_event_loop)(void *closure); /* get the common systemd's event loop */
- struct sd_bus *(*get_user_bus)(void *closure); /* get the common systemd's user d-bus */
- struct sd_bus *(*get_system_bus)(void *closure); /* get the common systemd's system d-bus */
+ void (*event_broadcast)(void *closure, const char *name, struct json_object *object); /* broadcasts evant 'name' with 'object' */
+ struct sd_event *(*get_event_loop)(void *closure); /* gets the common systemd's event loop */
+ struct sd_bus *(*get_user_bus)(void *closure); /* gets the common systemd's user d-bus */
+ struct sd_bus *(*get_system_bus)(void *closure); /* gets the common systemd's system d-bus */
void (*vverbose)(void*closure, int level, const char *file, int line, const char *fmt, va_list args);
};
@@ -173,15 +172,6 @@ struct AFB_interface
extern const struct AFB_plugin *pluginAfbV1Register (const struct AFB_interface *interface);
/*
- * Retrieves the event sender of AFB
- * 'daemon' MUST be the daemon given in interface when activating the plugin.
- */
-static inline struct afb_event_sender afb_daemon_get_event_sender(struct afb_daemon daemon)
-{
- return daemon.itf->get_event_sender(daemon.closure);
-}
-
-/*
* Retrieves the common systemd's event loop of AFB
* 'daemon' MUST be the daemon given in interface when activating the plugin.
*/
@@ -219,7 +209,7 @@ static inline struct sd_bus *afb_daemon_get_system_bus(struct afb_daemon daemon)
*/
static inline void afb_daemon_broadcast_event(struct afb_daemon daemon, const char *name, struct json_object *object)
{
- return afb_event_sender_push(afb_daemon_get_event_sender(daemon), name, object);
+ return daemon.itf->event_broadcast(daemon.closure, name, object);
}
/*
@@ -237,6 +227,9 @@ static inline void afb_daemon_verbose(struct afb_daemon daemon, int level, const
va_end(args);
}
+/*
+ * Macros for logging messages
+ */
#if !defined(NO_PLUGIN_VERBOSE_MACRO)
# if !defined(NO_PLUGIN_FILE_LINE_INDICATION)
# define ERROR(itf,...) do{if(itf->verbosity>=0)afb_daemon_verbose(itf->daemon,3,__FILE__,__LINE__,__VA_ARGS__);}while(0)