passworks 0.0.4 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4a5be31fc6ed552a17686b1bcb124b51394c2ebe
4
- data.tar.gz: f8614144d8f0de74cb981f2b1ad4f2cb0fe10122
3
+ metadata.gz: 63d3e07f25126bdc233db3ea0c1cca0bea1f07a9
4
+ data.tar.gz: dc4cbb53694b382fc90cbfeb0531bf0b559e9ba1
5
5
  SHA512:
6
- metadata.gz: 9bf14cb94bf2cd27e4b7736ba8f5037c8d62c4e4169a438ef8ee1ad5d735be276259103c03e5c09895696a5c3caa2538a92b5944c94e6bfe1b36d262b997fd53
7
- data.tar.gz: 1c863bc851384f235fc629bb6abce3882a211cb272cf185d34f8fdf9e14a56e2893828a373e7cc752491c930a235f0f44261732cacaab99033ea112e7d08f1c7
6
+ metadata.gz: bf3caaa1fccc455890b932089a15e7bb12f19c0b57b7ad79b81b34f41a682a7867a5627d972b98da5e7b895141a9a0c9bc3cbb9a9b2a412236445663f5c2029a
7
+ data.tar.gz: 12e4224b8b04a2dc6c4a30b72fc0f873f6bbf2f678e8155fd5b4cd6cfed41f45d4e32f16a38c20985ef3222a8f41562f0f6b2e729cb8d9a2677ad1121ce7c9db
data/CHANGELOG.md CHANGED
@@ -3,6 +3,12 @@
3
3
  This file is a manually maintained list of changes for each release. Feel free to add your
4
4
  changes here when sending pull requests. Also send corrections if you spot any mistakes.
5
5
 
6
+ ## v2.0.0 (2015-11-27)
7
+ * Updated SDK for version 2 of the API
8
+
9
+ ## v0.0.5 (2015-01-23)
10
+ * Added possibility of listing certificates.
11
+
6
12
  ## v0.0.4 (2015-01-19)
7
13
  * Bug fix: Pagination bug regression found when fetching resources with only one page
8
14
 
data/README.md CHANGED
@@ -47,6 +47,19 @@ client = Passworks.new({
47
47
 
48
48
  ## Examples
49
49
 
50
+ ### Certificates
51
+
52
+ ```ruby
53
+ # Fetch and iterate through all your certificates
54
+ certificates = client.certificates.all
55
+ certificates.each do |certificate|
56
+ puts certificate
57
+ end
58
+
59
+ # Fetch a specific certificate via uuid (uuid=c3d5fc64-3a43-4d3a-a167-473dfeb1edd3)
60
+ certificate = client.certificates.find('c3d5fc64-3a43-4d3a-a167-473dfeb1edd3')
61
+ ```
62
+
50
63
  ### Assets
51
64
 
52
65
  ```ruby
data/lib/passworks.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # encoding: UTF-8
2
+
1
3
  require 'uri'
2
4
  require 'faraday'
3
5
  require 'faraday_middleware'
@@ -14,6 +16,7 @@ require 'passworks/collection_proxy'
14
16
  require 'passworks/resource'
15
17
  require 'passworks/campaign_resource'
16
18
  require 'passworks/asset_resource'
19
+ require 'passworks/certificate_resource'
17
20
  require 'passworks/pass_resource'
18
21
 
19
22
  # Passworks
@@ -0,0 +1,7 @@
1
+ module Passworks
2
+ class CertificateResource < Resource
3
+
4
+ # No overrides for certificates needed for now, only GETs requested.
5
+
6
+ end
7
+ end
@@ -35,7 +35,7 @@ module Passworks
35
35
  # @!method generics
36
36
  # Allows to to access the Generic API
37
37
  # @return [Passworks::RequestProxy]
38
- %w(assets boarding_passes store_cards coupons event_tickets generics).each do |collection_name|
38
+ %w(certificates assets boarding_passes store_cards coupons event_tickets generics).each do |collection_name|
39
39
  define_method(collection_name) do
40
40
  Passworks::RequestProxy.new(self, collection_name, nil)
41
41
  end
@@ -45,7 +45,7 @@ module Passworks
45
45
  end
46
46
  # @return the endpoint address with API version appended
47
47
  def endpoint
48
- File.join(@endpoint, 'v1').to_s
48
+ File.join(@endpoint, 'v2').to_s
49
49
  end
50
50
 
51
51
  class << self
@@ -7,6 +7,8 @@ module Passworks
7
7
  case collection_name
8
8
  when 'assets'
9
9
  'asset'
10
+ when 'certificates'
11
+ 'certificate'
10
12
  when 'boarding_passes'
11
13
  'boarding_pass'
12
14
  when 'coupons'
@@ -26,7 +28,9 @@ module Passworks
26
28
  # If collection_name return [Passworks::AssetResource]
27
29
  # If collection_uuid == nil return [Passworks::CampaignResource] else return [Passworks::PassResource]
28
30
  def resource_class
29
- return Passworks::AssetResource if collection_name == 'assets'
31
+ return Passworks::AssetResource if collection_name == 'assets'
32
+ # CertificateResource has no overrides, but follow along the normal flow.
33
+ return Passworks::CertificateResource if collection_name == 'certificates'
30
34
  if collection_uuid
31
35
  Passworks::PassResource
32
36
  else
@@ -24,8 +24,8 @@ module Passworks
24
24
  connection.use Passworks::Faraday::HttpExceptionMiddleware
25
25
  connection.adapter ::Faraday.default_adapter
26
26
  end
27
- @agent.headers[:user_agent] = @user_agent
28
- # always return the {@agent}
27
+ @agent.headers[:user_agent] = @user_agent
28
+ @agent.headers['Content-Type'] = 'application/json'
29
29
  @agent
30
30
  end
31
31
 
@@ -1,3 +1,5 @@
1
+ # encoding: UTF-8
2
+
1
3
  module Passworks
2
4
  class RequestProxy
3
5
 
@@ -67,7 +69,7 @@ module Passworks
67
69
 
68
70
  if collection_name.to_s == 'assets' && collection_uuid.nil?
69
71
  raise Passworks::Exceptions::FileNotFound.new("Can't find file #{data[:file]}") unless data.has_key?(:file) && File.exists?(data[:file])
70
- data[:file] = ::Faraday::UploadIO.new(data[:file], "image/#{data[:file].split('.').last.downcase}")
72
+ data[:file] = ::Faraday::UploadIO.new(data[:file], content_type_for(data[:file]))
71
73
  end
72
74
 
73
75
  if collection_uuid
@@ -111,5 +113,16 @@ module Passworks
111
113
  end
112
114
  end
113
115
 
116
+ def content_type_for(filename)
117
+ file_extension = filename.split('.').last.downcase
118
+ content_types = {
119
+ "jpg" => "image/jpeg",
120
+ "jpeg" => "image/jpeg",
121
+ "png" => "image/png",
122
+ "gif" => "image/gif",
123
+ }
124
+ return content_types[file_extension]
125
+ end
126
+
114
127
  end
115
- end
128
+ end
@@ -1,3 +1,3 @@
1
1
  module Passworks
2
- VERSION = "0.0.4"
2
+ VERSION = "2.0.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: passworks
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Luis Mendes
@@ -10,146 +10,146 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2015-01-19 00:00:00.000000000 Z
13
+ date: 2015-11-27 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: faraday
17
17
  requirement: !ruby/object:Gem::Requirement
18
18
  requirements:
19
- - - ~>
19
+ - - "~>"
20
20
  - !ruby/object:Gem::Version
21
21
  version: 0.9.0
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
- - - ~>
26
+ - - "~>"
27
27
  - !ruby/object:Gem::Version
28
28
  version: 0.9.0
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: faraday_middleware
31
31
  requirement: !ruby/object:Gem::Requirement
32
32
  requirements:
33
- - - ~>
33
+ - - "~>"
34
34
  - !ruby/object:Gem::Version
35
35
  version: 0.9.1
36
36
  type: :runtime
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
- - - ~>
40
+ - - "~>"
41
41
  - !ruby/object:Gem::Version
42
42
  version: 0.9.1
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: bundler
45
45
  requirement: !ruby/object:Gem::Requirement
46
46
  requirements:
47
- - - ~>
47
+ - - "~>"
48
48
  - !ruby/object:Gem::Version
49
49
  version: '1.6'
50
50
  type: :development
51
51
  prerelease: false
52
52
  version_requirements: !ruby/object:Gem::Requirement
53
53
  requirements:
54
- - - ~>
54
+ - - "~>"
55
55
  - !ruby/object:Gem::Version
56
56
  version: '1.6'
57
57
  - !ruby/object:Gem::Dependency
58
58
  name: rake
59
59
  requirement: !ruby/object:Gem::Requirement
60
60
  requirements:
61
- - - '>='
61
+ - - ">="
62
62
  - !ruby/object:Gem::Version
63
63
  version: '0'
64
64
  type: :development
65
65
  prerelease: false
66
66
  version_requirements: !ruby/object:Gem::Requirement
67
67
  requirements:
68
- - - '>='
68
+ - - ">="
69
69
  - !ruby/object:Gem::Version
70
70
  version: '0'
71
71
  - !ruby/object:Gem::Dependency
72
72
  name: pry
73
73
  requirement: !ruby/object:Gem::Requirement
74
74
  requirements:
75
- - - '>='
75
+ - - ">="
76
76
  - !ruby/object:Gem::Version
77
77
  version: '0'
78
78
  type: :development
79
79
  prerelease: false
80
80
  version_requirements: !ruby/object:Gem::Requirement
81
81
  requirements:
82
- - - '>='
82
+ - - ">="
83
83
  - !ruby/object:Gem::Version
84
84
  version: '0'
85
85
  - !ruby/object:Gem::Dependency
86
86
  name: pry-byebug
87
87
  requirement: !ruby/object:Gem::Requirement
88
88
  requirements:
89
- - - '>='
89
+ - - ">="
90
90
  - !ruby/object:Gem::Version
91
91
  version: '0'
92
92
  type: :development
93
93
  prerelease: false
94
94
  version_requirements: !ruby/object:Gem::Requirement
95
95
  requirements:
96
- - - '>='
96
+ - - ">="
97
97
  - !ruby/object:Gem::Version
98
98
  version: '0'
99
99
  - !ruby/object:Gem::Dependency
100
100
  name: minitest
101
101
  requirement: !ruby/object:Gem::Requirement
102
102
  requirements:
103
- - - '>='
103
+ - - ">="
104
104
  - !ruby/object:Gem::Version
105
105
  version: '0'
106
106
  type: :development
107
107
  prerelease: false
108
108
  version_requirements: !ruby/object:Gem::Requirement
109
109
  requirements:
110
- - - '>='
110
+ - - ">="
111
111
  - !ruby/object:Gem::Version
112
112
  version: '0'
113
113
  - !ruby/object:Gem::Dependency
114
114
  name: webmock
115
115
  requirement: !ruby/object:Gem::Requirement
116
116
  requirements:
117
- - - '>='
117
+ - - ">="
118
118
  - !ruby/object:Gem::Version
119
119
  version: '0'
120
120
  type: :development
121
121
  prerelease: false
122
122
  version_requirements: !ruby/object:Gem::Requirement
123
123
  requirements:
124
- - - '>='
124
+ - - ">="
125
125
  - !ruby/object:Gem::Version
126
126
  version: '0'
127
127
  - !ruby/object:Gem::Dependency
128
128
  name: vcr
129
129
  requirement: !ruby/object:Gem::Requirement
130
130
  requirements:
131
- - - '>='
131
+ - - ">="
132
132
  - !ruby/object:Gem::Version
133
133
  version: '0'
134
134
  type: :development
135
135
  prerelease: false
136
136
  version_requirements: !ruby/object:Gem::Requirement
137
137
  requirements:
138
- - - '>='
138
+ - - ">="
139
139
  - !ruby/object:Gem::Version
140
140
  version: '0'
141
141
  - !ruby/object:Gem::Dependency
142
142
  name: minitest-vcr
143
143
  requirement: !ruby/object:Gem::Requirement
144
144
  requirements:
145
- - - '>='
145
+ - - ">="
146
146
  - !ruby/object:Gem::Version
147
147
  version: '0'
148
148
  type: :development
149
149
  prerelease: false
150
150
  version_requirements: !ruby/object:Gem::Requirement
151
151
  requirements:
152
- - - '>='
152
+ - - ">="
153
153
  - !ruby/object:Gem::Version
154
154
  version: '0'
155
155
  description: Provides a simple interface to Passworks API
@@ -161,8 +161,8 @@ executables: []
161
161
  extensions: []
162
162
  extra_rdoc_files: []
163
163
  files:
164
- - .gitignore
165
- - .travis.yml
164
+ - ".gitignore"
165
+ - ".travis.yml"
166
166
  - CHANGELOG.md
167
167
  - Gemfile
168
168
  - README.md
@@ -170,6 +170,7 @@ files:
170
170
  - lib/passworks.rb
171
171
  - lib/passworks/asset_resource.rb
172
172
  - lib/passworks/campaign_resource.rb
173
+ - lib/passworks/certificate_resource.rb
173
174
  - lib/passworks/client.rb
174
175
  - lib/passworks/collection_proxy.rb
175
176
  - lib/passworks/configuration.rb
@@ -216,17 +217,17 @@ require_paths:
216
217
  - lib
217
218
  required_ruby_version: !ruby/object:Gem::Requirement
218
219
  requirements:
219
- - - '>='
220
+ - - ">="
220
221
  - !ruby/object:Gem::Version
221
222
  version: '0'
222
223
  required_rubygems_version: !ruby/object:Gem::Requirement
223
224
  requirements:
224
- - - '>='
225
+ - - ">="
225
226
  - !ruby/object:Gem::Version
226
227
  version: '0'
227
228
  requirements: []
228
229
  rubyforge_project:
229
- rubygems_version: 2.2.2
230
+ rubygems_version: 2.4.5.1
230
231
  signing_key:
231
232
  specification_version: 4
232
233
  summary: Passworks API client
@@ -239,4 +240,3 @@ test_files:
239
240
  - spec/support/.DS_Store
240
241
  - spec/support/assets/logo.png
241
242
  - spec/support/vcr_setup.rb
242
- has_rdoc: