Module: Codebottle

Defined in:
lib/codebottle.rb,
lib/codebottle/version.rb

Defined Under Namespace

Classes: CodebottleError

Constant Summary collapse

VERSION =
"0.2.0"

Class Method Summary collapse

Class Method Details

.browse(**kwargs) ⇒ Object



46
47
48
# File 'lib/codebottle.rb', line 46

def self.browse(**kwargs)
  return query(@api_browse_url, kwargs)
end

.get(**kwargs) ⇒ Object



42
43
44
# File 'lib/codebottle.rb', line 42

def self.get(**kwargs)
  return query(@api_get_snippet_url, kwargs)
end

.getcodelanguages(**kwargs) ⇒ Object



58
59
60
# File 'lib/codebottle.rb', line 58

def self.getcodelanguages(**kwargs)
  return query(@api_getcodelanguages_url, kwargs)
end

.getcodetypes(**kwargs) ⇒ Object



62
63
64
# File 'lib/codebottle.rb', line 62

def self.getcodetypes(**kwargs)
  return query(@api_getcodetypes_url, kwargs)
end

.getprofile(**kwargs) ⇒ Object



54
55
56
# File 'lib/codebottle.rb', line 54

def self.getprofile(**kwargs)
  return query(@api_getprofile_url, kwargs)
end

.query(url, args) ⇒ Object



22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/codebottle.rb', line 22

def self.query(url, args)
  params = URI.encode_www_form(args)
  uri = URI.parse("#{url}?#{params}")
  http = Net::HTTP.new(uri.host, uri.port)
  http.use_ssl = true

  request = Net::HTTP::Get.new(uri.request_uri)

  response = http.request(request)
  result = OpenStruct.new(JSON.parse(response.body))
  if result.error.length > 0
    raise CodebottleError, result.error
  end
  return result
end

.search(**kwargs) ⇒ Object



38
39
40
# File 'lib/codebottle.rb', line 38

def self.search(**kwargs)
  return query(@api_search_url, kwargs)
end

.verifysecure(**kwargs) ⇒ Object



50
51
52
# File 'lib/codebottle.rb', line 50

def self.verifysecure(**kwargs)
  return query(@api_verifysecure_url, kwargs)
end