dm-xml-adapter 0.54 → 0.55

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/dm-xml-adapter.rb +14 -12
  2. metadata +5 -5
@@ -160,31 +160,33 @@ module DataMapper::Adapters
160
160
  return query.filter_records(result_set)
161
161
  end
162
162
 
163
- def get_all(model)
163
+ def get_all(model)
164
164
  #@@logger.info("Trying to get all: #{model.to_s}")
165
- objects = Array.new
166
165
  directory = classname_to_dir(model.to_s)
167
166
  if ! File.exists?(directory)
168
167
  #@@logger.error("The directory doesn't exist!")
169
- return objects
168
+ return []
170
169
  end
170
+ objects = []
171
171
  Dir.entries(directory).select {|f| f.match(/\.xml$/) }.each do |filename|
172
172
  filename = directory + "/" + filename
173
- file = File.new(filename)
174
173
  # see if we have a nice cached version
175
- if (@cache.get_mtime(filename) == nil or file.mtime > @cache.get_mtime(filename))
174
+ mtime = File.mtime(filename)
175
+ cache_mtime = @cache.get_mtime(filename)
176
+ #puts "file mtime: #{mtime} cache mtime: #{@cache.get_mtime(filename)}"
177
+ if (mtime != nil and cache_mtime != nil)
178
+ #puts "comparing! #{mtime < cache_mtime}"
179
+ end
180
+ if (mtime != nil and cache_mtime != nil and mtime <= cache_mtime)
181
+ # we hav ea nice cached object..
182
+ objects << @cache.get(model.to_s, file_to_id(filename))
183
+ else
176
184
  #@@logger.info("CACHE MISS")
177
185
  # the file's newer, so we gotta load it up
178
186
  object = file_to_object(filename, model)
179
187
  objects << object
180
188
  @cache.put(model.to_s, object.key.first, object)
181
- @cache.set_mtime(filename, file.mtime)
182
- else
183
- # @@logger.info("YES !!!")
184
- #@@logger.info("CACHE HIT")
185
- # @@logger.info("the file is: #{file}")
186
- # the file was older than what we had so cache is fine
187
- objects << @cache.get(model.to_s, file_to_id(filename))
189
+ @cache.set_mtime(filename, File.mtime(filename))
188
190
  end
189
191
  end
190
192
  return objects
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dm-xml-adapter
3
3
  version: !ruby/object:Gem::Version
4
- version: "0.54"
4
+ version: "0.55"
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joshua Harding
@@ -9,7 +9,7 @@ autorequire: dm-xml-adapter
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-12-29 00:00:00 -05:00
12
+ date: 2010-01-07 00:00:00 -05:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -41,10 +41,10 @@ extensions: []
41
41
  extra_rdoc_files:
42
42
  - README
43
43
  files:
44
- - lib/dm-xml-adapter.rb
45
44
  - lib/ratecounter.rb
46
- - spec/dm-xml-adapter_spec.rb
45
+ - lib/dm-xml-adapter.rb
47
46
  - spec/spec_helper.rb
47
+ - spec/dm-xml-adapter_spec.rb
48
48
  - README
49
49
  has_rdoc: true
50
50
  homepage:
@@ -75,5 +75,5 @@ signing_key:
75
75
  specification_version: 3
76
76
  summary: a XML adapter for DataMapper. this adapter allows you to use DataMapper with XML files as a backing store.
77
77
  test_files:
78
- - spec/dm-xml-adapter_spec.rb
79
78
  - spec/spec_helper.rb
79
+ - spec/dm-xml-adapter_spec.rb