class Yandex::Translator

Translator class

Attributes

api_key[R]

Public Class Methods

new(args = {}) click to toggle source
# File lib/yandex/translator.rb, line 21
def initialize(args = {})
  @api_key = args[:api_key]
end

Private Instance Methods

check_args(args) click to toggle source
# File lib/yandex/translator.rb, line 38
        def check_args(args)
  args.each do |arg_name, value|
    if value.nil? || !value.is_a?(String)
      raise YandexFailure, "Invalid argument '#{arg_name}', must be string"
    end
  end
end
check_response(response) click to toggle source
# File lib/yandex/translator.rb, line 31
        def check_response(response)
  if response.code != 200
    error_message = response.message.empty? ? response.code : response.message
    raise YandexFailure, error_message
  end
end
request(uri, args = {}) click to toggle source
# File lib/yandex/translator.rb, line 25
        def request(uri, args = {})
  response = self.class.post(uri, query: args.merge(key: api_key))
  check_response(response)
  response
end