Class: Dakwak::Api::Wrapper

Inherits:
Object
  • Object
show all
Includes:
HTTParty
Defined in:
lib/dakwak-api.rb

Instance Method Summary collapse

Constructor Details

#initialize(apikey) ⇒ Wrapper

Returns a new instance of Wrapper.

Raises:

  • (ArgumentError)


11
12
13
14
# File 'lib/dakwak-api.rb', line 11

def initialize(apikey)
  raise ArgumentError, "apikey must be a non-empty string" unless is_non_empty_string(apikey)
  @apikey = apikey
end

Instance Method Details

#get_translation(phrase, lang) ⇒ Object

Raises:

  • (ArgumentError)


23
24
25
26
27
28
# File 'lib/dakwak-api.rb', line 23

def get_translation(phrase, lang)
  raise ArgumentError, "phrase must be a non-empty string" unless is_non_empty_string(phrase)
  raise ArgumentError, "lang must be a non-empty string" unless is_non_empty_string(lang)
  url = "/get_translation.json?apikey=#{@apikey}&phrase=#{phrase}&lang=#{lang}"
  return MultiJson.load(self.class.post(url).body)
end

#index_pages(pages) ⇒ Object

Raises:

  • (ArgumentError)


38
39
40
41
42
43
# File 'lib/dakwak-api.rb', line 38

def index_pages(pages)
  raise ArgumentError, "pages must be a non-empty array" unless is_non_empty_array(pages)
  url = "/index_pages.json?apikey=#{@apikey}"
  pages.each { |page| url << "&pages[]=#{page}" }
  return MultiJson.load(self.class.post(url).body)
end

#search(phrase, lang) ⇒ Object

Raises:

  • (ArgumentError)


16
17
18
19
20
21
# File 'lib/dakwak-api.rb', line 16

def search(phrase, lang)
  raise ArgumentError, "phrase must be a non-empty string" unless is_non_empty_string(phrase)
  raise ArgumentError, "lang must be a non-empty string" unless is_non_empty_string(lang)
  url = "/search.json?apikey=#{@apikey}&phrase=#{phrase}&lang=#{lang}"
  return MultiJson.load(self.class.post(url).body)
end

#translate(phrases, lang, callback_url = "") ⇒ Object

Raises:

  • (ArgumentError)


30
31
32
33
34
35
36
# File 'lib/dakwak-api.rb', line 30

def translate(phrases, lang, callback_url="")
  raise ArgumentError, "phrases must be a non-empty array" unless is_non_empty_array(phrases)
  raise ArgumentError, "lang must be a non-empty string" unless is_non_empty_string(lang)
  url = "/translate.json?apikey=#{@apikey}&lang=#{lang}&callback_url=#{callback_url}"
  phrases.each { |phrase| url << "&phrases[]=#{phrase}" }
  return MultiJson.load(self.class.post(url).body)
end