redhillonrails_core 1.0.3.1 → 1.0.4

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG CHANGED
@@ -1,6 +1,8 @@
1
+ 1.0.4
2
+ * Autoloading
1
3
  1.0.3
2
- ActiveRecord 3.0beta compatibility
3
- First ruby 1.9 fixes
4
+ * ActiveRecord 3.0beta compatibility
5
+ * First ruby 1.9 fixes
4
6
  1.0.2
5
7
  * added missing dependencies
6
8
  1.0.1
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.3.1
1
+ 1.0.4
@@ -7,13 +7,18 @@ module RedHillConsulting::Core::ActiveRecord::ConnectionAdapters
7
7
 
8
8
  def initialize_with_redhillonrails_core(*args)
9
9
  initialize_without_redhillonrails_core(*args)
10
+ adapter = nil
10
11
  case adapter_name
11
12
  when 'MySQL'
12
- self.class.send(:include, MySQLAdapter) unless self.class.include?(MySQLAdapter)
13
+ adapter = 'MysqlAdapter'
13
14
  when 'PostgreSQL'
14
- self.class.send(:include, PostgresqlAdapter) unless self.class.include?(PostgresqlAdapter)
15
+ adapter = 'PostgresqlAdapter'
15
16
  when 'SQLite'
16
- self.class.send(:include, SqliteAdapter) unless self.class.include?(SqliteAdapter)
17
+ adapter = 'SqliteAdapter'
18
+ end
19
+ if adapter
20
+ adapter_module = RedHillConsulting::Core::ActiveRecord::ConnectionAdapters.const_get(adapter)
21
+ self.class.send(:include, adapter_module) unless self.class.include?(adapter_module)
17
22
  end
18
23
  end
19
24
 
@@ -9,7 +9,7 @@ module RedHillConsulting::Core::ActiveRecord::ConnectionAdapters
9
9
  tables.each do |table|
10
10
  results = execute("SHOW CREATE TABLE #{table}")
11
11
  results.each do |row|
12
- row[1].each do |line|
12
+ row[1].lines.each do |line|
13
13
  if line =~ /^ CONSTRAINT [`"](.+?)[`"] FOREIGN KEY \([`"](.+?)[`"]\) REFERENCES [`"](.+?)[`"] \((.+?)\)( ON DELETE (.+?))?( ON UPDATE (.+?))?,?$/
14
14
  name = $1
15
15
  column_names = $2
@@ -34,4 +34,4 @@ module RedHillConsulting::Core::ActiveRecord::ConnectionAdapters
34
34
  foreign_keys
35
35
  end
36
36
  end
37
- end
37
+ end
@@ -10,9 +10,9 @@ module RedHillConsulting::Core::ActiveRecord::ConnectionAdapters
10
10
  def connect_with_redhillonrails_core(*args)
11
11
  returning connect_without_redhillonrails_core(*args) do
12
12
  if version[0] < 5
13
- self.class.send(:include, Mysql4Adapter) unless self.class.included?(Mysql4Adapter)
13
+ self.class.send(:include, Mysql4Adapter) unless self.class.include?(Mysql4Adapter)
14
14
  else
15
- self.class.send(:include, Mysql5Adapter) unless self.class.included?(Mysql5Adapter)
15
+ self.class.send(:include, Mysql5Adapter) unless self.class.include?(Mysql5Adapter)
16
16
  end
17
17
  end
18
18
  end
@@ -42,7 +42,7 @@ module RedHillConsulting::Core::ActiveRecord::ConnectionAdapters
42
42
  foreign_keys = []
43
43
 
44
44
  results.each do |row|
45
- row[1].each do |line|
45
+ row[1].lines.each do |line|
46
46
  if line =~ /^ CONSTRAINT [`"](.+?)[`"] FOREIGN KEY \([`"](.+?)[`"]\) REFERENCES [`"](.+?)[`"] \((.+?)\)( ON DELETE (.+?))?( ON UPDATE (.+?))?,?$/
47
47
  name = $1
48
48
  column_names = $2
@@ -6,9 +6,6 @@ rescue
6
6
  end
7
7
 
8
8
  # TODO: only needed adapters should be required here
9
- require 'active_record/connection_adapters/postgresql_adapter'
10
- require 'active_record/connection_adapters/mysql_adapter'
11
- require 'active_record/connection_adapters/sqlite3_adapter'
12
9
  require 'red_hill_consulting/core'
13
10
  require 'red_hill_consulting/core/active_record'
14
11
  require 'red_hill_consulting/core/active_record/base'
@@ -18,13 +15,18 @@ require 'red_hill_consulting/core/active_record/connection_adapters/abstract_ada
18
15
  require 'red_hill_consulting/core/active_record/connection_adapters/foreign_key_definition'
19
16
  require 'red_hill_consulting/core/active_record/connection_adapters/column'
20
17
  require 'red_hill_consulting/core/active_record/connection_adapters/index_definition'
21
- require 'red_hill_consulting/core/active_record/connection_adapters/mysql_adapter'
22
18
  require 'red_hill_consulting/core/active_record/connection_adapters/mysql_column'
23
- require 'red_hill_consulting/core/active_record/connection_adapters/postgresql_adapter'
24
19
  require 'red_hill_consulting/core/active_record/connection_adapters/schema_statements'
25
- require 'red_hill_consulting/core/active_record/connection_adapters/sqlite3_adapter'
26
20
  require 'red_hill_consulting/core/active_record/connection_adapters/table_definition'
27
21
 
22
+ module RedHillConsulting::Core::ActiveRecord::ConnectionAdapters
23
+ autoload :MysqlAdapter, 'red_hill_consulting/core/active_record/connection_adapters/mysql_adapter'
24
+ autoload :Mysql4Adapter, 'red_hill_consulting/core/active_record/connection_adapters/mysql4_adapter'
25
+ autoload :Mysql5Adapter, 'red_hill_consulting/core/active_record/connection_adapters/mysql5_adapter'
26
+ autoload :PostgresqlAdapter, 'red_hill_consulting/core/active_record/connection_adapters/postgresql_adapter'
27
+ autoload :Sqlite3Adapter, 'red_hill_consulting/core/active_record/connection_adapters/mysql_adapter'
28
+ end
29
+
28
30
  ActiveRecord::Base.send(:include, RedHillConsulting::Core::ActiveRecord::Base)
29
31
  ActiveRecord::Schema.send(:include, RedHillConsulting::Core::ActiveRecord::Schema)
30
32
  ActiveRecord::SchemaDumper.send(:include, RedHillConsulting::Core::ActiveRecord::SchemaDumper)
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{redhillonrails_core}
8
- s.version = "1.0.3.1"
8
+ s.version = "1.0.4"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Michał Łomnicki"]
metadata CHANGED
@@ -5,9 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 1
7
7
  - 0
8
- - 3
9
- - 1
10
- version: 1.0.3.1
8
+ - 4
9
+ version: 1.0.4
11
10
  platform: ruby
12
11
  authors:
13
12
  - "Micha\xC5\x82 \xC5\x81omnicki"