| 2366 | } |
| 2367 | |
| 2368 | void application_impl::subscribe_with_debounce(service_t _service, instance_t _instance, eventgroup_t _eventgroup, major_version_t _major, |
| 2369 | event_t _event, const debounce_filter_t& _filter) { |
| 2370 | |
| 2371 | if (routing_) { |
| 2372 | bool send_back_cached(false); |
| 2373 | bool send_back_cached_group(false); |
| 2374 | check_send_back_cached_event(_service, _instance, _event, _eventgroup, &send_back_cached, &send_back_cached_group); |
| 2375 | |
| 2376 | if (send_back_cached) { |
| 2377 | send_back_cached_event(_service, _instance, _event); |
| 2378 | } else if (send_back_cached_group) { |
| 2379 | send_back_cached_eventgroup(_service, _instance, _eventgroup); |
| 2380 | } |
| 2381 | |
| 2382 | if (check_subscription_state(_service, _instance, _eventgroup, _event)) { |
| 2383 | routing_->subscribe(client_, _service, _instance, _eventgroup, _major, _event, |
| 2384 | std::make_shared<debounce_filter_impl_t>(_filter)); |
| 2385 | } |
| 2386 | } |
| 2387 | } |
| 2388 | |
| 2389 | bool application_impl::is_local_endpoint(const boost::asio::ip::address& _unicast, port_t _port) { |
| 2390 | |