5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
# File 'lib/spatial_features/has_spatial_features/feature_import.rb', line 5
def update_features!(skip_invalid: false, options: {})
options = options.reverse_merge(spatial_features_options).reverse_merge(:import => {})
ActiveRecord::Base.transaction do
imports = spatial_feature_imports(options[:import], options[:make_valid])
cache_key = Digest::MD5.hexdigest(imports.collect(&:cache_key).join)
return if features_cache_key_matches?(cache_key)
import_features(imports)
validate_features!(imports, skip_invalid)
set_features_cache_key(cache_key)
return true
end
end
|