class ElasticSearch::ActionListener

Public Class Methods

new() click to toggle source
# File lib/jruby-elasticsearch/actionlistener.rb, line 7
def initialize
  @failure_callbacks = []
  @success_callbacks = []
end

Public Instance Methods

on(what, &block) click to toggle source

Helper for registering callbacks. 'what' should be either :failure or :success

You can register multiple callbacks if you wish. Callbacks are invoked in order of addition.

# File lib/jruby-elasticsearch/actionlistener.rb, line 17
def on(what, &block)
  case what
  when :failure
    @failure_callbacks << block
  when :success
    @success_callbacks << block
  else
    raise "Unknown event '#{what}' for #{self.class.name}"
  end
  return self
end
onFailure(exception) click to toggle source

Conforming to Interface org.elasticsearch.action.ActionListener

# File lib/jruby-elasticsearch/actionlistener.rb, line 30
def onFailure(exception)
  if !@failure_callbacks.empty?
    @failure_callbacks.each { |c| c.call(exception) }
  else
    # Default is no failure callbacks
    raise exception
  end
end
onResponse(response) click to toggle source

Conforming to Interface org.elasticsearch.action.ActionListener

# File lib/jruby-elasticsearch/actionlistener.rb, line 40
def onResponse(response)
  if !@success_callbacks.empty?
    @success_callbacks.each { |c| c.call(response) }
  else
    # Default if no success callbacks
    puts "#{self.class.name}#onResponse => #{response.inspect} (#{self})"
  end
end