module StreamRails::SyncPolicy::SyncCreate

Public Class Methods

included(base) click to toggle source
Calls superclass method
# File lib/stream_rails/sync_policies.rb, line 4
def self.included(base)
  if base.respond_to? :after_commit
    base.after_commit :add_to_feed, on: :create
  elsif base <= Sequel::Model
    base.class_eval do
      define_method(:after_create) do |*args|
        super(*args)
        add_to_feed
      end
    end
  else
    raise 'Your ORM is not supported'
  end
end

Private Instance Methods

add_to_feed() click to toggle source
# File lib/stream_rails/sync_policies.rb, line 21
def add_to_feed
  StreamRails.feed_manager.created_activity(self)
rescue StandardError => e
  StreamRails.logger.error "Something went wrong creating an activity: #{e}"
  raise
end