met_museum 1.1.0 → 1.1.1
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.
- checksums.yaml +4 -4
- data/.travis.yml +3 -1
- data/Gemfile.lock +4 -1
- data/README.md +16 -0
- data/lib/met_museum/api_expections.rb +10 -0
- data/lib/met_museum/collection.rb +2 -22
- data/lib/met_museum/endpoint.rb +5 -0
- data/lib/met_museum/http_status_code.rb +8 -0
- data/lib/met_museum/version.rb +1 -1
- data/lib/met_museum.rb +4 -1
- data/met_museum.gemspec +1 -0
- metadata +19 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '08d6d07c0f9c75193191f9c558faacfb3b4c3cdf29c32b7ec9683d9aafa86480'
|
4
|
+
data.tar.gz: f58005f169eceb608b22b53fbd59c8187aed3a6cb0443181761fb421f5c4c505
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: beefedd3fad4533944b0ae179be71c3240b394c571970166c4b8293531f6a50526dc12f58baef474c6547bc61ad21a0de59052117cb7391d8b2d7a76dfde0a49
|
7
|
+
data.tar.gz: f6c9e98f847f7d17e912f89f3fbf3a368cde50fc6142dc01a5de6cdf292553104cd293e356924ce54ea2b806199c1303eb4509d7d720c57b4e8a3e9db09a2ca1
|
data/.travis.yml
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
met_museum (1.1.
|
4
|
+
met_museum (1.1.1)
|
5
5
|
|
6
6
|
GEM
|
7
7
|
remote: https://rubygems.org/
|
@@ -29,6 +29,8 @@ GEM
|
|
29
29
|
rspec-mocks (3.8.0)
|
30
30
|
diff-lcs (>= 1.2.0, < 2.0)
|
31
31
|
rspec-support (~> 3.8.0)
|
32
|
+
rspec-retry (0.6.1)
|
33
|
+
rspec-core (> 3.3)
|
32
34
|
rspec-support (3.8.0)
|
33
35
|
|
34
36
|
PLATFORMS
|
@@ -42,6 +44,7 @@ DEPENDENCIES
|
|
42
44
|
pry
|
43
45
|
rake (~> 10.0)
|
44
46
|
rspec (~> 3.0)
|
47
|
+
rspec-retry
|
45
48
|
|
46
49
|
BUNDLED WITH
|
47
50
|
2.0.1
|
data/README.md
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
<img src="https://img.shields.io/travis/hyuraku/met_museum.svg"> <img src="https://img.shields.io/gem/v/met_museum.svg">
|
2
|
+
|
1
3
|
# MetMuseum
|
2
4
|
|
3
5
|
The Metropolitan Museum of Art Collection API Ruby wrapper
|
@@ -113,6 +115,20 @@ collection.object(1000)
|
|
113
115
|
</pre>
|
114
116
|
</details>
|
115
117
|
|
118
|
+
MetMuseum::Collection.search
|
119
|
+
```
|
120
|
+
collection.search('ocean')
|
121
|
+
=> {"total"=>189,
|
122
|
+
"objectIDs"=>
|
123
|
+
[250487,
|
124
|
+
12544,
|
125
|
+
436005,
|
126
|
+
8314,
|
127
|
+
8315,
|
128
|
+
8317,
|
129
|
+
--< omit >--
|
130
|
+
```
|
131
|
+
|
116
132
|
## Contributing
|
117
133
|
|
118
134
|
Bug reports and pull requests are welcome on GitHub at https://github.com/hyuraku/met_museum. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
|
@@ -0,0 +1,10 @@
|
|
1
|
+
module MetMuseum
|
2
|
+
MetMuseumError = Class.new(StandardError)
|
3
|
+
BadRequestError = Class.new(MetMuseumError)
|
4
|
+
UnauthorizedError = Class.new(MetMuseumError)
|
5
|
+
ForbiddenError = Class.new(MetMuseumError)
|
6
|
+
ApiRequestsQuotaReachedError = Class.new(MetMuseumError)
|
7
|
+
NotFoundError = Class.new(MetMuseumError)
|
8
|
+
UnprocessableEntityError = Class.new(MetMuseumError)
|
9
|
+
ApiError = Class.new(MetMuseumError)
|
10
|
+
end
|
@@ -1,27 +1,5 @@
|
|
1
1
|
module MetMuseum
|
2
2
|
class Collection
|
3
|
-
MetMuseumError = Class.new(StandardError)
|
4
|
-
BadRequestError = Class.new(MetMuseumError)
|
5
|
-
UnauthorizedError = Class.new(MetMuseumError)
|
6
|
-
ForbiddenError = Class.new(MetMuseumError)
|
7
|
-
ApiRequestsQuotaReachedError = Class.new(MetMuseumError)
|
8
|
-
NotFoundError = Class.new(MetMuseumError)
|
9
|
-
UnprocessableEntityError = Class.new(MetMuseumError)
|
10
|
-
ApiError = Class.new(MetMuseumError)
|
11
|
-
|
12
|
-
API_ENDPOINT = "https://collectionapi.metmuseum.org".freeze
|
13
|
-
PUBLIC_URI = "/public/collection/v1/objects".freeze
|
14
|
-
SEARCH_URI = "/public/collection/v1/search".freeze
|
15
|
-
|
16
|
-
HTTP_OK_CODE = 200.freeze
|
17
|
-
|
18
|
-
HTTP_BAD_REQUEST_CODE = 400.freeze
|
19
|
-
HTTP_UNAUTHORIZED_CODE = 401.freeze
|
20
|
-
HTTP_FORBIDDEN_CODE = 403.freeze
|
21
|
-
HTTP_NOT_FOUND_CODE = 404.freeze
|
22
|
-
HTTP_UNPROCESSABLE_ENTITY_CODE = 429.freeze
|
23
|
-
|
24
|
-
|
25
3
|
# Return a listing of all valid Object IDs available to use
|
26
4
|
# @param [String] metadataDate Returns any objects with updated data after this date
|
27
5
|
# @return [Hash<total, Integer>] The total number of publicly-available objects
|
@@ -105,6 +83,8 @@ module MetMuseum
|
|
105
83
|
raise error_class(response), "Code: #{response.status}, response: #{response.body}"
|
106
84
|
end
|
107
85
|
|
86
|
+
private
|
87
|
+
|
108
88
|
def error_class(response)
|
109
89
|
case response.status
|
110
90
|
when HTTP_BAD_REQUEST_CODE
|
data/lib/met_museum/version.rb
CHANGED
data/lib/met_museum.rb
CHANGED
@@ -1,8 +1,11 @@
|
|
1
1
|
require "faraday"
|
2
2
|
require "oj"
|
3
3
|
|
4
|
+
require "met_museum/api_expections"
|
5
|
+
require "met_museum/endpoint"
|
6
|
+
require "met_museum/collection"
|
7
|
+
require "met_museum/http_status_code"
|
4
8
|
require "met_museum/version"
|
5
|
-
require 'met_museum/collection'
|
6
9
|
|
7
10
|
module MetMuseum
|
8
11
|
end
|
data/met_museum.gemspec
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: met_museum
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- hyuraku
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-02-
|
11
|
+
date: 2019-02-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -80,6 +80,20 @@ dependencies:
|
|
80
80
|
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: rspec-retry
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
83
97
|
description: 'The Metropolitan Museum of Art Collection API wrapper '
|
84
98
|
email:
|
85
99
|
- calenthird@gamil.com
|
@@ -99,7 +113,10 @@ files:
|
|
99
113
|
- bin/console
|
100
114
|
- bin/setup
|
101
115
|
- lib/met_museum.rb
|
116
|
+
- lib/met_museum/api_expections.rb
|
102
117
|
- lib/met_museum/collection.rb
|
118
|
+
- lib/met_museum/endpoint.rb
|
119
|
+
- lib/met_museum/http_status_code.rb
|
103
120
|
- lib/met_museum/version.rb
|
104
121
|
- met_museum.gemspec
|
105
122
|
homepage: https://github.com/hyuraku/met_museum
|