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