Sha256: 03e3301aab280deac93e82108d7c60937ac6075caa18dfd81f56498fd6bf4fc7
Contents?: true
Size: 526 Bytes
Versions: 1
Compression:
Stored size: 526 Bytes
Contents
# frozen_string_literal: true require 'beaconable/version' require 'beaconable/object_was' require 'beaconable/base_beacon' require 'active_record' module Beaconable extend ActiveSupport::Concern included do before_save :save_for_beacon before_destroy :save_for_beacon after_commit :fire_beacon end private def save_for_beacon @object_was ||= ObjectWas.new(self).call end def fire_beacon "#{self.class.name}Beacon".constantize.new(self, @object_was).call @object_was = nil end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
beaconable-0.3.2 | lib/beaconable.rb |