libpqxx
4.0.1
Main Page
Related Pages
Modules
Namespaces
Classes
notify-listen.hxx
1
/*-------------------------------------------------------------------------
2
*
3
* FILE
4
* pqxx/notify-listen.hxx
5
*
6
* DESCRIPTION
7
* Definition of the obsolete pqxx::notify_listener functor interface.
8
* Predecessor to notification_receiver. Deprecated. Do not use.
9
* DO NOT INCLUDE THIS FILE DIRECTLY; include pqxx/notify-listen instead.
10
*
11
* Copyright (c) 2001-2011, Jeroen T. Vermeulen <jtv@xs4all.nl>
12
*
13
* See COPYING for copyright license. If you did not receive a file called
14
* COPYING with this source code, please notify the distributor of this mistake,
15
* or contact the author.
16
*
17
*-------------------------------------------------------------------------
18
*/
19
#ifndef PQXX_H_NOTIFY_LISTEN
20
#define PQXX_H_NOTIFY_LISTEN
21
22
#include "pqxx/compiler-public.hxx"
23
#include "pqxx/compiler-internal-pre.hxx"
24
25
#include "pqxx/notification"
26
27
28
namespace
pqxx
29
{
30
class
connection_base;
31
class
notify_listener;
32
33
namespace
internal
34
{
36
class
notify_listener_forwarder
:
public
notification_receiver
37
{
38
public
:
39
notify_listener_forwarder
(
40
connection_base
&c,
41
const
PGSTD::string &channel_name,
42
notify_listener
*wrappee) :
43
notification_receiver
(c, channel_name),
44
m_wrappee(wrappee)
45
{}
46
47
virtual
void
operator()
(
const
PGSTD::string &,
int
backend_pid);
48
49
private
:
50
notify_listener
*m_wrappee;
51
};
52
}
53
54
56
58
class
PQXX_LIBEXPORT PQXX_NOVTABLE
notify_listener
:
59
public
PGSTD::unary_function<int, void>
60
{
61
public
:
62
notify_listener
(
connection_base
&c,
const
PGSTD::string &n);
63
virtual
~
notify_listener
()
throw
();
64
const
PGSTD::string &
name
()
const
{
return
m_forwarder.channel(); }
65
virtual
void
operator()(
int
be_pid) =0;
66
67
68
protected
:
69
connection_base
&
Conn
()
const
throw () {
return
conn(); }
70
connection_base
&
conn
()
const
throw () {
return
m_conn; }
71
72
private
:
73
connection_base
&m_conn;
74
internal::notify_listener_forwarder
m_forwarder;
75
};
76
}
77
78
79
#include "pqxx/compiler-internal-post.hxx"
80
81
#endif
include
pqxx
notify-listen.hxx
Generated on Sun Jan 20 2013 13:09:09 for libpqxx by
1.8.1.2