oci8_simple 0.8.5 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- oci8_simple (0.8.5)
4
+ oci8_simple (0.9.0)
5
5
  ruby-oci8 (~> 2.1.2)
6
6
 
7
7
  GEM
data/README.rdoc CHANGED
@@ -21,10 +21,11 @@ You can also use oci8_simple in your Ruby scripts by creating an instance of <co
21
21
  gem install oci8_simple
22
22
 
23
23
  == Configuration
24
- To configure environments and schema settings, edit the
25
- database.yml file in <code>~/.oci8_simple/</code>.
26
- The database.yml format is compatible with the Rails format, so you may just symlink
27
- an existing file into this directory if you already have one.
24
+ Oci8Simple will look in three places for your database configuration, in the following order:
25
+ * Dir.pwd + database.yml
26
+ * Dir.pwd + config/database.yml
27
+ * ~/.oci8_simple/database.yml
28
+ The database.yml format is compatible with the Rails format.
28
29
  development:
29
30
  database: oracle.hostname:1521/sid
30
31
  username: foo_dev
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.8.5
1
+ 0.9.0
@@ -36,7 +36,7 @@ module Oci8Simple
36
36
  # SQL
37
37
  class Client
38
38
  USER_DIR = File.join(ENV["HOME"], ".oci8_simple")
39
- CONFIG_FILE = File.join(USER_DIR, "database.yml")
39
+ CONFIG = Config.new
40
40
  LOG_FILE = File.join(USER_DIR, "oci8_simple.log")
41
41
 
42
42
  attr_accessor :log_file, :env
@@ -97,17 +97,7 @@ module Oci8Simple
97
97
  end
98
98
 
99
99
  def config
100
- @config ||= YAML.load_file(CONFIG_FILE)[env]
101
- rescue Errno::ENOENT => e
102
- raise ConfigError.new <<-ERR
103
- File #{CONFIG_FILE} doesn't exist - use the following template:
104
-
105
- environment:
106
- database: 192.168.1.3:1521/sid
107
- username: foo_user
108
- password: foobar
109
-
110
- ERR
100
+ @config ||= CONFIG[ env]
111
101
  end
112
102
 
113
103
  # Create and return raw Oci8 connection
@@ -117,8 +107,6 @@ ERR
117
107
 
118
108
  private
119
109
 
120
-
121
-
122
110
  def new_connection
123
111
  c = OCI8.new(config["username"], config["password"], config["database"])
124
112
  c.autocommit = true
@@ -0,0 +1,43 @@
1
+ module Oci8Simple
2
+ ##
3
+ # Config will look in three places for your database.yml file. Here is the order:
4
+ # Dir.pwd + database.yml
5
+ # Dir.pwd + config/database.yml
6
+ # ~/.oci8_simple/database.yml
7
+ #
8
+ class Config
9
+ USER_DIR = File.join(ENV["HOME"], ".oci8_simple")
10
+
11
+ def [](key)
12
+ @raw_config[key]
13
+ end
14
+
15
+ def initialize
16
+ load_yaml
17
+ end
18
+
19
+ def database_yaml_path
20
+ path = File.join(Dir.pwd, "database.yml")
21
+ return path if File.exists?(path)
22
+ path = File.join(Dir.pwd, "config", "database.yml")
23
+ return path if File.exists?(path)
24
+ File.join(USER_DIR, "database.yml")
25
+ end
26
+
27
+ def load_yaml
28
+ begin
29
+ @raw_config = YAML.load_file(database_yaml_path)
30
+ rescue Errno::ENOENT => e
31
+ raise ConfigError.new <<-ERR
32
+ File #{CONFIG_FILE} doesn't exist - use the following template:
33
+
34
+ environment:
35
+ database: 192.168.1.3:1521/sid
36
+ username: foo_user
37
+ password: foobar
38
+
39
+ ERR
40
+ end
41
+ end
42
+ end
43
+ end
data/lib/oci8_simple.rb CHANGED
@@ -9,6 +9,7 @@ require 'yaml'
9
9
  gem 'ruby-oci8'
10
10
  require 'oci8'
11
11
 
12
+ require 'oci8_simple/config'
12
13
  require 'oci8_simple/command'
13
14
  require 'oci8_simple/cli'
14
15
  require 'oci8_simple/client'
data/oci8_simple.gemspec CHANGED
@@ -27,6 +27,7 @@ Gem::Specification.new do |s|
27
27
  "lib/oci8_simple/cli.rb",
28
28
  "lib/oci8_simple/client.rb",
29
29
  "lib/oci8_simple/command.rb",
30
+ "lib/oci8_simple/config.rb",
30
31
  "lib/oci8_simple/describe.rb",
31
32
  "lib/oci8_simple/show.rb",
32
33
  "oci8_simple.gemspec",
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: oci8_simple
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.5
4
+ version: 0.9.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-02-25 00:00:00.000000000 Z
12
+ date: 2013-04-10 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: ruby-oci8
@@ -54,6 +54,7 @@ files:
54
54
  - lib/oci8_simple/cli.rb
55
55
  - lib/oci8_simple/client.rb
56
56
  - lib/oci8_simple/command.rb
57
+ - lib/oci8_simple/config.rb
57
58
  - lib/oci8_simple/describe.rb
58
59
  - lib/oci8_simple/show.rb
59
60
  - oci8_simple.gemspec
@@ -77,7 +78,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
77
78
  version: '0'
78
79
  segments:
79
80
  - 0
80
- hash: -303796649655696785
81
+ hash: -178540163749839115
81
82
  required_rubygems_version: !ruby/object:Gem::Requirement
82
83
  none: false
83
84
  requirements:
@@ -86,7 +87,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
86
87
  version: '0'
87
88
  segments:
88
89
  - 0
89
- hash: -303796649655696785
90
+ hash: -178540163749839115
90
91
  requirements: []
91
92
  rubyforge_project:
92
93
  rubygems_version: 1.8.25