Module: ActionSubscriber
- Defined in:
- lib/action_subscriber.rb,
lib/action_subscriber/dsl.rb,
lib/action_subscriber/uri.rb,
lib/action_subscriber/base.rb,
lib/action_subscriber/babou.rb,
lib/action_subscriber/route.rb,
lib/action_subscriber/rspec.rb,
lib/action_subscriber/router.rb,
lib/action_subscriber/logging.rb,
lib/action_subscriber/preload.rb,
lib/action_subscriber/railtie.rb,
lib/action_subscriber/version.rb,
lib/action_subscriber/route_set.rb,
lib/action_subscriber/middleware.rb,
lib/action_subscriber/subscribable.rb,
lib/action_subscriber/configuration.rb,
lib/action_subscriber/message_retry.rb,
lib/action_subscriber/middleware/env.rb,
lib/action_subscriber/default_routing.rb,
lib/action_subscriber/bunny/subscriber.rb,
lib/action_subscriber/middleware/router.rb,
lib/action_subscriber/middleware/runner.rb,
lib/action_subscriber/rabbit_connection.rb,
lib/action_subscriber/middleware/decoder.rb,
lib/action_subscriber/march_hare/subscriber.rb,
lib/action_subscriber/middleware/error_handler.rb,
lib/action_subscriber/middleware/active_record/query_cache.rb,
lib/action_subscriber/middleware/active_record/connection_management.rb
Defined Under Namespace
Modules: Babou, Bunny, DSL, DefaultRouting, Logging, MarchHare, MessageRetry, Middleware, RSpec, RabbitConnection, Subscribable
Classes: Base, Configuration, Railtie, Route, RouteSet, Router, URI
Constant Summary
collapse
- VERSION =
"4.5.1"
Class Method Summary
collapse
Class Method Details
.configuration ⇒ Object
Also known as:
config
37
38
39
|
# File 'lib/action_subscriber.rb', line 37
def self.configure
yield(configuration) if block_given?
end
|
.draw_routes(&block) ⇒ Object
41
42
43
44
45
46
47
48
|
# File 'lib/action_subscriber.rb', line 41
def self.draw_routes(&block)
fail "No block provided to ActionSubscriber.draw_routes" unless block_given?
@route_set = nil
@draw_routes_block = block
end
|
.print_subscriptions ⇒ Object
50
51
52
53
|
# File 'lib/action_subscriber.rb', line 50
def self.print_subscriptions
logger.info configuration.inspect
route_set.print_subscriptions
end
|
.print_threadpool_stats ⇒ Object
55
56
57
|
# File 'lib/action_subscriber.rb', line 55
def self.print_threadpool_stats
route_set.print_threadpool_stats
end
|
.setup_default_connection! ⇒ Object
.setup_subscriptions! ⇒ Object
63
64
65
|
# File 'lib/action_subscriber.rb', line 63
def self.setup_subscriptions!
route_set.setup_subscriptions!
end
|
.start_subscribers! ⇒ Object
67
68
69
|
# File 'lib/action_subscriber.rb', line 67
def self.start_subscribers!
route_set.start_subscribers!
end
|
.stop_subscribers!(timeout = nil) ⇒ Object
71
72
73
74
75
76
|
# File 'lib/action_subscriber.rb', line 71
def self.stop_subscribers!(timeout = nil)
timeout ||= ::ActionSubscriber.configuration.seconds_to_wait_for_graceful_shutdown
route_set.cancel_consumers!
logger.info "waiting for threadpools to empty (maximum wait of #{timeout}sec)"
route_set.wait_to_finish_with_timeout(timeout)
end
|