class Cassandra::Future::Value

@private

Public Class Methods

new(value) click to toggle source
    # File lib/cassandra/future.rb
118 def initialize(value)
119   @value = value
120 end

Public Instance Methods

add_listener(listener) click to toggle source
    # File lib/cassandra/future.rb
153 def add_listener(listener)
154   unless listener.respond_to?(:success) && listener.respond_to?(:failure)
155     raise ::ArgumentError, 'listener must respond to both #success and #failure'
156   end
157 
158   begin
159     listener.success(@value)
160   rescue
161     nil
162   end
163   self
164 end
fallback() click to toggle source
    # File lib/cassandra/future.rb
182 def fallback
183   raise ::ArgumentError, 'no block given' unless block_given?
184   self
185 end
get(timeout = nil) click to toggle source
    # File lib/cassandra/future.rb
122 def get(timeout = nil)
123   @value
124 end
Also aliased as: join
join(timeout = nil)
Alias for: get
on_complete() { |value, nil| ... } click to toggle source
    # File lib/cassandra/future.rb
143 def on_complete
144   raise ::ArgumentError, 'no block given' unless block_given?
145   begin
146     yield(@value, nil)
147   rescue
148     nil
149   end
150   self
151 end
on_failure() click to toggle source
    # File lib/cassandra/future.rb
138 def on_failure
139   raise ::ArgumentError, 'no block given' unless block_given?
140   self
141 end
on_success() { |value| ... } click to toggle source
    # File lib/cassandra/future.rb
128 def on_success
129   raise ::ArgumentError, 'no block given' unless block_given?
130   begin
131     yield(@value)
132   rescue
133     nil
134   end
135   self
136 end
then() { |value| ... } click to toggle source
    # File lib/cassandra/future.rb
170 def then
171   raise ::ArgumentError, 'no block given' unless block_given?
172 
173   begin
174     result = yield(@value)
175     result = Value.new(result) unless result.is_a?(Future)
176     result
177   rescue => e
178     Error.new(e)
179   end
180 end