db_meta 0.2.7 → 0.5.0
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 +5 -5
- data/.ruby-version +1 -0
- data/.travis.yml +33 -10
- data/.travis/oracle/download.sh +14 -0
- data/.travis/oracle/install.sh +32 -0
- data/.travis/setup_accounts.sh +8 -0
- data/CHANGELOG.md +62 -24
- data/Gemfile +1 -1
- data/Gemfile.lock +48 -19
- data/README.md +2 -1
- data/Rakefile +2 -1
- data/db_meta.gemspec +17 -16
- data/docker/README.md +42 -0
- data/lib/db_meta.rb +10 -14
- data/lib/db_meta/abstract.rb +11 -21
- data/lib/db_meta/constant.rb +23 -25
- data/lib/db_meta/logger.rb +4 -7
- data/lib/db_meta/oracle/base.rb +9 -11
- data/lib/db_meta/oracle/connection.rb +3 -4
- data/lib/db_meta/oracle/helper.rb +7 -9
- data/lib/db_meta/oracle/objects.rb +45 -45
- data/lib/db_meta/oracle/oracle.rb +34 -30
- data/lib/db_meta/oracle/types/column.rb +15 -17
- data/lib/db_meta/oracle/types/comment.rb +2 -5
- data/lib/db_meta/oracle/types/constraint.rb +29 -32
- data/lib/db_meta/oracle/types/constraint_collection.rb +4 -6
- data/lib/db_meta/oracle/types/database_link.rb +4 -5
- data/lib/db_meta/oracle/types/function.rb +4 -5
- data/lib/db_meta/oracle/types/grant.rb +9 -10
- data/lib/db_meta/oracle/types/grant_collection.rb +4 -6
- data/lib/db_meta/oracle/types/index.rb +14 -8
- data/lib/db_meta/oracle/types/job.rb +2 -3
- data/lib/db_meta/oracle/types/lob.rb +2 -3
- data/lib/db_meta/oracle/types/materialized_view.rb +15 -18
- data/lib/db_meta/oracle/types/package.rb +7 -8
- data/lib/db_meta/oracle/types/package_body.rb +2 -3
- data/lib/db_meta/oracle/types/procedure.rb +4 -5
- data/lib/db_meta/oracle/types/queue.rb +24 -26
- data/lib/db_meta/oracle/types/sequence.rb +7 -8
- data/lib/db_meta/oracle/types/synonym.rb +6 -7
- data/lib/db_meta/oracle/types/synonym_collection.rb +4 -6
- data/lib/db_meta/oracle/types/table.rb +32 -35
- data/lib/db_meta/oracle/types/table_data_collection.rb +24 -19
- data/lib/db_meta/oracle/types/trigger.rb +12 -14
- data/lib/db_meta/oracle/types/type.rb +6 -7
- data/lib/db_meta/oracle/types/type_body.rb +2 -3
- data/lib/db_meta/oracle/types/view.rb +12 -14
- data/lib/db_meta/version.rb +1 -1
- data/todo.txt +1 -0
- metadata +33 -14
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 3bb752e54793946b7bcd874d25439d559f4d400e7f5c2b30da635513ba05c2c4
|
|
4
|
+
data.tar.gz: fea95107d75504c47ec7df81aad4ea87c7eb919d99263e4acaf36fafedbaf197
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 7282a69c1008c4eecb4975edd5d7699e0c5a2e8246ef70a8b98ad8b0bb424a0807657df876f20d406a53e106e3bc42ac2db492b7530c4d5edc22ef23f22341e4
|
|
7
|
+
data.tar.gz: 66e54866798847a1de4f46741ececf9cf797fdaecb9ee46ce2fd65b92452c1e019e1f9c9858c21eb0515ad733d3bd2282240cfc69d3d54206f020d2ca9b80ff6
|
data/.ruby-version
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
2.6.6
|
data/.travis.yml
CHANGED
|
@@ -1,12 +1,35 @@
|
|
|
1
|
+
sudo: required
|
|
2
|
+
|
|
3
|
+
env:
|
|
4
|
+
global:
|
|
5
|
+
- ORACLE_COOKIE=sqldev
|
|
6
|
+
- ORACLE_FILE=oracle11g/xe/oracle-xe-11.2.0-1.0.x86_64.rpm.zip
|
|
7
|
+
- ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe
|
|
8
|
+
- NLS_LANG=AMERICAN_AMERICA.AL32UTF8
|
|
9
|
+
- ORACLE_BASE=/u01/app/oracle
|
|
10
|
+
- LD_LIBRARY_PATH=$ORACLE_HOME/lib
|
|
11
|
+
- PATH=$PATH:$ORACLE_HOME/jdbc/lib
|
|
12
|
+
- DATABASE_VERSION=11.2.0.2
|
|
13
|
+
- ORACLE_SID=XE
|
|
14
|
+
- DATABASE_NAME=XE
|
|
15
|
+
- ORA_SDTZ='Europe/London' # Needed as a client parameter
|
|
16
|
+
- TZ='Europe/London' # Needed as a DB Server parameter
|
|
17
|
+
|
|
18
|
+
before_install:
|
|
19
|
+
- chmod +x .travis/oracle/download.sh
|
|
20
|
+
- chmod +x .travis/oracle/install.sh
|
|
21
|
+
- chmod +x .travis/setup_accounts.sh
|
|
22
|
+
- gem install bundler --version '~> 2.1.4'
|
|
23
|
+
|
|
24
|
+
install:
|
|
25
|
+
- .travis/oracle/download.sh
|
|
26
|
+
- .travis/oracle/install.sh
|
|
27
|
+
- .travis/setup_accounts.sh
|
|
28
|
+
- bundle install
|
|
29
|
+
|
|
1
30
|
language: ruby
|
|
2
|
-
os:
|
|
3
|
-
- linux
|
|
4
|
-
- osx
|
|
5
|
-
osx_image: xcode9.1
|
|
6
31
|
rvm:
|
|
7
|
-
-
|
|
8
|
-
- 2.
|
|
9
|
-
- 2.
|
|
10
|
-
- 2.
|
|
11
|
-
before_install:
|
|
12
|
-
- gem install bundler --version '~> 1.16.0'
|
|
32
|
+
- 3.0.0
|
|
33
|
+
- 2.7.2
|
|
34
|
+
- 2.6.6
|
|
35
|
+
- 2.5.8
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
cd "$(dirname "$(readlink -f "$0")")"
|
|
4
|
+
|
|
5
|
+
deb_file=oracle-xe_11.2.0-1.0_amd64.deb
|
|
6
|
+
|
|
7
|
+
git clone https://github.com/wnameless/docker-oracle-xe-11g.git
|
|
8
|
+
|
|
9
|
+
cd docker-oracle-xe-11g/assets &&
|
|
10
|
+
cat "${deb_file}aa" "${deb_file}ab" "${deb_file}ac" > "${deb_file}"
|
|
11
|
+
|
|
12
|
+
pwd
|
|
13
|
+
|
|
14
|
+
ls -lAh "${deb_file}"
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
[ -n "$ORACLE_FILE" ] || { echo "Missing ORACLE_FILE environment variable!"; exit 1; }
|
|
4
|
+
[ -n "$ORACLE_HOME" ] || { echo "Missing ORACLE_HOME environment variable!"; exit 1; }
|
|
5
|
+
|
|
6
|
+
cd "$(dirname "$(readlink -f "$0")")"
|
|
7
|
+
|
|
8
|
+
ORACLE_DEB=docker-oracle-xe-11g/assets/oracle-xe_11.2.0-1.0_amd64.deb
|
|
9
|
+
|
|
10
|
+
sudo apt-get -qq update
|
|
11
|
+
sudo apt-get --no-install-recommends -qq install bc libaio1
|
|
12
|
+
|
|
13
|
+
df -B1 /dev/shm | awk 'END { if ($1 != "shmfs" && $1 != "tmpfs" || $2 < 2147483648) exit 1 }' ||
|
|
14
|
+
( sudo rm -r /dev/shm && sudo mkdir /dev/shm && sudo mount -t tmpfs shmfs -o size=2G /dev/shm )
|
|
15
|
+
|
|
16
|
+
test -f /sbin/chkconfig ||
|
|
17
|
+
( echo '#!/bin/sh' | sudo tee /sbin/chkconfig > /dev/null && sudo chmod u+x /sbin/chkconfig )
|
|
18
|
+
|
|
19
|
+
test -d /var/lock/subsys || sudo mkdir /var/lock/subsys
|
|
20
|
+
|
|
21
|
+
sudo dpkg -i "${ORACLE_DEB}"
|
|
22
|
+
|
|
23
|
+
echo 'OS_AUTHENT_PREFIX=""' | sudo tee -a "$ORACLE_HOME/config/scripts/init.ora" > /dev/null
|
|
24
|
+
echo 'disk_asynch_io=false' | sudo tee -a "$ORACLE_HOME/config/scripts/init.ora" > /dev/null
|
|
25
|
+
sudo usermod -aG dba $USER
|
|
26
|
+
|
|
27
|
+
( echo ; echo ; echo travis ; echo travis ; echo n ) | sudo AWK='/usr/bin/awk' /etc/init.d/oracle-xe configure
|
|
28
|
+
|
|
29
|
+
"$ORACLE_HOME/bin/sqlplus" -L -S / AS SYSDBA <<SQL
|
|
30
|
+
CREATE USER $USER IDENTIFIED EXTERNALLY;
|
|
31
|
+
GRANT CONNECT, RESOURCE TO $USER;
|
|
32
|
+
SQL
|
data/CHANGELOG.md
CHANGED
|
@@ -1,43 +1,81 @@
|
|
|
1
|
-
## 0.
|
|
1
|
+
## [0.5.0] - 2021-02-22
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
### Changed
|
|
4
|
+
- Update gem dependencies
|
|
5
|
+
- Number of thread settings
|
|
6
|
+
- Ruby style guide applied through standradrb gem
|
|
5
7
|
|
|
6
|
-
## 0.
|
|
8
|
+
## [0.4.0] - 2020-02-28
|
|
7
9
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
+
### Changed
|
|
11
|
+
- Update of gem dependencies
|
|
10
12
|
|
|
11
|
-
## 0.
|
|
13
|
+
## [0.3.1] - 2019-06-19
|
|
12
14
|
|
|
13
|
-
|
|
15
|
+
### Changed
|
|
16
|
+
- Extract table data when primary key spans over multiple columns
|
|
17
|
+
- Update bundler
|
|
14
18
|
|
|
15
|
-
## 0.
|
|
19
|
+
## [0.3.0] - 2018-08-17
|
|
16
20
|
|
|
17
|
-
|
|
21
|
+
### Changed
|
|
22
|
+
- Update license
|
|
18
23
|
|
|
19
|
-
## 0.2.
|
|
24
|
+
## [0.2.7] - 2018-08-17
|
|
20
25
|
|
|
21
|
-
|
|
26
|
+
### Added
|
|
27
|
+
- Function based indexes
|
|
22
28
|
|
|
23
|
-
## 0.2.
|
|
29
|
+
## [0.2.7] - 2018-02-27
|
|
24
30
|
|
|
25
|
-
|
|
26
|
-
*
|
|
31
|
+
### Changed
|
|
32
|
+
* ruby-oci8 gem to 2.2.5.1
|
|
33
|
+
* rake gem to 12.3.0
|
|
27
34
|
|
|
28
|
-
## 0.
|
|
35
|
+
## [0.2.6] - 2018-02-16
|
|
29
36
|
|
|
30
|
-
|
|
31
|
-
|
|
37
|
+
### Changed
|
|
38
|
+
- Typo synonym
|
|
39
|
+
- Used force => true when deleting a queue table
|
|
32
40
|
|
|
33
|
-
## 0.
|
|
41
|
+
## [0.2.5] - 2017-11-24
|
|
34
42
|
|
|
35
|
-
|
|
43
|
+
### Changed
|
|
44
|
+
- Typo max_retires => max_retries
|
|
36
45
|
|
|
37
|
-
## 0.
|
|
46
|
+
## [0.2.4] - 2017-11-24
|
|
38
47
|
|
|
39
|
-
|
|
48
|
+
### Changed
|
|
49
|
+
- Sort order: ENQUEUE_TIME => ENQ_TIME
|
|
40
50
|
|
|
41
|
-
## 0.
|
|
51
|
+
## [0.2.2] - 2017-11-15
|
|
42
52
|
|
|
43
|
-
|
|
53
|
+
### Changed
|
|
54
|
+
- create or replace for functions and procedures
|
|
55
|
+
|
|
56
|
+
## [0.2.1] - 2017-11-07
|
|
57
|
+
|
|
58
|
+
### Changed
|
|
59
|
+
- Update dependencies rspec, bundler, ruby-oci8
|
|
60
|
+
- Travis settings
|
|
61
|
+
|
|
62
|
+
## [0.1.3] - 2017-08-29
|
|
63
|
+
|
|
64
|
+
### Added
|
|
65
|
+
- very early version where most of the core oracle types are supported
|
|
66
|
+
- ability to extract core data
|
|
67
|
+
|
|
68
|
+
## [0.1.2] - 2017-08-03
|
|
69
|
+
|
|
70
|
+
### Added
|
|
71
|
+
- another very early version
|
|
72
|
+
|
|
73
|
+
## [0.1.1] - 2016-05-10
|
|
74
|
+
|
|
75
|
+
### Added
|
|
76
|
+
- very early development version
|
|
77
|
+
|
|
78
|
+
## [0.1.0] - 2016-05-10
|
|
79
|
+
|
|
80
|
+
### Added
|
|
81
|
+
- initial setup
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
|
@@ -1,37 +1,66 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
db_meta (0.
|
|
4
|
+
db_meta (0.5.0)
|
|
5
5
|
ruby-oci8 (~> 2.2)
|
|
6
6
|
|
|
7
7
|
GEM
|
|
8
8
|
remote: https://rubygems.org/
|
|
9
9
|
specs:
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
10
|
+
ast (2.4.2)
|
|
11
|
+
diff-lcs (1.4.4)
|
|
12
|
+
parallel (1.20.1)
|
|
13
|
+
parser (3.0.0.0)
|
|
14
|
+
ast (~> 2.4.1)
|
|
15
|
+
rainbow (3.0.0)
|
|
16
|
+
rake (13.0.3)
|
|
17
|
+
regexp_parser (2.0.3)
|
|
18
|
+
rexml (3.2.4)
|
|
19
|
+
rspec (3.10.0)
|
|
20
|
+
rspec-core (~> 3.10.0)
|
|
21
|
+
rspec-expectations (~> 3.10.0)
|
|
22
|
+
rspec-mocks (~> 3.10.0)
|
|
23
|
+
rspec-core (3.10.1)
|
|
24
|
+
rspec-support (~> 3.10.0)
|
|
25
|
+
rspec-expectations (3.10.1)
|
|
19
26
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
20
|
-
rspec-support (~> 3.
|
|
21
|
-
rspec-mocks (3.
|
|
27
|
+
rspec-support (~> 3.10.0)
|
|
28
|
+
rspec-mocks (3.10.2)
|
|
22
29
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
23
|
-
rspec-support (~> 3.
|
|
24
|
-
rspec-support (3.
|
|
25
|
-
|
|
30
|
+
rspec-support (~> 3.10.0)
|
|
31
|
+
rspec-support (3.10.2)
|
|
32
|
+
rubocop (1.10.0)
|
|
33
|
+
parallel (~> 1.10)
|
|
34
|
+
parser (>= 3.0.0.0)
|
|
35
|
+
rainbow (>= 2.2.2, < 4.0)
|
|
36
|
+
regexp_parser (>= 1.8, < 3.0)
|
|
37
|
+
rexml
|
|
38
|
+
rubocop-ast (>= 1.2.0, < 2.0)
|
|
39
|
+
ruby-progressbar (~> 1.7)
|
|
40
|
+
unicode-display_width (>= 1.4.0, < 3.0)
|
|
41
|
+
rubocop-ast (1.4.1)
|
|
42
|
+
parser (>= 2.7.1.5)
|
|
43
|
+
rubocop-performance (1.9.2)
|
|
44
|
+
rubocop (>= 0.90.0, < 2.0)
|
|
45
|
+
rubocop-ast (>= 0.4.0)
|
|
46
|
+
ruby-oci8 (2.2.9)
|
|
47
|
+
ruby-progressbar (1.11.0)
|
|
48
|
+
standard (0.13.0)
|
|
49
|
+
rubocop (= 1.10.0)
|
|
50
|
+
rubocop-performance (= 1.9.2)
|
|
51
|
+
standardrb (1.0.0)
|
|
52
|
+
standard
|
|
53
|
+
unicode-display_width (2.0.0)
|
|
26
54
|
|
|
27
55
|
PLATFORMS
|
|
28
56
|
ruby
|
|
29
57
|
|
|
30
58
|
DEPENDENCIES
|
|
31
|
-
bundler (~> 1
|
|
59
|
+
bundler (~> 2.1)
|
|
32
60
|
db_meta!
|
|
33
|
-
rake (~>
|
|
34
|
-
rspec (~> 3.
|
|
61
|
+
rake (~> 13.0)
|
|
62
|
+
rspec (~> 3.10)
|
|
63
|
+
standardrb (~> 1.0)
|
|
35
64
|
|
|
36
65
|
BUNDLED WITH
|
|
37
|
-
1.
|
|
66
|
+
2.1.4
|
data/README.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
[](https://badge.fury.io/rb/db_meta)
|
|
2
|
-
[](https://travis-ci.org/thomis/db_meta)
|
|
3
3
|
|
|
4
4
|
# Welcome to db_meta
|
|
5
5
|
Database meta and core data extraction.
|
|
@@ -41,6 +41,7 @@ meta.extract
|
|
|
41
41
|
- Synonym
|
|
42
42
|
- Database Link
|
|
43
43
|
- Queue
|
|
44
|
+
- Function based Indexes
|
|
44
45
|
- more to come...
|
|
45
46
|
|
|
46
47
|
## Planned Features
|
data/Rakefile
CHANGED
data/db_meta.gemspec
CHANGED
|
@@ -1,26 +1,27 @@
|
|
|
1
|
-
|
|
2
|
-
lib = File.expand_path('../lib', __FILE__)
|
|
1
|
+
lib = File.expand_path("../lib", __FILE__)
|
|
3
2
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
|
-
require
|
|
3
|
+
require "db_meta/version"
|
|
5
4
|
|
|
6
5
|
Gem::Specification.new do |spec|
|
|
7
|
-
spec.name
|
|
8
|
-
spec.version
|
|
9
|
-
spec.
|
|
10
|
-
spec.
|
|
6
|
+
spec.name = "db_meta"
|
|
7
|
+
spec.version = DbMeta::VERSION
|
|
8
|
+
spec.license = "Apache-2.0"
|
|
9
|
+
spec.authors = ["Thomi"]
|
|
10
|
+
spec.email = ["thomas.steiner@ikey.ch"]
|
|
11
11
|
|
|
12
|
-
spec.summary
|
|
13
|
-
spec.description
|
|
14
|
-
spec.homepage
|
|
12
|
+
spec.summary = "Database meta and core data extraction"
|
|
13
|
+
spec.description = "Database meta and core data extraction."
|
|
14
|
+
spec.homepage = "https://github.com/thomis/db_meta"
|
|
15
15
|
|
|
16
|
-
spec.files
|
|
17
|
-
spec.bindir
|
|
18
|
-
spec.executables
|
|
16
|
+
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
|
17
|
+
spec.bindir = "exe"
|
|
18
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
19
19
|
spec.require_paths = ["lib"]
|
|
20
20
|
|
|
21
|
-
spec.add_development_dependency "bundler", "~> 1
|
|
22
|
-
spec.add_development_dependency "rake", "~>
|
|
23
|
-
spec.add_development_dependency "rspec", "~> 3.
|
|
21
|
+
spec.add_development_dependency "bundler", "~> 2.1"
|
|
22
|
+
spec.add_development_dependency "rake", "~> 13.0"
|
|
23
|
+
spec.add_development_dependency "rspec", "~> 3.10"
|
|
24
|
+
spec.add_development_dependency "standardrb", "~> 1.0"
|
|
24
25
|
|
|
25
26
|
spec.add_dependency "ruby-oci8", "~> 2.2"
|
|
26
27
|
end
|
data/docker/README.md
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
Deliver Oracle Database 18c Express Edition in Containers
|
|
2
|
+
Read here https://blogs.oracle.com/oraclemagazine/deliver-oracle-database-18c-express-edition-in-containers
|
|
3
|
+
|
|
4
|
+
-- clone repo
|
|
5
|
+
git clone https://github.com/oracle/docker-images.git
|
|
6
|
+
|
|
7
|
+
-- download installation binary
|
|
8
|
+
Download one zip file for xe edition from here: https://www.oracle.com/technical-resources/
|
|
9
|
+
Copy zip file to docker-images/OracleDatabase/SingleInstance/dockerfiles/18.4.0 folder
|
|
10
|
+
|
|
11
|
+
-- build image
|
|
12
|
+
./buildDockerImage.sh -v 18.4.0 -x
|
|
13
|
+
|
|
14
|
+
-- create a container
|
|
15
|
+
docker run --name dbmeta \
|
|
16
|
+
-d \
|
|
17
|
+
-p 51521:1521 \
|
|
18
|
+
-p 55500:5500 \
|
|
19
|
+
-e ORACLE_PWD=secure \
|
|
20
|
+
-e ORACLE_CHARACTERSET=AL32UTF8 \
|
|
21
|
+
oracle/database:18.4.0-xe
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
-- connect as sysdba
|
|
25
|
+
sqlplus sys/secure@dbmeta as sysdba
|
|
26
|
+
|
|
27
|
+
-- create user guest
|
|
28
|
+
CREATE USER guest identified by guest;
|
|
29
|
+
|
|
30
|
+
ALTER USER guest quota unlimited on users;
|
|
31
|
+
|
|
32
|
+
-- grant privs
|
|
33
|
+
GRANT create session TO guest;
|
|
34
|
+
GRANT create table TO guest;
|
|
35
|
+
GRANT create view TO guest;
|
|
36
|
+
GRANT create any trigger TO guest;
|
|
37
|
+
GRANT create any procedure TO guest;
|
|
38
|
+
GRANT create sequence TO guest;
|
|
39
|
+
GRANT create synonym TO guest;
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
Status : Failure -Test failed: no ocijdbc19 in java.library.path: [/Users/steinth6/Library/Java/Extensions, /Library/Java/Extensions, /Network/Library/Java/Extensions, /System/Library/Java/Extensions, /usr/lib/java, .]
|
data/lib/db_meta.rb
CHANGED
|
@@ -1,25 +1,23 @@
|
|
|
1
|
-
require_relative
|
|
2
|
-
require_relative
|
|
3
|
-
require_relative
|
|
1
|
+
require_relative "db_meta/version"
|
|
2
|
+
require_relative "db_meta/constant"
|
|
3
|
+
require_relative "db_meta/logger"
|
|
4
4
|
|
|
5
|
-
require_relative
|
|
6
|
-
require_relative
|
|
5
|
+
require_relative "db_meta/abstract"
|
|
6
|
+
require_relative "db_meta/oracle/oracle"
|
|
7
7
|
|
|
8
|
-
Log = Logger.new(
|
|
8
|
+
Log = Logger.new($stdout)
|
|
9
9
|
|
|
10
10
|
module DbMeta
|
|
11
|
-
|
|
12
11
|
DATABASE_TYPES = [:oracle]
|
|
13
12
|
|
|
14
13
|
class DbMeta
|
|
15
|
-
|
|
16
|
-
def initialize(args={})
|
|
14
|
+
def initialize(args = {})
|
|
17
15
|
@database_type = args[:database_type] || DATABASE_TYPES[0]
|
|
18
|
-
raise "allowed database types are [#{DATABASE_TYPES.join(
|
|
16
|
+
raise "allowed database types are [#{DATABASE_TYPES.join(", ")}], but provided was [#{@database_type}]" unless DATABASE_TYPES.include?(@database_type)
|
|
19
17
|
@abstract = Abstract.from_type(@database_type, args)
|
|
20
18
|
end
|
|
21
19
|
|
|
22
|
-
def fetch(args={})
|
|
20
|
+
def fetch(args = {})
|
|
23
21
|
Log.info("Fetching...")
|
|
24
22
|
@abstract.fetch(args)
|
|
25
23
|
Log.info("Fetch completed")
|
|
@@ -27,14 +25,12 @@ module DbMeta
|
|
|
27
25
|
Log.error(e.to_s)
|
|
28
26
|
end
|
|
29
27
|
|
|
30
|
-
def extract(args={})
|
|
28
|
+
def extract(args = {})
|
|
31
29
|
Log.info("Extracting...")
|
|
32
30
|
@abstract.extract(args)
|
|
33
31
|
Log.info("Extraction completed")
|
|
34
32
|
rescue => e
|
|
35
33
|
Log.error(e.to_s)
|
|
36
34
|
end
|
|
37
|
-
|
|
38
35
|
end
|
|
39
|
-
|
|
40
36
|
end
|