met_museum 1.1.3 → 1.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.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/README.md +1 -0
- data/lib/met_museum/api_expections.rb +1 -0
- data/lib/met_museum/collection.rb +19 -19
- data/lib/met_museum/version.rb +1 -1
- data/lib/met_museum.rb +0 -3
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f3166d79682a65468f1125eae072b225fe074956a14d46f519f614d005c546e0
|
4
|
+
data.tar.gz: ff4e0edf78eb5f1ee51ce033853e24b5df8d79f309ebf331cd2be3fd4f4446fe
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b3c5648e505cb4643486345315323677f782e0a27476ba2645f3db9728d2bd0c5ed64179ac3588173cd40126f69711d620e0d50469c29e144b2f11d46107ada0
|
7
|
+
data.tar.gz: d211eed392861e8e897d6d3e1abe7893ba162f4402345e10d266414c485af879dbebdaa9d2be98ed6a2705342311f344e901dffcb77cdafca9b1afd16abe1455
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -132,6 +132,7 @@ collection.object(1000)
|
|
132
132
|
"metadataDate"=>"2019-01-30T09:08:07.74Z",
|
133
133
|
"repository"=>"Metropolitan Museum of Art, New York, NY",
|
134
134
|
"objectURL"=>"https://www.metmuseum.org/art/collection/search/1000"}
|
135
|
+
"tags"=>["Coat of Arms", "Dishes"]}
|
135
136
|
```
|
136
137
|
</pre>
|
137
138
|
</details>
|
@@ -1,13 +1,16 @@
|
|
1
|
+
require "met_museum/api_expections"
|
2
|
+
require "met_museum/endpoint"
|
3
|
+
require "met_museum/http_status_code"
|
4
|
+
|
1
5
|
module MetMuseum
|
2
6
|
class Collection
|
3
7
|
# Return a listing of all valid Object IDs available to use
|
4
|
-
# @param [
|
8
|
+
# @param [Date] metadataDate Returns any objects with updated data after this date
|
5
9
|
# @return [Hash<total, Integer>] The total number of publicly-available objects
|
6
10
|
# @return [Hash<objectIDs, Array<Integer>>] An array containing the object ID of publicly-available object
|
7
11
|
def objects(metadataDate = nil)
|
8
|
-
metadataDate =
|
9
|
-
|
10
|
-
response = conn.get PUBLIC_URI, {:metadataDate => metadataDate}
|
12
|
+
metadataDate = check_date(metadataDate) unless metadataDate.nil?
|
13
|
+
response = Faraday.new(:url => API_ENDPOINT).get PUBLIC_URI, {:metadataDate => metadataDate}
|
11
14
|
return_response(response)
|
12
15
|
end
|
13
16
|
|
@@ -72,10 +75,13 @@ module MetMuseum
|
|
72
75
|
# @param [String] query Returns a listing of all Object IDs for objects that contain the search query within the object’s data
|
73
76
|
# @return [Integer] total The total number of publicly-available objects
|
74
77
|
# @return [Array<Integer>] objectIDs An array containing the object ID of publicly-available object
|
75
|
-
def search(query)
|
76
|
-
|
77
|
-
|
78
|
-
return_response(response)
|
78
|
+
def search(query, show_number = 0)
|
79
|
+
response = Faraday.new(:url => API_ENDPOINT).get SEARCH_URI, {:q => query}
|
80
|
+
#error if show_number <= 0
|
81
|
+
origin_response = return_response(response)
|
82
|
+
return origin_response if show_number.to_i <= 0 && show_number != 'all'
|
83
|
+
show_number = origin_response['total'].to_i if show_number == 'all'
|
84
|
+
origin_response["objectIDs"][0..show_number - 1].map{|id| object(id)}
|
79
85
|
end
|
80
86
|
|
81
87
|
private
|
@@ -102,20 +108,14 @@ module MetMuseum
|
|
102
108
|
response.status == HTTP_OK_CODE
|
103
109
|
end
|
104
110
|
|
105
|
-
def
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
when "DateTime"
|
110
|
-
date = date.to_date.to_s
|
111
|
-
when "String"
|
112
|
-
date
|
113
|
-
end
|
114
|
-
date
|
111
|
+
def check_date(date)
|
112
|
+
return date.to_s if date.class == Date
|
113
|
+
|
114
|
+
raise TypeError, "Write certain date"
|
115
115
|
end
|
116
116
|
|
117
117
|
def return_response(response)
|
118
|
-
return Oj.load(response.body)if response_successful?(response)
|
118
|
+
return Oj.load(response.body) if response_successful?(response)
|
119
119
|
|
120
120
|
raise error_class(response), "Code: #{response.status}, response: #{response.body}"
|
121
121
|
end
|
data/lib/met_museum/version.rb
CHANGED
data/lib/met_museum.rb
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.
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- hyuraku
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-04-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|