alexandrite 0.1.2.pre.alpha → 0.1.3.pre.alpha

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1904340a4469d9f82f1d42d16a58cdd7a63e0a23711ed040d20c63648164d4fc
4
- data.tar.gz: a6e306d3416403661661ed1bee823d43bd332f446cb1e1ee61e1529c8f5362aa
3
+ metadata.gz: 35890f7e1386bc1f6d60ac0d68efd032288f1b4c448e5414c4a6bde38469a262
4
+ data.tar.gz: 5b29ae9057b620bc9649889b86587a77b1ecaf9eee4549d339293657e44ff95c
5
5
  SHA512:
6
- metadata.gz: 40f3d5f4f06ce58a3f99156f4a26e399cb8b3e1c852a34de923947aa1b5cad75f39a2d75cc39ed86fa2a765292318ec890e5acc201fa922d861b91618e4d1d96
7
- data.tar.gz: 0fc0a88be83ab17e5753cd389dac7de71ecffaa6915e59d7047a5dd4dc547b84a7fb0a2231be8e22fd911cf162945ad2fa16dafa531af82b0891f6539e22d3eb
6
+ metadata.gz: 4655704b09257367b07cb36ffaa6ecfc6bd5fd7991f5066791b48a351dfd39f297a517497595122f6312eff2d98c4999593a999a72d96653a6ded608e92fb39f
7
+ data.tar.gz: 5d12307befe3fee203ed3e0e5c8fe66cb8fa13e10e7b3586023062ad7be124c96f2fd174755181a20ce9290a334efc3720749dcdc1610cd8f9def5608095771b
data/Gemfile CHANGED
@@ -6,5 +6,6 @@ source 'https://rubygems.org'
6
6
  gemspec
7
7
 
8
8
  gem 'faraday'
9
+ gem 'logger'
9
10
  gem 'faraday-decode_xml'
10
11
  gem 'rubocop'
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Alexandrite
4
- VERSION = '0.1.2-alpha'
4
+ VERSION = '0.1.3-alpha'
5
5
  end
data/lib/alexandrite.rb CHANGED
@@ -21,9 +21,11 @@ module Alexandrite
21
21
  @result = search_with(key, query)
22
22
  end
23
23
 
24
- # @return [Alexandrite::BookData]
24
+ # @return [nil]
25
25
  def self.create_from_google(key, query)
26
26
  Alexandrite::BookData.create_data(get_volume_info(key, query))
27
+ rescue StandardError => e
28
+ Alexandrite::BookData.create_data({ :error_message => e.message, 'origin' => 'Google API' })
27
29
  end
28
30
  end
29
31
 
@@ -58,8 +60,14 @@ module Alexandrite
58
60
  end
59
61
 
60
62
  def create_book(key, query)
63
+ log = Logger.new(STDOUT)
64
+ log.info "Fetching book info from Google API. Key: #{key}. Query: #{query}"
61
65
  book = API[:google].create_from_google(key, query)
62
- return API[:oclc].create_from_oclc(key, query) if book[:error_message]
66
+ if book[:error_message]
67
+ log.warn "Failing when fetching book info. Error message: #{book[:error_message]}"
68
+ log.info "Fetching book info from OCLC API. Key: #{key}. Query: #{query}"
69
+ return API[:oclc].create_from_oclc(key, query)
70
+ end
63
71
 
64
72
  book
65
73
  end
@@ -69,8 +77,10 @@ module Alexandrite
69
77
  # @return [Array<Alexandrite::BookData]
70
78
  def bulk_create(key, data)
71
79
  bookshelf = []
80
+ log = Logger.new(STDOUT)
72
81
  data.each do |query|
73
82
  book = create_book(key, query)
83
+ log.info "Book created. Key #{key}. Query: #{query}. Source: #{book[:data_source]}"
74
84
  bookshelf << book
75
85
  end
76
86
 
@@ -94,6 +94,8 @@ module Alexandrite
94
94
 
95
95
  def create_new_book(query)
96
96
  Alexandrite::BookData.create_data(get_book_data(query.result))
97
+ rescue StandardError => e
98
+ Alexandrite::BookData.create_data({ :error_message => e.message, 'origin' => 'OCLC API' })
97
99
  end
98
100
 
99
101
  def handle_error_creating_book
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alexandrite
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2.pre.alpha
4
+ version: 0.1.3.pre.alpha
5
5
  platform: ruby
6
6
  authors:
7
7
  - J. P. Pérez-Tejada
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-25 00:00:00.000000000 Z
11
+ date: 2023-02-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -189,7 +189,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
189
189
  - !ruby/object:Gem::Version
190
190
  version: 1.3.1
191
191
  requirements: []
192
- rubygems_version: 3.4.5
192
+ rubygems_version: 3.4.6
193
193
  signing_key:
194
194
  specification_version: 4
195
195
  summary: Tools for fetching books data from Google and OCLC