Repository: qpid-proton Updated Branches: refs/heads/master 43384c15e -> e2be27cef
hide access to the selector Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/e2be27ce Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/e2be27ce Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/e2be27ce Branch: refs/heads/master Commit: e2be27cefe4140b08fc61ebaafdbd4ab383c2fe6 Parents: 43384c1 Author: Rafael Schloming <[email protected]> Authored: Tue Jan 20 11:14:21 2015 -0500 Committer: Rafael Schloming <[email protected]> Committed: Tue Jan 20 11:15:56 2015 -0500 ---------------------------------------------------------------------- proton-c/include/proton/reactor.h | 1 - proton-c/src/reactor/reactor.c | 11 ++++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/e2be27ce/proton-c/include/proton/reactor.h ---------------------------------------------------------------------- diff --git a/proton-c/include/proton/reactor.h b/proton-c/include/proton/reactor.h index d8eb0d1..e04ba6d 100644 --- a/proton-c/include/proton/reactor.h +++ b/proton-c/include/proton/reactor.h @@ -61,7 +61,6 @@ PN_EXTERN void pn_reactor_free(pn_reactor_t *reactor); PN_EXTERN pn_collector_t *pn_reactor_collector(pn_reactor_t *reactor); PN_EXTERN pn_handler_t *pn_reactor_handler(pn_reactor_t *reactor); PN_EXTERN pn_io_t *pn_reactor_io(pn_reactor_t *reactor); -PN_EXTERN pn_selector_t *pn_reactor_selector(pn_reactor_t *reactor); PN_EXTERN pn_list_t *pn_reactor_children(pn_reactor_t *reactor); PN_EXTERN pn_selectable_t *pn_reactor_selectable(pn_reactor_t *reactor); PN_EXTERN void pn_reactor_update(pn_reactor_t *reactor, pn_selectable_t *selectable); http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/e2be27ce/proton-c/src/reactor/reactor.c ---------------------------------------------------------------------- diff --git a/proton-c/src/reactor/reactor.c b/proton-c/src/reactor/reactor.c index 78119fc..bdee2de 100644 --- a/proton-c/src/reactor/reactor.c +++ b/proton-c/src/reactor/reactor.c @@ -49,6 +49,11 @@ struct pn_reactor_t { bool selected; }; +static void pn_reactor_mark(pn_reactor_t *reactor) { + assert(reactor); + reactor->now = pn_i_now(); +} + static void pn_dummy_dispatch(pn_handler_t *handler, pn_event_t *event) { /*pn_string_t *str = pn_string(NULL); pn_inspect(event, str); @@ -65,8 +70,8 @@ static void pn_reactor_initialize(pn_reactor_t *reactor) { reactor->children = pn_list(PN_OBJECT, 0); reactor->timer = pn_timer(reactor->collector); reactor->selectable = NULL; - reactor->now = pn_i_now(); reactor->selected = false; + pn_reactor_mark(reactor); } static void pn_reactor_finalize(pn_reactor_t *reactor) { @@ -314,6 +319,7 @@ pn_task_t *pn_reactor_schedule(pn_reactor_t *reactor, int delay, pn_handler_t *h void pn_reactor_process(pn_reactor_t *reactor) { assert(reactor); + pn_reactor_mark(reactor); pn_event_t *event; while ((event = pn_collector_peek(reactor->collector))) { pni_reactor_dispatch_pre(reactor, event); @@ -345,7 +351,6 @@ void pn_reactor_start(pn_reactor_t *reactor) { bool pn_reactor_work(pn_reactor_t *reactor, int timeout) { assert(reactor); - reactor->now = pn_i_now(); pn_reactor_process(reactor); if (pn_selector_size(reactor->selector) == 1) { @@ -368,7 +373,7 @@ bool pn_reactor_work(pn_reactor_t *reactor, int timeout) { pn_selector_select(reactor->selector, timeout); pn_selectable_t *sel; int events; - reactor->now = pn_i_now(); + pn_reactor_mark(reactor); while ((sel = pn_selector_next(reactor->selector, &events))) { if (events & PN_READABLE) { pn_selectable_readable(sel); --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
