82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
# File 'lib/shopifydev/shopify_api/caches.rb', line 82
def add_cache_methods(obj, opts, entity)
obj.singleton_class.class_eval{define_method(:label){entity.collection_name}}
obj.singleton_class.class_eval{define_method(:since=){|t| @since = t }}
obj.singleton_class.class_eval{define_method(:since){ @since }}
obj.singleton_class.class_eval{attr_accessor :params}
obj.since = Time.now
obj.singleton_class.class_eval{define_method(:r) { |msg = 'reloading'|
puts "#{msg}..."
self.replace(entity.find(:all, params: self.params))
self.since = Time.now
puts "#{self.length} records."
self
}}
obj.singleton_class.class_eval{define_method(:delete_all) {
puts "deleting all #{entity.collection_name}..."
self.each{|e| entity.delete(e.id)}
self.r
}}
end
|