cfgdatabase 1.1.1 → 1.2.1

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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/app-database.rb +14 -6
  3. metadata +16 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: aab950fe6ed48722462c348fca86a095c0055315857b1987cd53f47ce8f91a24
4
- data.tar.gz: 4c5a5e110780ac27af1ef46e2eab019ecaaff6886c7701628cd0ae5c219593af
3
+ metadata.gz: 144cb59dd305e679f94158b1103ca8160c8ecfbf36f704636bde44f3fc938059
4
+ data.tar.gz: dc8f67fd9838cfa0da8a62724c4047f67b41fe558bd913f20b8d1848f27c99a9
5
5
  SHA512:
6
- metadata.gz: eb7f89f857e1cc7feda3f738084d23ed9abe590e287721ec092797341453cfcafe12e1fd673ee0bcc55794a3c766377a30b5b48de31cd2ee9ff2341df962d27d
7
- data.tar.gz: faab68ab131cc4e173d0510d5a7aa07798c9bee2fe009f6b5b110ba601693e7947e7af907f280952e0a264acc599184e4b770f46a27ced2fb9d41cdb642dc974
6
+ metadata.gz: 14f7249d7d0c553fe90ce7bfe33e705c60b4fcc277895e73402f8d398f9cb5b3bebeedc342f7a5f266fabf1ab094bf583335807a0ecfe71862637e3059eb3521
7
+ data.tar.gz: 49ea220c597d3b32479b3182e4c7cd0ed8a49a8ffb7a8057caa3a77f8d24fc67e48cc24f6b75fca18b7d9aa783a6f9026017ebe85a4c5550a428fa2aa4a59535
data/lib/app-database.rb CHANGED
@@ -1,5 +1,4 @@
1
1
  require 'sequel'
2
- require 'singleton'
3
2
  require 'app-config'
4
3
  require 'app-logger'
5
4
 
@@ -10,16 +9,15 @@ require 'app-logger'
10
9
  # Предполагается использование глобальной Cfg для настроек
11
10
 
12
11
  module App
13
- class Database
14
- include Singleton
12
+ module Database
15
13
  attr_reader :db
16
-
17
14
  ##
18
15
  # Ищем секцию настроек Cfg.db
19
- def initialize
16
+ module_function
17
+ def init
20
18
  raise ArgumentError.new("Cfg not found!") if ! defined?( ::Cfg ) || ! Cfg.db || Cfg.db.empty?
21
19
  if (! defined? @db ) || ( @db.nil? ) || ( ! @db ) || ( ! @db.test_connection )
22
- Log.info{ "БД #{ Cfg.db.database }." }
20
+ Log.debug{ "БД #{ Cfg.db.database }." }
23
21
  Sequel.extension :pg_array, :pg_inet, :pg_json, :pg_json_ops, :pg_array, :pg_array_ops, :pg_row, :pg_hstore, :pg_json_ops
24
22
  Sequel::Model.raise_on_save_failure = false
25
23
  Sequel::Model.plugin :validation_helpers
@@ -39,5 +37,15 @@ module App
39
37
  return @db
40
38
  end
41
39
 
40
+ def remove
41
+ if defined?( Db )
42
+ Db.disconnect if @db.test_connection
43
+ Kernel.send :remove_const, 'Db'
44
+ end
45
+ end
46
+
47
+ def connected?
48
+ !! ( defined?( Db ) && Db.test_connection )
49
+ end
42
50
  end
43
51
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cfgdatabase
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - deemytch
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-05-26 00:00:00.000000000 Z
11
+ date: 2020-05-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sequel
@@ -52,6 +52,20 @@ dependencies:
52
52
  - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: pg
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
55
69
  description:
56
70
  email: aspamkiller@yandex.ru
57
71
  executables: []