Class: FanyiAPI::Strategies::Youdao

Inherits:
Default
  • Object
show all
Defined in:
lib/fanyi_api/strategies/youdao.rb

Instance Method Summary collapse

Constructor Details

#initialize(params = {}) ⇒ Youdao

Returns a new instance of Youdao.



6
7
8
9
10
11
12
13
# File 'lib/fanyi_api/strategies/youdao.rb', line 6

def initialize(params={})
  @options = {
    host:       "http://fanyi.youdao.com/openapi.do",
    version:    "1.1",
    doctype:    "json",
    type:       "data"
  }.merge(params)
end

Instance Method Details

#api_urlObject



15
16
17
# File 'lib/fanyi_api/strategies/youdao.rb', line 15

def api_url
  @api_url ||= "#{@options[:host]}?type=#{@options[:type]}&doctype=#{@options[:doctype]}&version=#{@options[:version]}"
end

#query_keyObject



26
27
28
# File 'lib/fanyi_api/strategies/youdao.rb', line 26

def query_key
  :q
end

#request_urlObject

Raises:



19
20
21
22
23
24
# File 'lib/fanyi_api/strategies/youdao.rb', line 19

def request_url
  raise InvalidKey, "Key is not provided!" \
    if @options[:keyfrom].nil? || @options[:key].nil?

  @request_url ||= api_url + "&keyfrom=" + @options[:keyfrom] + "&key=" + @options[:key]
end