lib/qooxview/storages/sqlite.rb in qooxview-1.9.11 vs lib/qooxview/storages/sqlite.rb in qooxview-1.9.13.pre.10
- old
+ new
@@ -21,13 +21,13 @@
@sqlite_dir = File.join($data_dir, get_config('data',
:StorageType, :data_dir))
FileUtils.mkdir_p(@sqlite_dir)
@name_file = name_file
@db_file = File.join(@sqlite_dir, @name_file)
- # ActiveRecord::Base.logger = Logger.new('debug.log')
+ # ActiveRecord::Base.logger = Logger.new('debug.log')
ActiveRecord::Migration.verbose = false
- #ActiveRecord::Base.logger = Logger.new(STDERR)
+ # ActiveRecord::Base.logger = Logger.new(STDERR)
@mutex_es = Mutex.new
dputs(4) { 'Opening database' }
open_db
@@ -64,23 +64,25 @@
# which data needs to be saved
def save(data, notmp: false)
@mutex_es.synchronize {
dputs(3) { "Saving #{@entries_save.count} entries in #{@db_class}" }
@entries_save.each_value { |v|
+ dputs(4){"Saving #{db_class} #{v.inspect} - #{v.id}"}
v.save
}
@entries_save = {}
}
end
def set_entry(data, field, value)
@mutex_es.synchronize {
+ # dp "#{db_class} #{data.inspect} #{field} #{value}"
dputs(5) { "Searching id #{data.inspect}" }
if @entries[data]
@entries[data].save
end
- dat = @db_class.first(data).first
+ dat = @db_class.find(data)
# dat = @db_class.first(:conditions => {@data_field_id => data})
# dp @entries[data]
# dp dat
# dp data
@entries[data] ||= dat
@@ -96,10 +98,11 @@
end
# Each new entry is directly stored, helping somewhat if the program or the
# computer crashes
def data_create(data)
+ # dputs_func
dputs(5) { "Creating early data #{data.inspect} with #{data.class}" }
dputs(5) { "hello for #{data.inspect}" }
dputs(5) { "db_class is #{@db_class.inspect}" }
e = @db_class.create(data)
dputs(5) { 'hello - 2' }
@@ -168,10 +171,21 @@
end
init_table
end
end
+ def delete(id)
+ entry = @db_class.find_by(id: id)
+ if entry != nil
+ entry.destroy
+ @entries[id].delete
+ if e = @entries_save[id]
+ e.delete
+ end
+ end
+ end
+
def self.with_all_sqlites
RPCQooxdooService.entities { |e|
e.storage.each { |storage_name, storage_class|
dputs(3) { "Found storage_name of #{storage_name.inspect}" }
if storage_name.to_s =~ /^SQLite/
@@ -202,9 +216,10 @@
unless e.is_loaded
e.loading = true
e.load
e.loading = false
u = Users.match_by_name('local')
+ dputs(2){"User is #{u}"}
end
}
end
def self.dbs_open_load_migrate