met_museum 1.0.0 → 1.1.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
  SHA256:
3
- metadata.gz: e3ac1a24a596274e2252ecc37f739f06e0e2ed55aa98e3cc12d16adac23f97c0
4
- data.tar.gz: 0f8e891db7317c98f83ed46c81eac19e380aed302a22caacefc243582fb191b2
3
+ metadata.gz: 1a6ff7996fca8e8a4d71cbd008cc165f7a34b54437b033846621212b62fd32d7
4
+ data.tar.gz: e33a584975d9be2be1e784b2d6fa0337fa77484f45fa1ad601944340a71fa81a
5
5
  SHA512:
6
- metadata.gz: 91b57da1c9bdcee4674f558e6bc89f0f01b9d60b9f353df2e6a1f8cd6a81bd48c690d821cd786b88827bc811ad8a55b58e40570d758e932491ec6e75534b83ac
7
- data.tar.gz: e5242fd7a3f2a39b569b1e828e99b0767007b2c2693f5c153cb832445d1705ff5b7db6e3aa0c5617154b200caf3aa4bff7583be8c00448015d0740f8052f9870
6
+ metadata.gz: 9cf96db161ff8ebc0f0c7b6915b33794d06e2842bd4f259cc9021ddc60fed1bb6635609df62eca430c144d564bd298fef44487ba6b995f3cfaf992b972b6c9f5
7
+ data.tar.gz: '029652a62061d9acc487832efe653f1c0879358c7b9d39217918738319777b120f3be74bb57e0cdbc4f4d00ca5edefc44fece695d233c71a89be89ab83258683'
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- met_museum (1.0.0)
4
+ met_museum (1.1.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/README.md CHANGED
@@ -26,14 +26,11 @@ Or install it yourself as:
26
26
  require 'met_museum'
27
27
  ```
28
28
  The description of the method is as follows
29
- <details>
30
- <summary>
31
- MetMuseum::Collection.objects
32
- </summary>
33
- <pre>
29
+
30
+
31
+ MetMuseum::Collection.objects
34
32
  ```
35
33
  collection = MetMuseum::Collection.new()
36
-
37
34
  collection.objects
38
35
  => {"total"=>490607,
39
36
  "objectIDs"=>
@@ -41,10 +38,6 @@ collection.objects
41
38
  2,
42
39
  3,
43
40
  4,
44
- 5,
45
- 6,
46
- 7,
47
- 8,
48
41
  --< omit >--
49
42
  820613]}
50
43
 
@@ -59,9 +52,7 @@ collection.objects('2018-10-10')
59
52
  --< omit >--
60
53
  820613]}
61
54
  ```
62
- </pre>
63
- </details>
64
- <hr>
55
+
65
56
  <details>
66
57
  <summary>
67
58
  MetMuseum::Collection.object
@@ -69,7 +60,6 @@ collection.objects('2018-10-10')
69
60
  <pre>
70
61
  ```
71
62
  collection = MetMuseum::Collection.new()
72
-
73
63
  collection.object(1000)
74
64
  => {"objectID"=>1000,
75
65
  "isHighlight"=>false,
@@ -11,6 +11,7 @@ module MetMuseum
11
11
 
12
12
  API_ENDPOINT = "https://collectionapi.metmuseum.org".freeze
13
13
  PUBLIC_URI = "/public/collection/v1/objects".freeze
14
+ SEARCH_URI = "/public/collection/v1/search".freeze
14
15
 
15
16
  HTTP_OK_CODE = 200.freeze
16
17
 
@@ -28,7 +29,7 @@ module MetMuseum
28
29
  def objects(metadataDate = nil)
29
30
  conn = Faraday.new(:url => API_ENDPOINT)
30
31
  response = conn.get PUBLIC_URI, {:metadataDate => metadataDate}
31
- Oj.load(response.body) if response_successful?(response)
32
+ return Oj.load(response.body) if response_successful?(response)
32
33
 
33
34
  raise error_class(response), "Code: #{response.status}, response: #{response.body}"
34
35
  end
@@ -84,10 +85,22 @@ module MetMuseum
84
85
  # @return [Hash<metadataDate, String>] Date metadata was last updated
85
86
  # @return [Hash<repository, String>]
86
87
  # @return [Hash<objectURL, String>] URL to object's page on metmuseum.org
87
- # @return [Hash<total, String>] The total number of publicly-available objects
88
+ # @return [Hash<tags, Array<String>>] An array of subject keyword tags associated with the object
88
89
  def object(objectID)
89
90
  response = Faraday.get "#{API_ENDPOINT}#{PUBLIC_URI}/#{objectID}"
90
- Oj.load(response.body)if response_successful?(response)
91
+ return Oj.load(response.body)if response_successful?(response)
92
+
93
+ raise error_class(response), "Code: #{response.status}, response: #{response.body}"
94
+ end
95
+
96
+ # returns a listing of all Object IDs for objects that contain the search query within the object’s data
97
+ # @param [String] q Returns a listing of all Object IDs for objects that contain the search query within the object’s data
98
+ # @return [Integer] total The total number of publicly-available objects
99
+ # @return [Array<Integer>] objectIDs An array containing the object ID of publicly-available object
100
+ def search(q)
101
+ conn = Faraday.new(:url => API_ENDPOINT)
102
+ response = conn.get SEARCH_URI, {:q => q}
103
+ return Oj.load(response.body)if response_successful?(response)
91
104
 
92
105
  raise error_class(response), "Code: #{response.status}, response: #{response.body}"
93
106
  end
@@ -1,3 +1,3 @@
1
1
  module MetMuseum
2
- VERSION = "1.0.0"
2
+ VERSION = "1.1.0"
3
3
  end
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.0.0
4
+ version: 1.1.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-02-09 00:00:00.000000000 Z
11
+ date: 2019-02-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler