# File lib/dm-core/resource.rb, line 86 def key return @key if defined?(@key) key = model.key(repository_name).map do |property| original_attributes[property] || (property.loaded?(self) ? property.get!(self) : nil) end return unless key.all? # memoize the key if the Resource is not frozen @key = key unless frozen? key end