anecdotally-api 0.1

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG.md ADDED
File without changes
data/README.md ADDED
@@ -0,0 +1,4 @@
1
+ anecdotally_ruby
2
+ ================
3
+
4
+ A ruby wrapper for the anecdotal.ly api
@@ -0,0 +1,27 @@
1
+ require 'json'
2
+ require 'HTTParty'
3
+
4
+ class API
5
+ include HTTParty
6
+ base_uri 'anecdotal.ly/api'
7
+
8
+ def initialize(apikey)
9
+ @apikey = apikey
10
+ end
11
+
12
+ def execute(endpoint, filter={})
13
+ #define the api extension we're going to call
14
+ endpoint = "/" + endpoint
15
+ #set the payload
16
+ filter[:apikey] = @apikey
17
+ options = {:query => filter }
18
+ #call the web service
19
+ response = self.class.get(endpoint, options)
20
+
21
+ if response["status"]=="success"
22
+ return response["response"]
23
+ else
24
+ return {}
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,8 @@
1
+ require_relative('base')
2
+ require_relative('../api')
3
+
4
+ class Anecdotes < Base
5
+ def initialize(api)
6
+ super(api, "anecdotes")
7
+ end
8
+ end
@@ -0,0 +1,23 @@
1
+
2
+ class Base
3
+ def initialize(api, endpoint)
4
+ @api = api
5
+ @endpoint = endpoint
6
+ end
7
+
8
+ def find_one()
9
+ @response = @api.execute(@endpoint, {:limit => 1}) || {}
10
+ end
11
+
12
+ def find_all()
13
+ @response = @api.execute(@endpoint) || {}
14
+ end
15
+
16
+ def find_by_id(_id)
17
+ @response = @api.execute(@endpoint, {:_id => _id}) || {}
18
+ end
19
+
20
+ def find(filter)
21
+ @response = @api.execute(@endpoint, filter) || {}
22
+ end
23
+ end
@@ -0,0 +1,8 @@
1
+ require_relative('base')
2
+ require_relative('../api')
3
+
4
+ class Programs < Base
5
+ def initialize(api)
6
+ super(api, "programs")
7
+ end
8
+ end
@@ -0,0 +1,8 @@
1
+ require_relative('base')
2
+ require_relative('../api')
3
+
4
+ class Users < Base
5
+ def initialize(api)
6
+ super(api, "users")
7
+ end
8
+ end
@@ -0,0 +1,25 @@
1
+ require_relative 'anecdotally/api'
2
+ require_relative 'anecdotally/query/anecdotes'
3
+ require_relative 'anecdotally/query/users'
4
+ require_relative 'anecdotally/query/programs'
5
+
6
+ class Anecdotally
7
+ def initialize(apikey)
8
+ @api = API.new(apikey)
9
+ end
10
+
11
+ def anecdotes
12
+ Anecdotes.new(@api)
13
+ end
14
+
15
+ def programs
16
+ Programs.new(@api)
17
+ end
18
+
19
+ def users
20
+ Users.new(@api)
21
+ end
22
+ end
23
+
24
+
25
+
metadata ADDED
@@ -0,0 +1,85 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: anecdotally-api
3
+ version: !ruby/object:Gem::Version
4
+ version: '0.1'
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Greg Lamp
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-05-27 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: httparty
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: 0.8.3
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: 0.8.3
30
+ - !ruby/object:Gem::Dependency
31
+ name: json
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: 1.7.3
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: 1.7.3
46
+ description: Anecdotal.ly's official ruby binder for the API.
47
+ email:
48
+ - lamp.greg@gmail.com
49
+ executables: []
50
+ extensions: []
51
+ extra_rdoc_files: []
52
+ files:
53
+ - lib/anecdotally/api.rb
54
+ - lib/anecdotally/query/anecdotes.rb
55
+ - lib/anecdotally/query/base.rb
56
+ - lib/anecdotally/query/programs.rb
57
+ - lib/anecdotally/query/users.rb
58
+ - lib/anecdotally.rb
59
+ - README.md
60
+ - CHANGELOG.md
61
+ homepage: https://github.com/glamp88/anecdotally-ruby
62
+ licenses: []
63
+ post_install_message:
64
+ rdoc_options: []
65
+ require_paths:
66
+ - lib
67
+ required_ruby_version: !ruby/object:Gem::Requirement
68
+ none: false
69
+ requirements:
70
+ - - ! '>='
71
+ - !ruby/object:Gem::Version
72
+ version: 1.9.2
73
+ required_rubygems_version: !ruby/object:Gem::Requirement
74
+ none: false
75
+ requirements:
76
+ - - ! '>='
77
+ - !ruby/object:Gem::Version
78
+ version: 1.3.6
79
+ requirements: []
80
+ rubyforge_project:
81
+ rubygems_version: 1.8.24
82
+ signing_key:
83
+ specification_version: 3
84
+ summary: A ruby wrapper for the anecdotal.ly api
85
+ test_files: []