# File lib/dm-core/collection.rb, line 68 def reload(query = nil) query = query.nil? ? self.query.dup : self.query.merge(query) # make sure the Identity Map contains all the existing resources identity_map = repository.identity_map(model) loaded_entries.each do |resource| identity_map[resource.key] = resource end properties = model.properties(repository.name) fields = properties.key | query.fields if discriminator = properties.discriminator fields |= [ discriminator ] end # sort fields based on declared order, for more consistent reload queries fields = properties & fields # replace the list of resources replace(all(query.update(:fields => fields, :reload => true))) end