class Cassandra::Future::Error

@private

Public Class Methods

new(error) click to toggle source
   # File lib/cassandra/future.rb
48 def initialize(error)
49   raise ::ArgumentError, "error must be an exception, #{error.inspect} given" unless error.is_a?(::Exception)
50 
51   @error = error
52 end

Public Instance Methods

add_listener(listener) click to toggle source
   # File lib/cassandra/future.rb
85 def add_listener(listener)
86   unless listener.respond_to?(:success) && listener.respond_to?(:failure)
87     raise ::ArgumentError, 'listener must respond to both #success and #failure'
88   end
89 
90   begin
91     listener.failure(@error)
92   rescue
93     nil
94   end
95   self
96 end
fallback() { |error| ... } click to toggle source
    # File lib/cassandra/future.rb
103 def fallback
104   raise ::ArgumentError, 'no block given' unless block_given?
105 
106   begin
107     result = yield(@error)
108     result = Value.new(result) unless result.is_a?(Future)
109     result
110   rescue => e
111     Error.new(e)
112   end
113 end
get(timeout = nil) click to toggle source
   # File lib/cassandra/future.rb
54 def get(timeout = nil)
55   raise(@error, @error.message, @error.backtrace)
56 end
Also aliased as: join
join(timeout = nil)
Alias for: get
on_complete() { |nil, error| ... } click to toggle source
   # File lib/cassandra/future.rb
75 def on_complete
76   raise ::ArgumentError, 'no block given' unless block_given?
77   begin
78     yield(nil, @error)
79   rescue
80     nil
81   end
82   self
83 end
on_failure() { |error| ... } click to toggle source
   # File lib/cassandra/future.rb
65 def on_failure
66   raise ::ArgumentError, 'no block given' unless block_given?
67   begin
68     yield(@error)
69   rescue
70     nil
71   end
72   self
73 end
on_success() click to toggle source
   # File lib/cassandra/future.rb
60 def on_success
61   raise ::ArgumentError, 'no block given' unless block_given?
62   self
63 end
then() click to toggle source
    # File lib/cassandra/future.rb
 98 def then
 99   raise ::ArgumentError, 'no block given' unless block_given?
100   self
101 end