Class: PgEventstore::Web::Subscriptions::SubscriptionsToSetAssociation
- Inherits:
-
Object
- Object
- PgEventstore::Web::Subscriptions::SubscriptionsToSetAssociation
- Defined in:
- lib/pg_eventstore/web/subscriptions/subscriptions_to_set_association.rb
Instance Attribute Summary collapse
-
#subscriptions ⇒ Object
Returns the value of attribute subscriptions.
-
#subscriptions_set ⇒ Object
Returns the value of attribute subscriptions_set.
Instance Method Summary collapse
-
#association ⇒ Hash{PgEventstore::SubscriptionsSet => Array<PgEventstore::Subscription>}
rubocop:disable Lint/RedundantWithObject,Lint/UnexpectedBlockArity.
-
#initialize(subscriptions_set:, subscriptions:) ⇒ SubscriptionsToSetAssociation
constructor
A new instance of SubscriptionsToSetAssociation.
Constructor Details
#initialize(subscriptions_set:, subscriptions:) ⇒ SubscriptionsToSetAssociation
16 17 18 19 |
# File 'lib/pg_eventstore/web/subscriptions/subscriptions_to_set_association.rb', line 16 def initialize(subscriptions_set:, subscriptions:) @subscriptions_set = subscriptions_set @subscriptions = subscriptions end |
Instance Attribute Details
#subscriptions ⇒ Object
Returns the value of attribute subscriptions.
12 13 14 |
# File 'lib/pg_eventstore/web/subscriptions/subscriptions_to_set_association.rb', line 12 def subscriptions @subscriptions end |
#subscriptions_set ⇒ Object
Returns the value of attribute subscriptions_set.
9 10 11 |
# File 'lib/pg_eventstore/web/subscriptions/subscriptions_to_set_association.rb', line 9 def subscriptions_set @subscriptions_set end |
Instance Method Details
#association ⇒ Hash{PgEventstore::SubscriptionsSet => Array<PgEventstore::Subscription>}
rubocop:disable Lint/RedundantWithObject,Lint/UnexpectedBlockArity
23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/pg_eventstore/web/subscriptions/subscriptions_to_set_association.rb', line 23 def association @association ||= begin association = subscriptions.group_by do |subscription| set = subscriptions_set.find { |set| set.id == subscription.locked_by } set || PgEventstore::SubscriptionsSet.new end (subscriptions_set - association.keys).each_with_object(association) do |subscriptions_set| association[subscriptions_set] = [] end end end |