Sha256: 50c1d8483ca6ddad3758ec1699cdf242b34e3fcfe5e4787d9d349afed18b110b
Contents?: true
Size: 689 Bytes
Versions: 7
Compression:
Stored size: 689 Bytes
Contents
class Skyline::FileCacheSweeper < ActiveRecord::Observer observe Skyline::MediaFile, Skyline::MediaDir, Skyline::MediaNode def after_save(record) if record.renamed? expire_for(record) end end def after_destroy(record) expire_for(record) end def expire_for(record) case record when Skyline::MediaFile Skyline::MediaCache.destroy_all("object_id = #{record.id} AND object_type = 'MediaFile'") when Skyline::MediaDir ids = record.files.collect{|f| f.id}.join(",") Skyline::MediaCache.destroy_all("object_id IN (#{ids}) AND object_type = 'MediaFile'") unless ids.blank? end end end
Version data entries
7 entries across 7 versions & 2 rubygems