Module: Rtt::Storage
- Included in:
- Rtt
- Defined in:
- lib/rtt/storage.rb
Constant Summary collapse
- DEFAULT_STORAGE_NAME =
:rtt
Instance Method Summary collapse
- #export(filename) ⇒ Object
- #import(filename) ⇒ Object
- #init(database = :rtt) ⇒ Object
-
#migrate ⇒ Object
:nodoc:.
- #missing_tables ⇒ Object
Instance Method Details
#export(filename) ⇒ Object
7 8 9 10 |
# File 'lib/rtt/storage.rb', line 7 def export filename require 'fileutils' FileUtils.cp(File.join( File.dirname(__FILE__), '..', '..', 'db', "#{DEFAULT_STORAGE_NAME.to_s}.sqlite3"), filename) end |
#import(filename) ⇒ Object
12 13 14 15 |
# File 'lib/rtt/storage.rb', line 12 def import filename require 'fileutils' FileUtils.cp(filename, File.join( File.dirname(__FILE__), '..', '..', 'db', "#{DEFAULT_STORAGE_NAME.to_s}.sqlite3")) end |
#init(database = :rtt) ⇒ Object
17 18 19 20 21 |
# File 'lib/rtt/storage.rb', line 17 def init(database = :rtt) DataMapper.setup(:default, {:adapter => "sqlite3", :database => File.join( File.dirname(__FILE__), '..', '..', 'db', "#{database.to_s}.sqlite3") }) migrate unless missing_tables #DataObjects::Sqlite3.logger = DataMapper::Logger.new(File.expand_path(File.join(File.dirname(__FILE__), '..', '..', 'log', 'sqlite3.log')), 0) end |
#migrate ⇒ Object
:nodoc:
23 24 25 |
# File 'lib/rtt/storage.rb', line 23 def migrate #:nodoc: DataMapper.auto_migrate! end |
#missing_tables ⇒ Object
27 28 29 |
# File 'lib/rtt/storage.rb', line 27 def missing_tables %W(rtt_projects rtt_users rtt_clients rtt_tasks).reject { |table| DataMapper.repository.storage_exists?(table) }.empty? end |