Skip to content

Commit b3c5bf3

Browse files
author
Carlos Silva
committed
Improve how tables are dumped
1 parent 6d84ac6 commit b3c5bf3

File tree

1 file changed

+16
-15
lines changed

1 file changed

+16
-15
lines changed

lib/torque/postgresql/adapter/schema_dumper.rb

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,19 @@ def schema_type(column)
2020
private
2121

2222
def tables(stream) # :nodoc:
23-
# FX integration
24-
if defined?(::Fx::SchemaDumper::Function)
25-
functions(stream) if Fx.configuration.dump_functions_at_beginning_of_schema
26-
end
23+
around_tables(stream) { dump_tables(stream) }
24+
end
25+
26+
def around_tables(stream)
27+
functions(stream) if fx_functions_position == :beginning
28+
29+
yield
30+
31+
functions(stream) if fx_functions_position == :end
32+
triggers(stream) if defined?(::Fx::SchemaDumper::Trigger)
33+
end
2734

35+
def dump_tables(stream)
2836
inherited_tables = @connection.inherited_tables
2937
sorted_tables = @connection.tables.sort - @connection.views
3038

@@ -60,18 +68,11 @@ def tables(stream) # :nodoc:
6068
foreign_keys(tbl, stream) unless ignored?(tbl)
6169
end
6270
end
71+
end
6372

64-
# Scenic integration
65-
views(stream) if defined?(::Scenic)
66-
67-
# FX integration
68-
if defined?(::Fx::SchemaDumper::Function)
69-
functions(stream) unless Fx.configuration.dump_functions_at_beginning_of_schema
70-
end
71-
72-
if defined?(::Fx::SchemaDumper::Trigger)
73-
triggers(stream)
74-
end
73+
def fx_functions_position
74+
return unless defined?(::Fx::SchemaDumper::Function)
75+
Fx.configuration.dump_functions_at_beginning_of_schema ? :beginning : :end
7576
end
7677
end
7778

0 commit comments

Comments
 (0)