notifyexample.py
author Radek Brich <radek.brich@devl.cz>
Wed, 09 Jul 2014 18:03:54 +0200
changeset 104 d8ff52a0390f
parent 93 b72591087495
permissions -rwxr-xr-x
Rename to pydbkit.

#!/usr/bin/env python3
#
# Call "NOTIFY notifyexample" on target DB to wake up this program.
#

from pydbkit import toolbase, pgmanager


class NotifyExample(toolbase.SimpleTool):
    def __init__(self):
        toolbase.SimpleTool.__init__(self, name='notifyexample', desc='Sample program for listen/notify.')
        self.init()

    def main(self):
        # create another connection for notifies, copy parameters from connection 'target'
        self.pgm.create_conn_listen('target_listen', channel='notifyexample', copy_dsn='target')
        while True:
            ev = self.pgm.wait_for_notify('target_listen', timeout=None)
            if ev:
                print(ev)


tool = NotifyExample()
tool.main()