avmtrf1-tools 0.27.1 → 0.28.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: bc1590e048bb7bc9796bdd575bc57e925c636861bd4807e5c48542cb9a03b527
4
- data.tar.gz: b1319b639563051687d546b1801053ac00bec9b84e9add31be091f74a94ff815
3
+ metadata.gz: 74d89accf83c82b82c4cabc7ae771fd0cf7977e6b3a18c1c94e5a7b6d035a7e8
4
+ data.tar.gz: 729168d22da5b1f2418712687afd767cdc1365b70f2ae2cc7bcd138a592c3803
5
5
  SHA512:
6
- metadata.gz: 52e4d1ae9b2aba368c6225ae65e9b6548a74c02c2f0d142ab98c90fbd8bc9e542e6be33c24edd8ee68705d6832fb0c6072cc83d98c963e957922a7113a1b14e3
7
- data.tar.gz: e481c6ccc6057b73d84c8ec76837d5c7e34fba19f2090b72f9a9d1ac2afed7ca6b94886e4262a4a7eb18700c123bb94a1c937b45e016f51985bf9b8d91de1347
6
+ metadata.gz: 16ac680b2e78a38f944afb194892e8655dfbcbc377107a37edfb760b2a17704746972a0f2344c88ee20e3088ed505913b51f07743086e692817ce194d82632b5
7
+ data.tar.gz: 7df63a50a530c9f466f9be161d1e5699abe48e0d29c39d1710e6dc693d165bb9171f18a1c530df3405536ff93202ca3790f1a9190c7f14ef1bae0eac92bc71d6
data/Gemfile CHANGED
@@ -3,3 +3,7 @@
3
3
  source 'https://rubygems.org'
4
4
 
5
5
  gemspec
6
+
7
+ group :oracle do
8
+ gem 'ruby-oci8'
9
+ end
@@ -12,6 +12,7 @@ module Avmtrf1
12
12
  delegate :exec, to: :connection
13
13
 
14
14
  def initialize(connection_string)
15
+ ::Avmtrf1::Oracle::Oci8.require_lib
15
16
  @connection = OCI8.new(connection_string)
16
17
  end
17
18
 
@@ -1,15 +1,21 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'avmtrf1/ruby/gems/dependency'
4
+
3
5
  module Avmtrf1
4
6
  module Oracle
5
7
  module Oci8
6
- NLS_LANG_DEFAULT_VALUE = 'BRAZILIAN PORTUGUESE_BRAZIL.WE8ISO8859P1'
8
+ NLS_LANG_DEFAULT_VALUE = 'BRAZILIAN PORTUGUESE_BRAZIL.UTF8'
7
9
  NLS_LANG_ENVIRONMENT_KEY = 'NLS_LANG'
8
10
 
9
11
  class << self
12
+ def dependency
13
+ @dependency ||= ::Avmtrf1::Ruby::Gems::Dependency.new('ruby-oci8', 'oci8')
14
+ end
15
+
10
16
  def require_lib
11
17
  nls_lang_set
12
- require 'oci8'
18
+ dependency.require_lib
13
19
  end
14
20
 
15
21
  def nls_lang_set
@@ -21,5 +27,3 @@ module Avmtrf1
21
27
  end
22
28
  end
23
29
  end
24
-
25
- ::Avmtrf1::Oracle::Oci8.require_lib
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module Avmtrf1
6
+ module Ruby
7
+ require_sub __FILE__
8
+ end
9
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+
5
+ module Avmtrf1
6
+ module Ruby
7
+ module Gems
8
+ require_sub __FILE__
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+ require 'avmtrf1/ruby/gems/not_found_error'
5
+
6
+ module Avmtrf1
7
+ module Ruby
8
+ module Gems
9
+ class Dependency
10
+ common_constructor :gem_name, :lib_name
11
+
12
+ def require_lib
13
+ require lib_name
14
+ rescue LoadError
15
+ raise ::Avmtrf1::Ruby::Gems::NotFoundError, self
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avmtrf1
4
+ module Ruby
5
+ module Gems
6
+ class NotFoundError < ::StandardError
7
+ attr_reader :dependency
8
+
9
+ def initialize(dependency)
10
+ @dependency = dependency
11
+ super("Gem \"#{dependency.gem_name}\" not found" \
12
+ " (Library required: \"#{dependency.lib_name}\")")
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -4,6 +4,7 @@ require 'aranha/selenium/driver_factory/base'
4
4
  require 'eac_ruby_utils/console/docopt_runner'
5
5
  require 'eac_ruby_utils/require_sub'
6
6
  require 'avmtrf1/tools/version'
7
+ require 'avmtrf1/ruby/gems/not_found_error'
7
8
  require 'eac_ruby_utils/console/speaker'
8
9
 
9
10
  module Avmtrf1
@@ -33,6 +34,17 @@ module Avmtrf1
33
34
  else
34
35
  run_with_subcommand
35
36
  end
37
+ rescue ::Avmtrf1::Ruby::Gems::NotFoundError => e
38
+ on_gem_not_found(e.dependency)
39
+ end
40
+
41
+ private
42
+
43
+ def on_gem_not_found(dependency)
44
+ fatal_error "A gem \"#{dependency.gem_name}\" foi requerida " \
45
+ "(Por \"require '#{dependency.lib_name}'\") e não encontrada. Para instalá-la:\n\n" \
46
+ " gem install #{dependency.gem_name}\n\n" \
47
+ 'Nota: procedimentos adicionais podem ser necessários.'
36
48
  end
37
49
  end
38
50
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avmtrf1
4
4
  module Tools
5
- VERSION = '0.27.1'
5
+ VERSION = '0.28.0'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: avmtrf1-tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.27.1
4
+ version: 0.28.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eduardo H. Bogoni
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-04-24 00:00:00.000000000 Z
11
+ date: 2020-05-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aranha-parsers
@@ -182,20 +182,6 @@ dependencies:
182
182
  - - "~>"
183
183
  - !ruby/object:Gem::Version
184
184
  version: '1.1'
185
- - !ruby/object:Gem::Dependency
186
- name: ruby-oci8
187
- requirement: !ruby/object:Gem::Requirement
188
- requirements:
189
- - - ">="
190
- - !ruby/object:Gem::Version
191
- version: '0'
192
- type: :runtime
193
- prerelease: false
194
- version_requirements: !ruby/object:Gem::Requirement
195
- requirements:
196
- - - ">="
197
- - !ruby/object:Gem::Version
198
- version: '0'
199
185
  - !ruby/object:Gem::Dependency
200
186
  name: eac_ruby_gem_support
201
187
  requirement: !ruby/object:Gem::Requirement
@@ -320,6 +306,10 @@ files:
320
306
  - lib/avmtrf1/rest_provider/entity.rb
321
307
  - lib/avmtrf1/rest_provider/instance.rb
322
308
  - lib/avmtrf1/result.rb
309
+ - lib/avmtrf1/ruby.rb
310
+ - lib/avmtrf1/ruby/gems.rb
311
+ - lib/avmtrf1/ruby/gems/dependency.rb
312
+ - lib/avmtrf1/ruby/gems/not_found_error.rb
323
313
  - lib/avmtrf1/template.rb
324
314
  - lib/avmtrf1/tools.rb
325
315
  - lib/avmtrf1/tools/runner.rb