class Backup::Database::SQLite
Attributes
path[RW]
Path to the sqlite3 file
sqlitedump_utility[RW]
Path to sqlite utility (optional)
Public Class Methods
new(model, database_id = nil, &block)
click to toggle source
Creates a new instance of the SQLite adapter object
Calls superclass method
Backup::Database::Base.new
# File lib/backup/database/sqlite.rb, line 17 def initialize(model, database_id = nil, &block) super instance_eval(&block) if block_given? @sqlitedump_utility ||= utility(:sqlitedump) end
Public Instance Methods
perform!()
click to toggle source
Performs the sqlitedump command and outputs the data to the specified path based on the 'trigger'
Calls superclass method
Backup::Database::Base#perform!
# File lib/backup/database/sqlite.rb, line 27 def perform! super dump = "echo '.dump' | #{ sqlitedump_utility } #{ path }" pipeline = Pipeline.new dump_ext = 'sql' pipeline << dump if model.compressor model.compressor.compress_with do |command, ext| pipeline << command dump_ext << ext end end pipeline << "cat > '#{ File.join( dump_path , dump_filename) }.#{ dump_ext }'" pipeline.run if pipeline.success? log!(:finished) else raise Error, "#{ database_name } Dump Failed!\n" + pipeline.error_messages end end