Sha256: eab35dc1e7148623626f506ebc1c7e8f2ad10049c5e50aa58d0405ee686e12c4
Contents?: true
Size: 1.32 KB
Versions: 1
Compression:
Stored size: 1.32 KB
Contents
module Wordnik class Wordnik include Singleton include HTTParty attr_reader :api_key base_uri 'http://api.wordnik.com/api' def initialize(api_key = nil) @api_key = (api_key || File.read('.api-key').strip || '').dup self.class.default_params :api_key => @api_key end def api_key=(api_key) @api_key = api_key.dup end def lookup(word) do_request("word.json/#{word.downcase}") end def define(word, count = 100) do_request("word.json/#{word.downcase}/definitions", :count => count) end def frequency(word) do_request("word.json/#{word.downcase}/frequency") end def examples(word) do_request("word.json/#{word.downcase}/examples") end def autocomplete(word_fragment, count = 100) do_request("suggest.json/#{word_fragment.downcase}", :count => count) end def word_of_the_day do_request("wordoftheday.json") end def random(has_definition = true) do_request("words.json/randomWord", :hasDictionaryDef => has_definition) end protected def do_request(request, options = {}) handle_result(self.class.get("/#{request}", options)) end def handle_result(result) if result.is_a?(String) raise 'Error in result.' else result end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
wordnik-0.1.0 | lib/wordnik/wordnik.rb |