dailymile-ruby 0.1.3 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Rakefile CHANGED
@@ -1,4 +1,5 @@
1
1
  require 'rubygems'
2
+ require 'psych'
2
3
  require 'rake'
3
4
 
4
5
  begin
@@ -11,9 +12,9 @@ begin
11
12
  gem.homepage = "http://github.com/dailymile/dailymile-ruby"
12
13
  gem.authors = ["lostinpatterns"]
13
14
 
14
- gem.add_dependency("faraday", "~> 0.4.1")
15
+ gem.add_dependency("faraday", "~> 0.5.7")
15
16
  gem.add_dependency("json_pure")
16
- gem.add_dependency("oauth2", "0.0.13")
17
+ gem.add_dependency("oauth2", "0.1.1")
17
18
 
18
19
  # gem.add_development_dependency "thoughtbot-shoulda", ">= 0"
19
20
  # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.3
1
+ 0.2.0
@@ -1,64 +1,60 @@
1
1
  # Generated by jeweler
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{dailymile-ruby}
8
- s.version = "0.1.3"
8
+ s.version = "0.2.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["lostinpatterns"]
12
- s.date = %q{2010-10-11}
12
+ s.date = %q{2011-03-10}
13
13
  s.description = %q{This gem wraps the dailymile API that's available at http://www.dailymile.com/api}
14
14
  s.email = %q{blweiner@gmail.com}
15
15
  s.extra_rdoc_files = [
16
16
  "LICENSE",
17
- "README.rdoc"
17
+ "README.rdoc"
18
18
  ]
19
19
  s.files = [
20
20
  ".document",
21
- ".gitignore",
22
- "LICENSE",
23
- "README.rdoc",
24
- "Rakefile",
25
- "VERSION",
26
- "dailymile-ruby.gemspec",
27
- "lib/dailymile.rb",
28
- "lib/dailymile/client.rb",
29
- "lib/dailymile/connection.rb",
30
- "lib/dailymile/connection/token.rb",
31
- "lib/oauth2_monkey_patches.rb",
32
- "test/helper.rb",
33
- "test/test_dailymile-ruby.rb"
21
+ "LICENSE",
22
+ "README.rdoc",
23
+ "Rakefile",
24
+ "VERSION",
25
+ "dailymile-ruby.gemspec",
26
+ "lib/dailymile.rb",
27
+ "lib/dailymile/client.rb",
28
+ "lib/dailymile/connection.rb",
29
+ "lib/dailymile/connection/token.rb",
30
+ "test/helper.rb",
31
+ "test/test_dailymile-ruby.rb"
34
32
  ]
35
33
  s.homepage = %q{http://github.com/dailymile/dailymile-ruby}
36
- s.rdoc_options = ["--charset=UTF-8"]
37
34
  s.require_paths = ["lib"]
38
- s.rubygems_version = %q{1.3.7}
35
+ s.rubygems_version = %q{1.5.0}
39
36
  s.summary = %q{dailymile ruby client}
40
37
  s.test_files = [
41
38
  "test/helper.rb",
42
- "test/test_dailymile-ruby.rb"
39
+ "test/test_dailymile-ruby.rb"
43
40
  ]
44
41
 
45
42
  if s.respond_to? :specification_version then
46
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
47
43
  s.specification_version = 3
48
44
 
49
45
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
50
- s.add_runtime_dependency(%q<faraday>, ["~> 0.4.1"])
46
+ s.add_runtime_dependency(%q<faraday>, ["~> 0.5.7"])
51
47
  s.add_runtime_dependency(%q<json_pure>, [">= 0"])
52
- s.add_runtime_dependency(%q<oauth2>, ["= 0.0.13"])
48
+ s.add_runtime_dependency(%q<oauth2>, ["= 0.1.1"])
53
49
  else
54
- s.add_dependency(%q<faraday>, ["~> 0.4.1"])
50
+ s.add_dependency(%q<faraday>, ["~> 0.5.7"])
55
51
  s.add_dependency(%q<json_pure>, [">= 0"])
56
- s.add_dependency(%q<oauth2>, ["= 0.0.13"])
52
+ s.add_dependency(%q<oauth2>, ["= 0.1.1"])
57
53
  end
58
54
  else
59
- s.add_dependency(%q<faraday>, ["~> 0.4.1"])
55
+ s.add_dependency(%q<faraday>, ["~> 0.5.7"])
60
56
  s.add_dependency(%q<json_pure>, [">= 0"])
61
- s.add_dependency(%q<oauth2>, ["= 0.0.13"])
57
+ s.add_dependency(%q<oauth2>, ["= 0.1.1"])
62
58
  end
63
59
  end
64
60
 
@@ -2,15 +2,11 @@ require 'faraday'
2
2
  require 'json'
3
3
  require 'oauth2'
4
4
 
5
- require 'oauth2_monkey_patches'
6
- require 'dailymile/connection'
7
- require 'dailymile/connection/token'
8
- require 'dailymile/client'
9
-
10
5
  module Dailymile
11
6
 
12
7
  VERSION = File.read(File.join(File.dirname(__FILE__), '..', 'VERSION'))
13
- BASE_URI = 'https://api.dailymile.com'
8
+ HOST = 'api.dailymile.com'
9
+ BASE_URI = "https://#{HOST}"
14
10
  OAUTH_AUTHORIZE_PATH = '/oauth/authorize'
15
11
  OAUTH_TOKEN_PATH = '/oauth/token'
16
12
 
@@ -29,4 +25,8 @@ module Dailymile
29
25
  end
30
26
  end
31
27
 
32
- end
28
+ end
29
+
30
+ require 'dailymile/connection' # require File.expand_path(File.dirname(__FILE__) + '/dailymile/connection')
31
+ require 'dailymile/connection/token'
32
+ require 'dailymile/client'
@@ -30,13 +30,13 @@ module Dailymile
30
30
  end
31
31
 
32
32
  # EXAMPLES:
33
- # everyone stream: client.entries
34
- # nearby stream: client.entries :nearby, 37.77916, -122.420049, :page => 2
35
- # ben's stream: client.entries 'ben', :page => 2
33
+ # everyone stream: Dailymile::Client.entries
34
+ # nearby stream: Dailymile::Client.entries :nearby, 37.77916, -122.420049, :page => 2
35
+ # ben's stream: Dailymile::Client.entries 'ben', :page => 2
36
36
  def self.entries(*args)
37
37
  params = extract_options_from_args!(args)
38
38
  filter = args.shift
39
-
39
+
40
40
  entries_path = case filter
41
41
  when String, Symbol
42
42
  filter = filter.to_s.strip
@@ -54,12 +54,11 @@ module Dailymile
54
54
  else
55
55
  '/entries'
56
56
  end
57
-
57
+
58
58
  data = get entries_path, params
59
59
  data["entries"]
60
60
  end
61
61
 
62
-
63
62
  private
64
63
 
65
64
  def self.extract_options_from_args!(args)
@@ -5,7 +5,7 @@ module Dailymile
5
5
  DEFAULT_FORMAT = :json
6
6
  DEFAULT_HEADERS = {
7
7
  'Accept' => 'application/json',
8
- 'User-Agent' => "dailymile-ruby/#{VERSION}"
8
+ 'User-Agent' => "dailymile-ruby/#{Dailymile::VERSION}"
9
9
  }
10
10
 
11
11
  def get(path, params = {})
@@ -28,9 +28,13 @@ module Dailymile
28
28
 
29
29
  def make_request(verb, path, params = {}, headers = {}, &block)
30
30
  path << ".#{DEFAULT_FORMAT}" unless path =~ /.+\.\w+$/
31
- path << to_query_string(params) unless params.empty?
32
31
 
33
- response = block.call verb, path, {}, DEFAULT_HEADERS.merge(headers)
32
+ if verb == :get
33
+ path << to_query_string(params) unless params.empty?
34
+ params = {}
35
+ end
36
+
37
+ response = block.call verb, path, params, DEFAULT_HEADERS.merge(headers)
34
38
 
35
39
  handle_response(response)
36
40
  end
@@ -38,7 +42,7 @@ module Dailymile
38
42
  private
39
43
 
40
44
  def request(verb, path, params = {}, headers = {})
41
- @connection ||= Faraday::Connection.new(:url => "http://api.dailymile.com", :headers => DEFAULT_HEADERS) do |builder|
45
+ @connection ||= Faraday::Connection.new(:url => "http://#{Dailymile::HOST}", :headers => DEFAULT_HEADERS) do |builder|
42
46
  builder.adapter Faraday.default_adapter
43
47
  #builder.use Faraday::Response::Mashify
44
48
  end
@@ -57,7 +61,7 @@ module Dailymile
57
61
  def handle_response(response)
58
62
  case response.status
59
63
  when 200, 201
60
- JSON.parse(response) rescue nil
64
+ JSON.parse(response) unless response.nil? # rescue nil
61
65
  when 404
62
66
  raise NotFound
63
67
  when 401
@@ -73,7 +77,7 @@ module Dailymile
73
77
  raise Unavailable, "#{response.status}: #{response}"
74
78
  end
75
79
  when 422
76
- errors = JSON.parse(response) rescue nil
80
+ errors = JSON.parse(response) unless response.nil? # rescue nil
77
81
  raise UnprocessableEntity, errors
78
82
  else
79
83
  raise DailymileError,"#{response.status}: #{response}"
@@ -21,6 +21,7 @@ module Dailymile
21
21
 
22
22
  def set_access_token(token)
23
23
  @access_token = OAuth2::AccessToken.new(@client, token)
24
+ @access_token.token_param = 'oauth_token'
24
25
  end
25
26
 
26
27
  end
metadata CHANGED
@@ -1,81 +1,59 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: dailymile-ruby
3
- version: !ruby/object:Gem::Version
4
- hash: 29
5
- prerelease: false
6
- segments:
7
- - 0
8
- - 1
9
- - 3
10
- version: 0.1.3
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.0
5
+ prerelease: !!null
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - lostinpatterns
14
- autorequire:
9
+ autorequire: !!null
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2010-10-11 00:00:00 -07:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2011-03-10 00:00:00.000000000 -08:00
13
+ default_executable: !!null
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
22
16
  name: faraday
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
17
+ requirement: &2153329620 !ruby/object:Gem::Requirement
25
18
  none: false
26
- requirements:
19
+ requirements:
27
20
  - - ~>
28
- - !ruby/object:Gem::Version
29
- hash: 13
30
- segments:
31
- - 0
32
- - 4
33
- - 1
34
- version: 0.4.1
21
+ - !ruby/object:Gem::Version
22
+ version: 0.5.7
35
23
  type: :runtime
36
- version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
38
- name: json_pure
39
24
  prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
25
+ version_requirements: *2153329620
26
+ - !ruby/object:Gem::Dependency
27
+ name: json_pure
28
+ requirement: &2153329080 !ruby/object:Gem::Requirement
41
29
  none: false
42
- requirements:
43
- - - ">="
44
- - !ruby/object:Gem::Version
45
- hash: 3
46
- segments:
47
- - 0
48
- version: "0"
30
+ requirements:
31
+ - - ! '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
49
34
  type: :runtime
50
- version_requirements: *id002
51
- - !ruby/object:Gem::Dependency
52
- name: oauth2
53
35
  prerelease: false
54
- requirement: &id003 !ruby/object:Gem::Requirement
36
+ version_requirements: *2153329080
37
+ - !ruby/object:Gem::Dependency
38
+ name: oauth2
39
+ requirement: &2153328580 !ruby/object:Gem::Requirement
55
40
  none: false
56
- requirements:
57
- - - "="
58
- - !ruby/object:Gem::Version
59
- hash: 5
60
- segments:
61
- - 0
62
- - 0
63
- - 13
64
- version: 0.0.13
41
+ requirements:
42
+ - - =
43
+ - !ruby/object:Gem::Version
44
+ version: 0.1.1
65
45
  type: :runtime
66
- version_requirements: *id003
46
+ prerelease: false
47
+ version_requirements: *2153328580
67
48
  description: This gem wraps the dailymile API that's available at http://www.dailymile.com/api
68
49
  email: blweiner@gmail.com
69
50
  executables: []
70
-
71
51
  extensions: []
72
-
73
- extra_rdoc_files:
52
+ extra_rdoc_files:
74
53
  - LICENSE
75
54
  - README.rdoc
76
- files:
55
+ files:
77
56
  - .document
78
- - .gitignore
79
57
  - LICENSE
80
58
  - README.rdoc
81
59
  - Rakefile
@@ -85,43 +63,33 @@ files:
85
63
  - lib/dailymile/client.rb
86
64
  - lib/dailymile/connection.rb
87
65
  - lib/dailymile/connection/token.rb
88
- - lib/oauth2_monkey_patches.rb
89
66
  - test/helper.rb
90
67
  - test/test_dailymile-ruby.rb
91
68
  has_rdoc: true
92
69
  homepage: http://github.com/dailymile/dailymile-ruby
93
70
  licenses: []
94
-
95
- post_install_message:
96
- rdoc_options:
97
- - --charset=UTF-8
98
- require_paths:
71
+ post_install_message: !!null
72
+ rdoc_options: []
73
+ require_paths:
99
74
  - lib
100
- required_ruby_version: !ruby/object:Gem::Requirement
75
+ required_ruby_version: !ruby/object:Gem::Requirement
101
76
  none: false
102
- requirements:
103
- - - ">="
104
- - !ruby/object:Gem::Version
105
- hash: 3
106
- segments:
107
- - 0
108
- version: "0"
109
- required_rubygems_version: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - ! '>='
79
+ - !ruby/object:Gem::Version
80
+ version: '0'
81
+ required_rubygems_version: !ruby/object:Gem::Requirement
110
82
  none: false
111
- requirements:
112
- - - ">="
113
- - !ruby/object:Gem::Version
114
- hash: 3
115
- segments:
116
- - 0
117
- version: "0"
83
+ requirements:
84
+ - - ! '>='
85
+ - !ruby/object:Gem::Version
86
+ version: '0'
118
87
  requirements: []
119
-
120
- rubyforge_project:
121
- rubygems_version: 1.3.7
122
- signing_key:
88
+ rubyforge_project: !!null
89
+ rubygems_version: 1.5.0
90
+ signing_key: !!null
123
91
  specification_version: 3
124
92
  summary: dailymile ruby client
125
- test_files:
93
+ test_files:
126
94
  - test/helper.rb
127
95
  - test/test_dailymile-ruby.rb
data/.gitignore DELETED
@@ -1,21 +0,0 @@
1
- ## MAC OS
2
- .DS_Store
3
-
4
- ## TEXTMATE
5
- *.tmproj
6
- tmtags
7
-
8
- ## EMACS
9
- *~
10
- \#*
11
- .\#*
12
-
13
- ## VIM
14
- *.swp
15
-
16
- ## PROJECT::GENERAL
17
- coverage
18
- rdoc
19
- pkg
20
-
21
- ## PROJECT::SPECIFIC
@@ -1,11 +0,0 @@
1
- #
2
- # HACK: monkey-patching oauth2 lib
3
- #
4
- module OAuth2
5
- class AccessToken
6
- def request(verb, path, params = {}, headers = {})
7
- params = params.merge('oauth_token' => @token) unless @token.nil?
8
- @client.request(verb, path, params)
9
- end
10
- end
11
- end