Class: ZK::Group::MembershipSubscription
- Inherits:
-
Subscription::Base
- Object
- Subscription::Base
- ZK::Group::MembershipSubscription
- Includes:
- Logging
- Defined in:
- lib/zk-group/membership_subscription.rb
Instance Attribute Summary collapse
-
#opts ⇒ Object
readonly
Returns the value of attribute opts.
Instance Method Summary collapse
- #absolute_paths? ⇒ Boolean
-
#initialize(group, opts, block) ⇒ MembershipSubscription
constructor
A new instance of MembershipSubscription.
- #notify(last_members, current_members) ⇒ Object
Constructor Details
#initialize(group, opts, block) ⇒ MembershipSubscription
Returns a new instance of MembershipSubscription.
10 11 12 13 |
# File 'lib/zk-group/membership_subscription.rb', line 10 def initialize(group, opts, block) super(group, block) @opts = opts end |
Instance Attribute Details
#opts ⇒ Object (readonly)
Returns the value of attribute opts.
6 7 8 |
# File 'lib/zk-group/membership_subscription.rb', line 6 def opts @opts end |
Instance Method Details
#absolute_paths? ⇒ Boolean
28 29 30 |
# File 'lib/zk-group/membership_subscription.rb', line 28 def absolute_paths? opts[:absolute] end |
#notify(last_members, current_members) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/zk-group/membership_subscription.rb', line 15 def notify(last_members, current_members) # XXX: implement this in here for now, but for very large membership lists # it would likely be more efficient to implement this in the caller if absolute_paths? group_path = group.path last_members = last_members.map { |m| File.join(group_path, m) } current_members = current_members.map { |m| File.join(group_path, m) } end call(last_members, current_members) end |