module Ansible::Transmit::TransmitModalHelper

Public Class Methods

extended(base) click to toggle source
# File lib/ansible/transmit.rb, line 49
def self.extended(base)
  base.class_eval do
    after_commit :notify

    def notify
      connection.execute "NOTIFY #{self.class.table_name}, #{self.class.connection.quote attributes}"
    end
  end
end

Public Instance Methods

listen() click to toggle source
# File lib/ansible/transmit.rb, line 67
def listen
  connection.execute "LISTEN #{table_name}"
end
notify() click to toggle source
# File lib/ansible/transmit.rb, line 53
def notify
  connection.execute "NOTIFY #{self.class.table_name}, #{self.class.connection.quote attributes}"
end
on_new_message() { |event, message| ... } click to toggle source
# File lib/ansible/transmit.rb, line 59
def on_new_message
  listen

  connection.raw_connection.wait_for_notify do |event, pid, message|
    yield event, message
  end
end