redhillonrails_core 1.0.3.1 → 1.0.4

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.
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"