Module: Itranslate4

Defined in:
lib/itranslate4.rb

Defined Under Namespace

Classes: Configuration

Constant Summary collapse

SERVICE_URL =
'http://itranslate4.eu/api/'

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.configurationObject

Returns the value of attribute configuration.



7
8
9
# File 'lib/itranslate4.rb', line 7

def configuration
  @configuration
end

Class Method Details

.configure {|self.configuration| ... } ⇒ Object

Yields:



10
11
12
13
# File 'lib/itranslate4.rb', line 10

def self.configure
  self.configuration ||= Configuration.new
  yield(self.configuration)
end

.get_providersObject



48
49
50
# File 'lib/itranslate4.rb', line 48

def self.get_providers
	Itranslate4.send_request :get, "#{SERVICE_URL}/GetProviders?auth=#{Itranslate4.configuration.key}"
end

.get_routes(src, trg) ⇒ Object



43
44
45
46
# File 'lib/itranslate4.rb', line 43

def self.get_routes(src, trg)
	Itranslate4.send_request :get, "#{SERVICE_URL}/GetRoutes?auth=#{Itranslate4.configuration.key}",
	{src: src, trg:trg}.as_json
end

.languagesObject



39
40
41
# File 'lib/itranslate4.rb', line 39

def self.languages
	Itranslate4.send_request :get, "#{SERVICE_URL}/GetLanguages?auth=#{Itranslate4.configuration.key}"
end

.parse_response(response) ⇒ Object



30
31
32
# File 'lib/itranslate4.rb', line 30

def self.parse_response(response)
	{ code: response.code, body: response.body.empty? ? '' : JSON.parse(response.body, symbolize_names: true) }
end

.send_request(method, url, params = {}) ⇒ Object



23
24
25
26
27
28
# File 'lib/itranslate4.rb', line 23

def self.send_request(method, url, params={})
  response = RestClient::Request.execute(method: method, url: url, headers: {params: params})
  self.parse_response(response)
rescue => e
  self.parse_response(e.response)
end

.translate(src, trg, dat = '', rid = nil) ⇒ Object



34
35
36
37
# File 'lib/itranslate4.rb', line 34

def self.translate(src, trg, dat='',rid=nil)
	Itranslate4.send_request :get, "#{SERVICE_URL}/Translate?auth=#{Itranslate4.configuration.key}",
	{src: src, trg:trg, dat: dat, rid:rid}.as_json
end