cis-language-translator 0.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/cis_language_translator.rb +41 -0
  2. metadata +46 -0
@@ -0,0 +1,41 @@
1
+ require 'net/http'
2
+ require 'rubygems'
3
+ require "uri"
4
+ require 'json'
5
+
6
+ class UnSupportedLanguage < RuntimeError
7
+
8
+ def initialize(message='')
9
+ @msg = "not supported."
10
+ end
11
+ end
12
+
13
+ class Translator
14
+
15
+
16
+ def translate( text, to, from='en' )
17
+
18
+ begin
19
+
20
+ uri = URI.parse("http://mymemory.translated.net/api/get")
21
+
22
+ response = Net::HTTP.post_form(uri, {"q" => text,"langpair"=>"#{from.to_s.downcase}|#{to.to_s.downcase}", "per_page" => "50"})
23
+
24
+ json_response_body = JSON.parse( response.body )
25
+
26
+ if json_response_body['responseStatus'] == 200
27
+ json_response_body['responseData']['translatedText']
28
+ else
29
+ puts json_response_body['responseDetails']
30
+ raise StandardError, response['responseDetails']
31
+ end
32
+ rescue UnSupportedLanguage
33
+ raise UnSupportedLanguage.new
34
+ rescue => err_msg
35
+ puts "#{err_msg}"
36
+ end
37
+
38
+ end
39
+
40
+ end
41
+
metadata ADDED
@@ -0,0 +1,46 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: cis-language-translator
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Akeel Qureshi
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-05-08 00:00:00.000000000 Z
13
+ dependencies: []
14
+ description: You can translate word or text from one language to another language
15
+ using mymemory.translated example Translator.new().translate( 'Hello', 'hi')
16
+ email: akeel.q@cisinlabs.com
17
+ executables: []
18
+ extensions: []
19
+ extra_rdoc_files: []
20
+ files:
21
+ - lib/cis_language_translator.rb
22
+ homepage: http://rubygems.org/gems/cis-language-translator
23
+ licenses: []
24
+ post_install_message:
25
+ rdoc_options: []
26
+ require_paths:
27
+ - lib
28
+ required_ruby_version: !ruby/object:Gem::Requirement
29
+ none: false
30
+ requirements:
31
+ - - ! '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ required_rubygems_version: !ruby/object:Gem::Requirement
35
+ none: false
36
+ requirements:
37
+ - - ! '>='
38
+ - !ruby/object:Gem::Version
39
+ version: '0'
40
+ requirements: []
41
+ rubyforge_project:
42
+ rubygems_version: 1.8.24
43
+ signing_key:
44
+ specification_version: 3
45
+ summary: translate word or text from one language to another
46
+ test_files: []