nypl-collections 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. checksums.yaml +7 -0
  2. data/.document +5 -0
  3. data/Gemfile +31 -0
  4. data/Gemfile.lock +126 -0
  5. data/LICENSE.txt +20 -0
  6. data/README.md +165 -0
  7. data/Rakefile +53 -0
  8. data/VERSION +1 -0
  9. data/coverage/.last_run.json +5 -0
  10. data/coverage/.resultset.json +193 -0
  11. data/coverage/assets/0.8.0/application.css +799 -0
  12. data/coverage/assets/0.8.0/application.js +1559 -0
  13. data/coverage/assets/0.8.0/colorbox/border.png +0 -0
  14. data/coverage/assets/0.8.0/colorbox/controls.png +0 -0
  15. data/coverage/assets/0.8.0/colorbox/loading.gif +0 -0
  16. data/coverage/assets/0.8.0/colorbox/loading_background.png +0 -0
  17. data/coverage/assets/0.8.0/favicon_green.png +0 -0
  18. data/coverage/assets/0.8.0/favicon_red.png +0 -0
  19. data/coverage/assets/0.8.0/favicon_yellow.png +0 -0
  20. data/coverage/assets/0.8.0/loading.gif +0 -0
  21. data/coverage/assets/0.8.0/magnify.png +0 -0
  22. data/coverage/assets/0.8.0/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  23. data/coverage/assets/0.8.0/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  24. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  25. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  26. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  27. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  28. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  29. data/coverage/assets/0.8.0/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  30. data/coverage/assets/0.8.0/smoothness/images/ui-icons_222222_256x240.png +0 -0
  31. data/coverage/assets/0.8.0/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  32. data/coverage/assets/0.8.0/smoothness/images/ui-icons_454545_256x240.png +0 -0
  33. data/coverage/assets/0.8.0/smoothness/images/ui-icons_888888_256x240.png +0 -0
  34. data/coverage/assets/0.8.0/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  35. data/coverage/index.html +770 -0
  36. data/lib/nypl_collections.rb +19 -0
  37. data/lib/nypl_collections/client.rb +122 -0
  38. data/lib/nypl_collections/configuration.rb +15 -0
  39. data/nypl-collections.gemspec +103 -0
  40. data/spec/fixtures/return_captures_for_uuid.json +1 -0
  41. data/spec/nypl_collections/client_spec.rb +29 -0
  42. data/spec/nypl_collections/configuration_spec.rb +1 -0
  43. data/spec/nypl_collections_spec.rb +19 -0
  44. data/spec/spec_helper.rb +30 -0
  45. metadata +200 -0
@@ -0,0 +1,19 @@
1
+ require 'nypl_collections/client'
2
+
3
+ module Collections
4
+ class << self
5
+
6
+ def new
7
+ @client ||= Collections::Client.new
8
+ end
9
+
10
+ def method_missing(method, *args, &block)
11
+ return super unless new.respond_to?(method)
12
+ new.send(method, *args, &block)
13
+ end
14
+
15
+ def respond_to?(method, include_private=false)
16
+ new.respond_to?(method, include_private) || super(method, include_private)
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,122 @@
1
+ require 'json'
2
+ require 'httparty'
3
+ require 'nypl_collections/configuration'
4
+ require 'pry'
5
+ require 'dotenv'
6
+ Dotenv.load "../.env"
7
+
8
+ module Collections
9
+ class Client
10
+ include Collections::Configuration
11
+ include HTTParty
12
+
13
+ BASE_URL = "http://api.repo.nypl.org/api/v1/items/"
14
+ BASE_URL
15
+
16
+ def initialize
17
+ reset
18
+ end
19
+
20
+ def set_urlparam(url, name, options)
21
+ return unless options[name]
22
+ url << "&#{name.to_s.gsub(/ /,'_')}=#{options[name]}"
23
+ end
24
+
25
+ # Return all capture UUIDs, imageIDs, itemLinks and
26
+ # titles (optional) for any UUID
27
+ def return_captures_for_uuid(uuid, options= {})
28
+ url = BASE_URL.clone
29
+ token = auth_token
30
+ uuid = uuid
31
+
32
+ url << uuid + "?"
33
+
34
+ if options[:withTitles]
35
+ title = options[:withTitles]
36
+ url << "withTitles=#{title}"
37
+ end
38
+
39
+ [:per_page, :page].each do |thing|
40
+ set_urlparam(url, thing, options)
41
+ end
42
+
43
+ HTTParty.get(url,
44
+ :headers => {
45
+ "Authorization" => "Token token=#{token}"
46
+ })
47
+ end
48
+
49
+ # Return uuid for a local identifier.
50
+ # Local_identifier field names can be found in the
51
+ # "type" attribute of the MODS <identifier> element
52
+ def return_uuid_for_local_identifier(local_id_name, local_id_value)
53
+ url = BASE_URL.clone
54
+ token = auth_token
55
+ local_id_name = local_id_name
56
+ local_id_value = local_id_value
57
+
58
+ url << "#{local_id_name}/#{local_id_value}"
59
+
60
+ HTTParty.get(url,
61
+ :headers => {
62
+ "Authorization" => "Token token=#{token}"
63
+ })
64
+ end
65
+
66
+
67
+ # search in fields: identifier, typeOfResource, note
68
+ # title, namePart, place, publisher, topic,
69
+ # geographic, temporal, genre, physicalLocation, and shelfLocator
70
+ # enter search_terms
71
+ def search_in_mods_field(search_terms, field)
72
+ url = BASE_URL.clone
73
+ token = auth_token
74
+ search_terms = search_terms.gsub(/ /, "-").gsub(/_/, "-")
75
+ field = field
76
+
77
+ url << "search?q=#{search_terms}&field=#{field}"
78
+
79
+ HTTParty.get(url,
80
+ :headers => {
81
+ "Authorization" => "Token token=#{token}"
82
+ })
83
+ end
84
+
85
+ # same as search_in_mods_fields but don't need to specify a field
86
+ def search_all_mods_fields(search_terms)
87
+ url = BASE_URL.clone
88
+ token = auth_token
89
+ search_terms = search_terms.gsub(/ /, "-").gsub(/_/, "-")
90
+
91
+ url << "search?q=#{search_terms}"
92
+
93
+ HTTParty.get(url,
94
+ :headers => {
95
+ "Authorization" => "Token token=#{token}"
96
+ })
97
+ end
98
+
99
+ def return_mods_record_for_capture_uuid(uuid)
100
+ url = BASE_URL.clone
101
+ token = auth_token
102
+ uuid = uuid
103
+
104
+ url << "mods/#{uuid}"
105
+
106
+ HTTParty.get(url,
107
+ :headers => {
108
+ "Authorization" => "Token token=#{token}"
109
+ })
110
+
111
+ end
112
+
113
+ end
114
+ end
115
+
116
+
117
+ # @client = Collections::Client.new
118
+ # @client.configure do |config|
119
+ # config.auth_token = ENV['AUTH_TOKEN']
120
+ # binding.pry
121
+ # end
122
+ binding.pry
@@ -0,0 +1,15 @@
1
+ module Collections
2
+ module Configuration
3
+
4
+ attr_accessor :auth_token
5
+
6
+ def configure
7
+ yield self
8
+ end
9
+
10
+ def reset
11
+ self.auth_token = nil
12
+ self
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,103 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = "nypl-collections"
8
+ s.version = "0.0.1"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Emma Spencer"]
12
+ s.date = "2013-12-12"
13
+ s.description = "A gem for interacting with the NYPL Digital Collections API"
14
+ s.email = "emma.n.spencer@gmail.com"
15
+ s.extra_rdoc_files = [
16
+ "LICENSE.txt",
17
+ "README.md"
18
+ ]
19
+ s.files = [
20
+ ".document",
21
+ "Gemfile",
22
+ "Gemfile.lock",
23
+ "LICENSE.txt",
24
+ "README.md",
25
+ "Rakefile",
26
+ "VERSION",
27
+ "coverage/.last_run.json",
28
+ "coverage/.resultset.json",
29
+ "coverage/assets/0.8.0/application.css",
30
+ "coverage/assets/0.8.0/application.js",
31
+ "coverage/assets/0.8.0/colorbox/border.png",
32
+ "coverage/assets/0.8.0/colorbox/controls.png",
33
+ "coverage/assets/0.8.0/colorbox/loading.gif",
34
+ "coverage/assets/0.8.0/colorbox/loading_background.png",
35
+ "coverage/assets/0.8.0/favicon_green.png",
36
+ "coverage/assets/0.8.0/favicon_red.png",
37
+ "coverage/assets/0.8.0/favicon_yellow.png",
38
+ "coverage/assets/0.8.0/loading.gif",
39
+ "coverage/assets/0.8.0/magnify.png",
40
+ "coverage/assets/0.8.0/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png",
41
+ "coverage/assets/0.8.0/smoothness/images/ui-bg_flat_75_ffffff_40x100.png",
42
+ "coverage/assets/0.8.0/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png",
43
+ "coverage/assets/0.8.0/smoothness/images/ui-bg_glass_65_ffffff_1x400.png",
44
+ "coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_dadada_1x400.png",
45
+ "coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png",
46
+ "coverage/assets/0.8.0/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png",
47
+ "coverage/assets/0.8.0/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png",
48
+ "coverage/assets/0.8.0/smoothness/images/ui-icons_222222_256x240.png",
49
+ "coverage/assets/0.8.0/smoothness/images/ui-icons_2e83ff_256x240.png",
50
+ "coverage/assets/0.8.0/smoothness/images/ui-icons_454545_256x240.png",
51
+ "coverage/assets/0.8.0/smoothness/images/ui-icons_888888_256x240.png",
52
+ "coverage/assets/0.8.0/smoothness/images/ui-icons_cd0a0a_256x240.png",
53
+ "coverage/index.html",
54
+ "lib/nypl_collections.rb",
55
+ "lib/nypl_collections/client.rb",
56
+ "lib/nypl_collections/configuration.rb",
57
+ "nypl-collections.gemspec",
58
+ "spec/fixtures/return_captures_for_uuid.json",
59
+ "spec/nypl_collections/client_spec.rb",
60
+ "spec/nypl_collections/configuration_spec.rb",
61
+ "spec/nypl_collections_spec.rb",
62
+ "spec/spec_helper.rb"
63
+ ]
64
+ s.homepage = "http://github.com/enspencer/nypl-collections"
65
+ s.licenses = ["MIT"]
66
+ s.require_paths = ["lib"]
67
+ s.rubygems_version = "2.0.6"
68
+ s.summary = "A gem for interacting with the NYPL Digital Collections API"
69
+
70
+ if s.respond_to? :specification_version then
71
+ s.specification_version = 4
72
+
73
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
74
+ s.add_runtime_dependency(%q<httparty>, [">= 0"])
75
+ s.add_runtime_dependency(%q<dotenv>, [">= 0"])
76
+ s.add_runtime_dependency(%q<rake>, [">= 0"])
77
+ s.add_development_dependency(%q<shoulda>, [">= 0"])
78
+ s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
79
+ s.add_development_dependency(%q<bundler>, ["~> 1.0"])
80
+ s.add_development_dependency(%q<jeweler>, ["~> 1.8.7"])
81
+ s.add_development_dependency(%q<pry>, [">= 0"])
82
+ else
83
+ s.add_dependency(%q<httparty>, [">= 0"])
84
+ s.add_dependency(%q<dotenv>, [">= 0"])
85
+ s.add_dependency(%q<rake>, [">= 0"])
86
+ s.add_dependency(%q<shoulda>, [">= 0"])
87
+ s.add_dependency(%q<rdoc>, ["~> 3.12"])
88
+ s.add_dependency(%q<bundler>, ["~> 1.0"])
89
+ s.add_dependency(%q<jeweler>, ["~> 1.8.7"])
90
+ s.add_dependency(%q<pry>, [">= 0"])
91
+ end
92
+ else
93
+ s.add_dependency(%q<httparty>, [">= 0"])
94
+ s.add_dependency(%q<dotenv>, [">= 0"])
95
+ s.add_dependency(%q<rake>, [">= 0"])
96
+ s.add_dependency(%q<shoulda>, [">= 0"])
97
+ s.add_dependency(%q<rdoc>, ["~> 3.12"])
98
+ s.add_dependency(%q<bundler>, ["~> 1.0"])
99
+ s.add_dependency(%q<jeweler>, ["~> 1.8.7"])
100
+ s.add_dependency(%q<pry>, [">= 0"])
101
+ end
102
+ end
103
+
@@ -0,0 +1 @@
1
+ {"nyplAPI":{"request":{"uuid":"5fa75050-c6c7-012f-e24b-58d385a7bc34","perPage":"10","page":"1","totalPages":"13","startTime":"Beginning of Time","endTime":"Till Now"},"response":{"headers":{"status":"success","code":"200","message":"ok"},"numResults":"125","capture":[{"uuid":"510d47e3-6c3a-a3d9-e040-e00a18064a99","typeOfResource":"still image","imageID":"1582661","sortString":"0000000001|0000000001|0000000001","itemLink":"http://digitalgallery.nypl.org/nypldigital/id?1582661","title":"Title page.]","dateDigitized":"2012-08-16T00:34:10Z"},{"uuid":"510d47e3-6c3b-a3d9-e040-e00a18064a99","typeOfResource":"still image","imageID":"1582662","sortString":"0000000001|0000000002|0000000001","itemLink":"http://digitalgallery.nypl.org/nypldigital/id?1582662","title":"Agnolo Gaddi, Louvre, 758. [The blessed virgin ascending steps of a temple.]","dateDigitized":"2012-08-16T00:34:10Z"},{"uuid":"510d47e3-6c3c-a3d9-e040-e00a18064a99","typeOfResource":"still image","imageID":"1582663","sortString":"0000000001|0000000003|0000000001","itemLink":"http://digitalgallery.nypl.org/nypldigital/id?1582663","title":"Fra Angelico, British museum, 162. [The youthful David with a crown on his curly head, sitting on a settle, singing and playing on the psaltery.]","dateDigitized":"2012-08-16T00:34:10Z"},{"uuid":"510d47e3-6c3d-a3d9-e040-e00a18064a99","typeOfResource":"still image","imageID":"1582664","sortString":"0000000001|0000000004|0000000001","itemLink":"http://digitalgallery.nypl.org/nypldigital/id?1582664","title":"Fra Angelico, Windsor, 163. [Bust of St. Lawrence.]","dateDigitized":"2012-08-16T00:34:10Z"},{"uuid":"510d47e3-6c3e-a3d9-e040-e00a18064a99","typeOfResource":"still image","imageID":"1582665","sortString":"0000000001|0000000005|0000000001","itemLink":"http://digitalgallery.nypl.org/nypldigital/id?1582665","title":"Fra Angelico, Windsor, 163 verso. [St. Lawrence, a woman holding a child, and a youth with clasped hands.]","dateDigitized":"2012-08-16T00:34:10Z"},{"uuid":"510d47e3-6c3f-a3d9-e040-e00a18064a99","typeOfResource":"still image","imageID":"1582666","sortString":"0000000001|0000000006|0000000001","itemLink":"http://digitalgallery.nypl.org/nypldigital/id?1582666","title":"Domenico di Michelino, Louvre, 1752. [Group of saints.]","dateDigitized":"2012-08-16T00:34:10Z"},{"uuid":"510d47e3-6c40-a3d9-e040-e00a18064a99","typeOfResource":"still image","imageID":"1582667","sortString":"0000000001|0000000007|0000000001","itemLink":"http://digitalgallery.nypl.org/nypldigital/id?1582667","title":"Benozzo, Dresden, 532. [The full-length figure of St. Michael holding the hilt of a sword in his right hand, and a globe in his left..]","dateDigitized":"2012-08-16T00:34:10Z"},{"uuid":"510d47e3-6c41-a3d9-e040-e00a18064a99","typeOfResource":"still image","imageID":"1582668","sortString":"0000000001|0000000008|0000000001","itemLink":"http://digitalgallery.nypl.org/nypldigital/id?1582668","title":"Benozzo, British museum, 540. [The Madonna appearing to a girl saint, who sits up in her bed.]","dateDigitized":"2012-08-16T00:34:10Z"},{"uuid":"510d47e3-6c42-a3d9-e040-e00a18064a99","typeOfResource":"still image","imageID":"1582669","sortString":"0000000001|0000000009|0000000001","itemLink":"http://digitalgallery.nypl.org/nypldigital/id?1582669","title":"Benozzo, Uffizi, 537. [A cardinal followed by an acolyte.]","dateDigitized":"2012-08-16T00:34:10Z"},{"uuid":"510d47e3-6c43-a3d9-e040-e00a18064a99","typeOfResource":"still image","imageID":"1582670","sortString":"0000000001|0000000010|0000000001","itemLink":"http://digitalgallery.nypl.org/nypldigital/id?1582670","title":"Benozzo, British museum, 542. [A bare-headed young man, in a cloak, pointing with his right hand as he walks.]","dateDigitized":"2012-08-16T00:34:10Z"}]}}}
@@ -0,0 +1,29 @@
1
+ require 'spec_helper'
2
+ require 'pry'
3
+
4
+ describe Collections::Client do
5
+ before do
6
+ @client = Collections::Client.new
7
+ @client.configure do |config|
8
+ config.auth_token = "abc123"
9
+ end
10
+ end
11
+
12
+ describe '#return_captures_for_uuid' do
13
+ before do
14
+ stub_request(:get, "http://api.repo.nypl.org/api/v1/items/5fa75050-c6c7-012f-e24b-58d385a7bc34?withTitles=yes&per_page=10").
15
+ with(:headers => {'Authorization'=>'Token token=abc123'}).
16
+ to_return(body: fixture('return_captures_for_uuid.json'))
17
+ end
18
+
19
+ it "fetches the first ten results" do
20
+ results = @client.return_captures_for_uuid('5fa75050-c6c7-012f-e24b-58d385a7bc34', withTitles: 'yes', per_page: '10')
21
+ results = JSON.parse(results.body)
22
+ expect(a_request(:get, "http://api.repo.nypl.org/api/v1/items/5fa75050-c6c7-012f-e24b-58d385a7bc34?withTitles=yes&per_page=10").
23
+ with(:headers => {'Authorization'=>'Token token=abc123'})).
24
+ to have_been_made
25
+ expect(results.first[1].first[1].first[1]).to eq "5fa75050-c6c7-012f-e24b-58d385a7bc34"
26
+ end
27
+ end
28
+
29
+ end
@@ -0,0 +1 @@
1
+ # Nothing needed here, already has full test coverage
@@ -0,0 +1,19 @@
1
+ require 'spec_helper'
2
+
3
+ describe Collections do
4
+ describe '.new' do
5
+ it "returns a Collections::Client" do
6
+ expect(Collections.new).to be_a Collections::Client
7
+ end
8
+ end
9
+
10
+ describe ".configure" do
11
+ it "sets auth_token" do
12
+ Collections.configure do |config|
13
+ config.auth_token = "secret"
14
+ end
15
+
16
+ expect(Collections.auth_token).to eq "secret"
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,30 @@
1
+ require 'simplecov'
2
+ require 'coveralls'
3
+
4
+ SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
5
+ SimpleCov::Formatter::HTMLFormatter,
6
+ Coveralls::SimpleCov::Formatter
7
+ ]
8
+ SimpleCov.start
9
+
10
+ require './lib/nypl_collections'
11
+ require 'rspec'
12
+ require 'webmock/rspec'
13
+ require 'json'
14
+
15
+ RSpec.configure do |config|
16
+ config.order = 'random'
17
+ config.expect_with :rspec do |c|
18
+ c.syntax = :expect
19
+ end
20
+ end
21
+
22
+ def fixture_path
23
+ File.expand_path('../fixtures', __FILE__)
24
+ end
25
+
26
+ def fixture(file)
27
+ File.new(fixture_path + '/' + file)
28
+ end
29
+
30
+ Coveralls.wear!
metadata ADDED
@@ -0,0 +1,200 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: nypl-collections
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Emma Spencer
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2013-12-12 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: httparty
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: dotenv
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rake
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: shoulda
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '>='
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rdoc
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ~>
74
+ - !ruby/object:Gem::Version
75
+ version: '3.12'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ~>
81
+ - !ruby/object:Gem::Version
82
+ version: '3.12'
83
+ - !ruby/object:Gem::Dependency
84
+ name: bundler
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ~>
88
+ - !ruby/object:Gem::Version
89
+ version: '1.0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ~>
95
+ - !ruby/object:Gem::Version
96
+ version: '1.0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: jeweler
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ~>
102
+ - !ruby/object:Gem::Version
103
+ version: 1.8.7
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ~>
109
+ - !ruby/object:Gem::Version
110
+ version: 1.8.7
111
+ - !ruby/object:Gem::Dependency
112
+ name: pry
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - '>='
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ description: A gem for interacting with the NYPL Digital Collections API
126
+ email: emma.n.spencer@gmail.com
127
+ executables: []
128
+ extensions: []
129
+ extra_rdoc_files:
130
+ - LICENSE.txt
131
+ - README.md
132
+ files:
133
+ - .document
134
+ - Gemfile
135
+ - Gemfile.lock
136
+ - LICENSE.txt
137
+ - README.md
138
+ - Rakefile
139
+ - VERSION
140
+ - coverage/.last_run.json
141
+ - coverage/.resultset.json
142
+ - coverage/assets/0.8.0/application.css
143
+ - coverage/assets/0.8.0/application.js
144
+ - coverage/assets/0.8.0/colorbox/border.png
145
+ - coverage/assets/0.8.0/colorbox/controls.png
146
+ - coverage/assets/0.8.0/colorbox/loading.gif
147
+ - coverage/assets/0.8.0/colorbox/loading_background.png
148
+ - coverage/assets/0.8.0/favicon_green.png
149
+ - coverage/assets/0.8.0/favicon_red.png
150
+ - coverage/assets/0.8.0/favicon_yellow.png
151
+ - coverage/assets/0.8.0/loading.gif
152
+ - coverage/assets/0.8.0/magnify.png
153
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png
154
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_flat_75_ffffff_40x100.png
155
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png
156
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_glass_65_ffffff_1x400.png
157
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_dadada_1x400.png
158
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png
159
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png
160
+ - coverage/assets/0.8.0/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png
161
+ - coverage/assets/0.8.0/smoothness/images/ui-icons_222222_256x240.png
162
+ - coverage/assets/0.8.0/smoothness/images/ui-icons_2e83ff_256x240.png
163
+ - coverage/assets/0.8.0/smoothness/images/ui-icons_454545_256x240.png
164
+ - coverage/assets/0.8.0/smoothness/images/ui-icons_888888_256x240.png
165
+ - coverage/assets/0.8.0/smoothness/images/ui-icons_cd0a0a_256x240.png
166
+ - coverage/index.html
167
+ - lib/nypl_collections.rb
168
+ - lib/nypl_collections/client.rb
169
+ - lib/nypl_collections/configuration.rb
170
+ - nypl-collections.gemspec
171
+ - spec/fixtures/return_captures_for_uuid.json
172
+ - spec/nypl_collections/client_spec.rb
173
+ - spec/nypl_collections/configuration_spec.rb
174
+ - spec/nypl_collections_spec.rb
175
+ - spec/spec_helper.rb
176
+ homepage: http://github.com/enspencer/nypl-collections
177
+ licenses:
178
+ - MIT
179
+ metadata: {}
180
+ post_install_message:
181
+ rdoc_options: []
182
+ require_paths:
183
+ - lib
184
+ required_ruby_version: !ruby/object:Gem::Requirement
185
+ requirements:
186
+ - - '>='
187
+ - !ruby/object:Gem::Version
188
+ version: '0'
189
+ required_rubygems_version: !ruby/object:Gem::Requirement
190
+ requirements:
191
+ - - '>='
192
+ - !ruby/object:Gem::Version
193
+ version: '0'
194
+ requirements: []
195
+ rubyforge_project:
196
+ rubygems_version: 2.0.6
197
+ signing_key:
198
+ specification_version: 4
199
+ summary: A gem for interacting with the NYPL Digital Collections API
200
+ test_files: []