class Cucumber::WireSupport::RequestHandler

def execute(request_params = nil)

def execute(request_params = nil)
  @connection.call_remote(self, @message, request_params)
end

def handle_fail(params)

def handle_fail(params)
  raise @connection.exception(params)
end

def handle_success(params)

def handle_success(params)
end

def initialize(connection)

def initialize(connection)
  @connection = connection
  @message = underscore(self.class.name.split('::').last)
end

def underscore(camel_cased_word)

Props to Rails
def underscore(camel_cased_word)
  camel_cased_word.to_s.gsub(/::/, '/').
  gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2').
  gsub(/([a-z\d])([A-Z])/,'\1_\2').
  tr("-", "_").
  downcase
end