ebsco-eds 0.1.0.pre → 0.1.2.pre
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.env.test +5 -4
- data/README.md +1 -1
- data/ebsco-eds.gemspec +3 -0
- data/lib/ebsco/eds/options.rb +17 -3
- data/lib/ebsco/eds/session.rb +30 -2
- data/lib/ebsco/eds/version.rb +1 -1
- metadata +44 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6eeda3d3770ecc3ee937791ed356de3e9add67a2
|
4
|
+
data.tar.gz: 0ece96451193882edb73c6fccbb3729145417062
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ac1e31542ec79fc475ac929a9dedf458a82c01d36fe025291fe97b1aee91e4be091071783ebee2764b9925736a6f51e6fb670712746c8c5e2ff557dd2fe01996
|
7
|
+
data.tar.gz: 8cac0ad690067315702fe09e8bad1137912c6b366be732500176e637cc2b7265cd4494e86edbd0e915171e5b1e7011b3a787fa61ec71ff19d5cf892c906aab45
|
data/.env.test
CHANGED
data/README.md
CHANGED
data/ebsco-eds.gemspec
CHANGED
@@ -50,5 +50,8 @@ Gem::Specification.new do |spec|
|
|
50
50
|
spec.add_development_dependency 'minitest', '~> 5.0'
|
51
51
|
spec.add_development_dependency 'simplecov', '~> 0'
|
52
52
|
spec.add_development_dependency 'codecov', '~> 0.1'
|
53
|
+
spec.add_development_dependency 'vcr', '~> 2.8'
|
54
|
+
spec.add_development_dependency 'minitest-vcr', '~> 0.1.1'
|
55
|
+
spec.add_development_dependency 'webmock', '~> 1.17'
|
53
56
|
|
54
57
|
end
|
data/lib/ebsco/eds/options.rb
CHANGED
@@ -255,11 +255,25 @@ module EBSCO
|
|
255
255
|
# facets
|
256
256
|
# ====================================================================================
|
257
257
|
when :include_facets
|
258
|
-
|
258
|
+
@IncludeFacets = value ? 'y' : 'n'
|
259
259
|
|
260
260
|
when :facet_filters
|
261
261
|
@FacetFilters = value
|
262
262
|
|
263
|
+
# # handle solr facets without causing the page to reset to 1 again?
|
264
|
+
# when 'f'
|
265
|
+
#
|
266
|
+
# if value.has_key?('content_provider_facet')
|
267
|
+
# f_filter = {'FilterId' => 1, 'FacetValues' => []}
|
268
|
+
# flist = value['content_provider_facet']
|
269
|
+
# flist.each do |item|
|
270
|
+
# item = eds_sanitize item
|
271
|
+
# f_filter['FacetValues'].push({'Id' => 'ContentProvider', 'Value' => item})
|
272
|
+
# end
|
273
|
+
# @FacetFilters.push f_filter
|
274
|
+
# puts 'FACET FILTERS: ' + @FacetFilters.inspect
|
275
|
+
# end
|
276
|
+
|
263
277
|
# ====================================================================================
|
264
278
|
# sort
|
265
279
|
# ====================================================================================
|
@@ -390,7 +404,7 @@ module EBSCO
|
|
390
404
|
# ====================================================================================
|
391
405
|
# results per page
|
392
406
|
# ====================================================================================
|
393
|
-
when :results_per_page, 'rows', 'per_page'
|
407
|
+
when :results_per_page, 'results_per_page', 'rows', 'per_page'
|
394
408
|
if value.to_i > info.max_results_per_page
|
395
409
|
@ResultsPerPage = info.max_results_per_page
|
396
410
|
else
|
@@ -400,7 +414,7 @@ module EBSCO
|
|
400
414
|
# ====================================================================================
|
401
415
|
# page number
|
402
416
|
# ====================================================================================
|
403
|
-
when :page_number, 'page'
|
417
|
+
when :page_number, 'page_number', 'page'
|
404
418
|
@PageNumber = value.to_i
|
405
419
|
# solr starts at page 0
|
406
420
|
when 'start'
|
data/lib/ebsco/eds/session.rb
CHANGED
@@ -65,6 +65,7 @@ module EBSCO
|
|
65
65
|
@session_token = ''
|
66
66
|
@auth_token = ''
|
67
67
|
@config = {}
|
68
|
+
@guest = true
|
68
69
|
|
69
70
|
eds_config = EBSCO::EDS::Configuration.new
|
70
71
|
if options[:config]
|
@@ -97,8 +98,16 @@ module EBSCO
|
|
97
98
|
|
98
99
|
# these config options can be overridden by environment vars
|
99
100
|
@auth_type = (ENV.has_key? 'EDS_AUTH') ? ENV['EDS_AUTH'] : @config[:auth]
|
100
|
-
@guest = (ENV.has_key? 'EDS_GUEST') ? ENV['EDS_GUEST'] : @config[:guest]
|
101
101
|
@org = (ENV.has_key? 'EDS_ORG') ? ENV['EDS_ORG'] : @config[:org]
|
102
|
+
if ENV.has_key? 'EDS_GUEST'
|
103
|
+
if ['n', 'N', 'no', 'No'].include?(ENV['EDS_GUEST'])
|
104
|
+
@guest = false
|
105
|
+
else
|
106
|
+
@guest = true
|
107
|
+
end
|
108
|
+
else
|
109
|
+
@guest = @config[:guest]
|
110
|
+
end
|
102
111
|
|
103
112
|
# use cache for auth token and info calls?
|
104
113
|
if @config[:use_cache]
|
@@ -229,6 +238,24 @@ module EBSCO
|
|
229
238
|
record
|
230
239
|
end
|
231
240
|
|
241
|
+
# Create a result set with just the record before and after then index item
|
242
|
+
def solr_retrieve_previous_next(options = {})
|
243
|
+
records = []
|
244
|
+
hits = search(options).stat_total_hits
|
245
|
+
options.update(:results_per_page => 1,
|
246
|
+
:page_number => (options['previous-next-index'].to_i) - 1,
|
247
|
+
'page' => (options['previous-next-index'].to_i) - 1)
|
248
|
+
records.push search(options).records.first
|
249
|
+
options.update(:results_per_page => 1,
|
250
|
+
:page_number => (options['previous-next-index'].to_i) + 1,
|
251
|
+
'page' => (options['previous-next-index'].to_i) + 1)
|
252
|
+
records.push search(options).records.first
|
253
|
+
r = empty_results(hits)
|
254
|
+
results = EBSCO::EDS::Results.new(r)
|
255
|
+
results.records = records
|
256
|
+
results.to_solr
|
257
|
+
end
|
258
|
+
|
232
259
|
def solr_retrieve_list(list: [], highlight: nil)
|
233
260
|
records = []
|
234
261
|
if list.any?
|
@@ -672,8 +699,9 @@ module EBSCO
|
|
672
699
|
end
|
673
700
|
|
674
701
|
def create_session_token
|
702
|
+
guest_string = @guest ? 'y' : 'n'
|
675
703
|
resp = do_request(:get, path: @config[:create_session_url] +
|
676
|
-
'?profile=' + @profile + '&guest=' +
|
704
|
+
'?profile=' + @profile + '&guest=' + guest_string +
|
677
705
|
'&displaydatabasename=y')
|
678
706
|
@session_token = resp['SessionToken']
|
679
707
|
end
|
data/lib/ebsco/eds/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ebsco-eds
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2.pre
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bill McKinney
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2017-04-
|
12
|
+
date: 2017-04-19 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: faraday
|
@@ -281,6 +281,48 @@ dependencies:
|
|
281
281
|
- - "~>"
|
282
282
|
- !ruby/object:Gem::Version
|
283
283
|
version: '0.1'
|
284
|
+
- !ruby/object:Gem::Dependency
|
285
|
+
name: vcr
|
286
|
+
requirement: !ruby/object:Gem::Requirement
|
287
|
+
requirements:
|
288
|
+
- - "~>"
|
289
|
+
- !ruby/object:Gem::Version
|
290
|
+
version: '2.8'
|
291
|
+
type: :development
|
292
|
+
prerelease: false
|
293
|
+
version_requirements: !ruby/object:Gem::Requirement
|
294
|
+
requirements:
|
295
|
+
- - "~>"
|
296
|
+
- !ruby/object:Gem::Version
|
297
|
+
version: '2.8'
|
298
|
+
- !ruby/object:Gem::Dependency
|
299
|
+
name: minitest-vcr
|
300
|
+
requirement: !ruby/object:Gem::Requirement
|
301
|
+
requirements:
|
302
|
+
- - "~>"
|
303
|
+
- !ruby/object:Gem::Version
|
304
|
+
version: 0.1.1
|
305
|
+
type: :development
|
306
|
+
prerelease: false
|
307
|
+
version_requirements: !ruby/object:Gem::Requirement
|
308
|
+
requirements:
|
309
|
+
- - "~>"
|
310
|
+
- !ruby/object:Gem::Version
|
311
|
+
version: 0.1.1
|
312
|
+
- !ruby/object:Gem::Dependency
|
313
|
+
name: webmock
|
314
|
+
requirement: !ruby/object:Gem::Requirement
|
315
|
+
requirements:
|
316
|
+
- - "~>"
|
317
|
+
- !ruby/object:Gem::Version
|
318
|
+
version: '1.17'
|
319
|
+
type: :development
|
320
|
+
prerelease: false
|
321
|
+
version_requirements: !ruby/object:Gem::Requirement
|
322
|
+
requirements:
|
323
|
+
- - "~>"
|
324
|
+
- !ruby/object:Gem::Version
|
325
|
+
version: '1.17'
|
284
326
|
description: 'Description: EBSCO EDS API'
|
285
327
|
email:
|
286
328
|
- bmckinney@ebsco.com, efrierson@ebsco.com
|