Module: Artery::Subscriptions::ClassMethods
- Defined in:
- lib/artery/subscriptions.rb
Instance Method Summary collapse
- #add_subscription(subscription) ⇒ Object
- #clear_synchronizing_subscriptions! ⇒ Object
- #subscriptions_on(*services) ⇒ Object
- #synchronizing_subscriptions ⇒ Object
Instance Method Details
#add_subscription(subscription) ⇒ Object
23 24 25 26 27 |
# File 'lib/artery/subscriptions.rb', line 23 def add_subscription(subscription) @subscriptions ||= {} @subscriptions[subscription.uri] ||= [] @subscriptions[subscription.uri] << subscription end |
#clear_synchronizing_subscriptions! ⇒ Object
33 34 35 36 37 38 39 |
# File 'lib/artery/subscriptions.rb', line 33 def clear_synchronizing_subscriptions! Artery.synchronizing_subscriptions.dup.each do |s| Artery.logger.warn "<#{s.subscriber}> [#{s.uri}] is still synchronizing, clearing.." s.synchronization_in_progress!(false) end end |
#subscriptions_on(*services) ⇒ Object
17 18 19 20 21 |
# File 'lib/artery/subscriptions.rb', line 17 def subscriptions_on(*services) services = services.flatten.map(&:to_sym) subscriptions.slice(*subscriptions.keys.select { |uri| services.include?(uri.service) }) end |
#synchronizing_subscriptions ⇒ Object
29 30 31 |
# File 'lib/artery/subscriptions.rb', line 29 def synchronizing_subscriptions @synchronizing_subscriptions ||= [] end |