casual_helper 0.0.13 → 0.0.14

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,3 @@
1
1
  module CasualHelper
2
- VERSION = "0.0.13"
2
+ VERSION = "0.0.14"
3
3
  end
data/lib/casual_helper.rb CHANGED
@@ -19,8 +19,6 @@ todo
19
19
 
20
20
  =end
21
21
 
22
- JSON_CONTENT = {:content_type => :json, :accept => :json}
23
-
24
22
  module CasualHelper
25
23
  ##
26
24
  # CasualHelper::Api makes it easier to use the Casual Cloud REST API
@@ -31,8 +29,9 @@ module CasualHelper
31
29
  #
32
30
  class Api
33
31
 
34
- def initialize(api_server)
32
+ def initialize(api_server, api_key=nil)
35
33
  @api_server = api_server
34
+ @api_key = api_key
36
35
  p " Running CasualHelper version #{CasualHelper::VERSION}"
37
36
  end
38
37
 
@@ -132,11 +131,11 @@ module CasualHelper
132
131
  def auth_user(auth)
133
132
  return if are_invalid auth
134
133
  # note - differences from 'post': (1) no .to_json (2) return response hash
135
- response_json = RestClient.post "#{@api_server.to_s}/v0/users/authenticate", auth, JSON_CONTENT
134
+ response_json = RestClient.post "#{@api_server.to_s}/v0/users/authenticate", auth, compute_headers(true)
136
135
  response = JSON.parse(response_json)
137
136
  response['response']
138
137
  rescue => e
139
- log_error url, e
138
+ log_error auth, e
140
139
  end
141
140
 
142
141
  def get_user(id)
@@ -196,9 +195,21 @@ module CasualHelper
196
195
  end
197
196
 
198
197
  private
198
+
199
+ def compute_headers(isJson=false)
200
+ headers = Hash.new
201
+ if @api_key != nil
202
+ headers[:headers] = {"Casual-API-Key" => @api_key}
203
+ end
204
+ if isJson
205
+ headers[:content_type] = :json
206
+ headers[:accept] = :json
207
+ end
208
+ return headers
209
+ end
199
210
 
200
211
  def get(url)
201
- response = RestClient.get url
212
+ response = RestClient.get url, compute_headers
202
213
  parsed_response = JSON.parse(response)
203
214
  parsed_response['response']
204
215
  rescue => e
@@ -206,7 +217,7 @@ module CasualHelper
206
217
  end
207
218
 
208
219
  def put(url, body)
209
- response_json = RestClient.put url, body.to_json, JSON_CONTENT
220
+ response_json = RestClient.put url, body.to_json, compute_headers(true)
210
221
  response = JSON.parse(response_json)
211
222
  response['meta']['code'] >= 200 && response['meta']['code'] <= 300
212
223
  rescue => e
@@ -214,7 +225,7 @@ module CasualHelper
214
225
  end
215
226
 
216
227
  def post(url, body)
217
- response_json = RestClient.post url, body.to_json, JSON_CONTENT
228
+ response_json = RestClient.post url, body.to_json, compute_headers(true)
218
229
  response = JSON.parse(response_json)
219
230
  response['response']
220
231
  rescue => e
metadata CHANGED
@@ -1,91 +1,83 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: casual_helper
3
- version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 0
7
- - 0
8
- - 13
9
- version: 0.0.13
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.14
5
+ prerelease:
10
6
  platform: ruby
11
- authors:
7
+ authors:
12
8
  - matthewspivey
13
9
  autorequire:
14
10
  bindir: bin
15
11
  cert_chain: []
16
-
17
- date: 2012-10-18 00:00:00 -04:00
18
- default_executable:
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
12
+ date: 2012-10-23 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
21
15
  name: rest-client
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
24
- requirements:
25
- - - ">="
26
- - !ruby/object:Gem::Version
27
- segments:
28
- - 0
29
- version: "0"
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
30
22
  type: :runtime
31
- version_requirements: *id001
32
- - !ruby/object:Gem::Dependency
33
- name: json
34
23
  prerelease: false
35
- requirement: &id002 !ruby/object:Gem::Requirement
36
- requirements:
37
- - - ">="
38
- - !ruby/object:Gem::Version
39
- segments:
40
- - 0
41
- version: "0"
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
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: '0'
42
38
  type: :runtime
43
- version_requirements: *id002
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
44
46
  description: Casual gem
45
- email:
47
+ email:
46
48
  - spivey.mathew@gmail.com
47
49
  executables: []
48
-
49
50
  extensions: []
50
-
51
51
  extra_rdoc_files: []
52
-
53
- files:
52
+ files:
54
53
  - Gemfile
55
54
  - Rakefile
56
55
  - casual_helper.gemspec
57
56
  - lib/casual_helper.rb
58
57
  - lib/casual_helper/version.rb
59
58
  - readme.md
60
- has_rdoc: true
61
- homepage: ""
59
+ homepage: ''
62
60
  licenses: []
63
-
64
61
  post_install_message:
65
62
  rdoc_options: []
66
-
67
- require_paths:
63
+ require_paths:
68
64
  - lib
69
- required_ruby_version: !ruby/object:Gem::Requirement
70
- requirements:
71
- - - ">="
72
- - !ruby/object:Gem::Version
73
- segments:
74
- - 0
75
- version: "0"
76
- required_rubygems_version: !ruby/object:Gem::Requirement
77
- requirements:
78
- - - ">="
79
- - !ruby/object:Gem::Version
80
- segments:
81
- - 0
82
- version: "0"
65
+ required_ruby_version: !ruby/object:Gem::Requirement
66
+ none: false
67
+ requirements:
68
+ - - ! '>='
69
+ - !ruby/object:Gem::Version
70
+ version: '0'
71
+ required_rubygems_version: !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ! '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
83
77
  requirements: []
84
-
85
78
  rubyforge_project:
86
- rubygems_version: 1.3.6
79
+ rubygems_version: 1.8.23
87
80
  signing_key:
88
81
  specification_version: 3
89
82
  summary: A casual gem, which probably isn't what you're looking for
90
83
  test_files: []
91
-