Class: Translator

Inherits:
Object
  • Object
show all
Defined in:
lib/cis_language_translator.rb

Instance Method Summary collapse

Instance Method Details

#translate(text, to, from = 'en') ⇒ Object



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/cis_language_translator.rb', line 16

def translate( text, to, from='en' )

  begin

    uri = URI.parse("http://mymemory.translated.net/api/get")

    response = Net::HTTP.post_form(uri, {"q" => text,"langpair"=>"#{from.to_s.downcase}|#{to.to_s.downcase}", "per_page" => "50"})

    json_response_body = JSON.parse( response.body )

    if json_response_body['responseStatus'] == 200
      json_response_body['responseData']['translatedText']
    else
      puts json_response_body['responseDetails']
      raise StandardError, response['responseDetails']
    end
  rescue UnSupportedLanguage
    raise UnSupportedLanguage.new
  rescue => err_msg
    puts "#{err_msg}"
  end

end