Sha256: 2e81ec417dc42b4fe9c3b627d7744b941928ff09da2e9e2deda6e5d17a2476f1
Contents?: true
Size: 1010 Bytes
Versions: 1
Compression:
Stored size: 1010 Bytes
Contents
# encoding: utf-8 module CarrierWave module Uploader module Callbacks extend ActiveSupport::Concern included do class_attribute :_before_callbacks, :_after_callbacks, :instance_writer => false self._before_callbacks = Hash.new [] self._after_callbacks = Hash.new [] end def with_callbacks(kind, *args) self.class._before_callbacks[kind].each { |c| send c, *args } yield self.class._after_callbacks[kind].each { |c| send c, *args } end module ClassMethods def before(kind, callback) self._before_callbacks = self._before_callbacks. merge kind => _before_callbacks[kind] + [callback] end def after(kind, callback) self._after_callbacks = self._after_callbacks. merge kind => _after_callbacks[kind] + [callback] end end # ClassMethods end # Callbacks end # Uploader end # CarrierWave
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
plowdawg-carrierwave-0.5.8 | lib/carrierwave/uploader/callbacks.rb |