module PgSaurus::SchemaDumper::TriggerMethods
Support for dumping database triggers.
Public Instance Methods
dump_triggers(stream)
click to toggle source
Write out a command to create each detected trigger.
# File lib/pg_saurus/schema_dumper/trigger_methods.rb, line 15 def dump_triggers(stream) @connection.triggers.each do |trigger| statement = " create_trigger '#{trigger.table}', '#{trigger.proc_name}', '#{trigger.event}', " \ "name: '#{trigger.name}', " \ "constraint: #{trigger.constraint ? :true : :false}, " \ "for_each: :#{trigger.for_each}, " \ "deferrable: #{trigger.deferrable ? :true : :false}, " \ "initially_deferred: #{trigger.initially_deferred ? :true : :false}, " \ "schema: '#{trigger.schema}'" if trigger.condition statement << %Q{, condition: '#{trigger.condition.gsub("'", %q(\\\'))}'} end stream.puts "#{statement}\n" end end
tables(stream)
click to toggle source
:nodoc
Calls superclass method
# File lib/pg_saurus/schema_dumper/trigger_methods.rb, line 5 def tables(stream) super(stream) dump_triggers(stream) stream.puts stream end