~ubuntu-branches/ubuntu/wily/pyzmq/wily

« back to all changes in this revision

Viewing changes to zmq/core/constants.pyx

  • Committer: Package Import Robot
  • Author(s): Julian Taylor
  • Date: 2013-02-24 19:23:15 UTC
  • mfrom: (1.2.1) (9 sid)
  • mto: This revision was merged to the branch mainline in revision 10.
  • Revision ID: package-import@ubuntu.com-20130224192315-qhmwp3m3ymk8r60d
Tags: 2.2.0.1-1
* New upstream release
* relicense debian packaging to LGPL-3
* update watch file to use github directly
  thanks to Bart Martens for the file
* add autopkgtests
* drop obsolete DM-Upload-Allowed
* bump standard to 3.9.4, no changes required

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
"""0MQ Constants."""
2
2
 
3
3
#
4
 
#    Copyright (c) 2010 Brian E. Granger
 
4
#    Copyright (c) 2010-2011 Brian E. Granger & Min Ragan-Kelley
5
5
#
6
6
#    This file is part of pyzmq.
7
7
#
23
23
# Imports
24
24
#-----------------------------------------------------------------------------
25
25
 
26
 
from czmq cimport *
 
26
from libzmq cimport *
27
27
 
28
28
#-----------------------------------------------------------------------------
29
29
# Python module level constants
30
30
#-----------------------------------------------------------------------------
31
31
 
32
 
NOBLOCK = ZMQ_NOBLOCK
 
32
_optionals = []
 
33
 
 
34
if ZMQ_VERSION < 30000:
 
35
    # backport DONTWAIT as alias to NOBLOCK
 
36
    NOBLOCK = ZMQ_NOBLOCK
 
37
    DONTWAIT = ZMQ_NOBLOCK
 
38
else:
 
39
    # keep NOBLOCK as alias for new DONTWAIT
 
40
    NOBLOCK = ZMQ_DONTWAIT
 
41
    DONTWAIT = ZMQ_DONTWAIT
 
42
# socket types
33
43
PAIR = ZMQ_PAIR
34
44
PUB = ZMQ_PUB
35
45
SUB = ZMQ_SUB
36
46
REQ = ZMQ_REQ
37
47
REP = ZMQ_REP
38
 
XREQ = ZMQ_XREQ
39
 
XREP = ZMQ_XREP
 
48
DEALER = ZMQ_DEALER
 
49
ROUTER = ZMQ_ROUTER
40
50
PULL = ZMQ_PULL
41
51
PUSH = ZMQ_PUSH
42
 
UPSTREAM = ZMQ_UPSTREAM
43
 
DOWNSTREAM = ZMQ_DOWNSTREAM
44
 
HWM = ZMQ_HWM
45
 
SWAP = ZMQ_SWAP
 
52
XPUB = ZMQ_XPUB
 
53
XSUB = ZMQ_XSUB
 
54
 
 
55
# keep deprecated aliases
 
56
XREQ = DEALER
 
57
XREP = ROUTER
 
58
UPSTREAM = PULL
 
59
DOWNSTREAM = PUSH
 
60
_optionals.extend(['XREQ','XREP','UPSTREAM','DOWNSTREAM'])
 
61
 
 
62
# socket options
46
63
AFFINITY = ZMQ_AFFINITY
47
64
IDENTITY = ZMQ_IDENTITY
48
65
SUBSCRIBE = ZMQ_SUBSCRIBE
49
66
UNSUBSCRIBE = ZMQ_UNSUBSCRIBE
50
67
RATE = ZMQ_RATE
51
68
RECOVERY_IVL = ZMQ_RECOVERY_IVL
52
 
MCAST_LOOP = ZMQ_MCAST_LOOP
 
69
RECONNECT_IVL_MAX = ZMQ_RECONNECT_IVL_MAX
53
70
SNDBUF = ZMQ_SNDBUF
54
71
RCVBUF = ZMQ_RCVBUF
55
72
RCVMORE = ZMQ_RCVMORE
57
74
POLLIN = ZMQ_POLLIN
58
75
POLLOUT = ZMQ_POLLOUT
59
76
POLLERR = ZMQ_POLLERR
 
77
 
60
78
STREAMER = ZMQ_STREAMER
61
79
FORWARDER = ZMQ_FORWARDER
62
80
QUEUE = ZMQ_QUEUE
63
81
 
 
82
# collections of sockopts, based on type:
 
83
bytes_sockopts = [IDENTITY, SUBSCRIBE, UNSUBSCRIBE]
 
84
int64_sockopts = [AFFINITY]
 
85
int_sockopts = [RECONNECT_IVL_MAX]
 
86
 
 
87
# some sockopts changed type from 2.x to 3.0
 
88
switched = [RATE, RECOVERY_IVL, SNDBUF, RCVBUF, RCVMORE]
 
89
if ZMQ_VERSION < 30000:
 
90
    int64_sockopts.extend(switched)
 
91
else:
 
92
    int_sockopts.extend(switched)
 
93
 
 
94
if ZMQ_VERSION >= 20200:
 
95
    # sockopts new in 2.2.0
 
96
    SNDTIMEO = ZMQ_SNDTIMEO
 
97
    RCVTIMEO = ZMQ_RCVTIMEO
 
98
    _optionals.extend(['RCVTIMEO', 'SNDTIMEO'])
 
99
    int_sockopts.extend([RCVTIMEO, SNDTIMEO])
 
100
 
 
101
if ZMQ_VERSION < 30000:
 
102
    # sockopts removed in 3.0.0
 
103
    HWM = ZMQ_HWM
 
104
    SWAP = ZMQ_SWAP
 
105
    MCAST_LOOP = ZMQ_MCAST_LOOP
 
106
    RECOVERY_IVL_MSEC = ZMQ_RECOVERY_IVL_MSEC
 
107
    _optionals.extend(['HWM', 'SWAP', 'MCAST_LOOP', 'RECOVERY_IVL_MSEC'])
 
108
    int64_sockopts.extend([HWM, SWAP, MCAST_LOOP, RECOVERY_IVL_MSEC])
 
109
else:
 
110
    # new in 3.x
 
111
    MORE = ZMQ_MORE
 
112
    
 
113
    MAXMSGSIZE = ZMQ_MAXMSGSIZE
 
114
    SNDHWM = ZMQ_SNDHWM
 
115
    RCVHWM = ZMQ_RCVHWM
 
116
    MULTICAST_HOPS = ZMQ_MULTICAST_HOPS
 
117
    IPV4ONLY = ZMQ_IPV4ONLY
 
118
    LAST_ENDPOINT = ZMQ_LAST_ENDPOINT
 
119
 
 
120
    ROUTER_BEHAVIOR = ZMQ_ROUTER_BEHAVIOR
 
121
    TCP_KEEPALIVE = ZMQ_TCP_KEEPALIVE
 
122
    TCP_KEEPALIVE_CNT = ZMQ_TCP_KEEPALIVE_CNT
 
123
    TCP_KEEPALIVE_IDLE = ZMQ_TCP_KEEPALIVE_IDLE
 
124
    TCP_KEEPALIVE_INTVL = ZMQ_TCP_KEEPALIVE_INTVL
 
125
    TCP_ACCEPT_FILTER = ZMQ_TCP_ACCEPT_FILTER
 
126
    DELAY_ATTACH_ON_CONNECT = ZMQ_DELAY_ATTACH_ON_CONNECT
 
127
    
 
128
    _optionals.extend([
 
129
        'MORE',
 
130
        'MAXMSGSIZE',
 
131
        'SNDHWM',
 
132
        'RCVHWM',
 
133
        'MULTICAST_HOPS',
 
134
        'IPV4ONLY',
 
135
        'LAST_ENDPOINT',
 
136
        'ROUTER_BEHAVIOR',
 
137
        'TCP_KEEPALIVE',
 
138
        'TCP_KEEPALIVE_CNT',
 
139
        'TCP_KEEPALIVE_IDLE',
 
140
        'TCP_KEEPALIVE_INTVL',
 
141
        'TCP_ACCEPT_FILTER',
 
142
        'DELAY_ATTACH_ON_CONNECT',
 
143
        'ROUTER_BEHAVIOR',
 
144
    ])
 
145
    
 
146
    int64_sockopts.append(MAXMSGSIZE)
 
147
    bytes_sockopts.append('LAST_ENDPOINT')
 
148
    int_sockopts.extend([
 
149
        SNDHWM,
 
150
        RCVHWM,
 
151
        MULTICAST_HOPS,
 
152
        IPV4ONLY,
 
153
        ROUTER_BEHAVIOR,
 
154
        TCP_KEEPALIVE,
 
155
        TCP_KEEPALIVE_CNT,
 
156
        TCP_KEEPALIVE_IDLE,
 
157
        TCP_KEEPALIVE_INTVL,
 
158
        TCP_ACCEPT_FILTER,
 
159
        DELAY_ATTACH_ON_CONNECT,
 
160
    ])
 
161
    
 
162
    EVENT_CONNECTED = ZMQ_EVENT_CONNECTED
 
163
    EVENT_CONNECT_DELAYED = ZMQ_EVENT_CONNECT_DELAYED
 
164
    EVENT_CONNECT_RETRIED = ZMQ_EVENT_CONNECT_RETRIED
 
165
    EVENT_LISTENING = ZMQ_EVENT_LISTENING
 
166
    EVENT_BIND_FAILED = ZMQ_EVENT_BIND_FAILED
 
167
    EVENT_ACCEPTED = ZMQ_EVENT_ACCEPTED
 
168
    EVENT_ACCEPT_FAILED = ZMQ_EVENT_ACCEPT_FAILED
 
169
    EVENT_CLOSED = ZMQ_EVENT_CLOSED
 
170
    EVENT_CLOSE_FAILED = ZMQ_EVENT_CLOSE_FAILED
 
171
    EVENT_DISCONNECTED = ZMQ_EVENT_DISCONNECTED
 
172
    
 
173
    _optionals.extend([
 
174
        'EVENT_CONNECTED',
 
175
        'EVENT_CONNECT_DELAYED',
 
176
        'EVENT_CONNECT_RETRIED',
 
177
        'EVENT_LISTENING',
 
178
        'EVENT_BIND_FAILED',
 
179
        'EVENT_ACCEPTED',
 
180
        'EVENT_ACCEPT_FAILED',
 
181
        'EVENT_CLOSED',
 
182
        'EVENT_CLOSE_FAILED',
 
183
        'EVENT_DISCONNECTED',
 
184
    ])
 
185
 
 
186
 
 
187
FD = ZMQ_FD
 
188
EVENTS = ZMQ_EVENTS
 
189
TYPE = ZMQ_TYPE
 
190
LINGER = ZMQ_LINGER
 
191
RECONNECT_IVL = ZMQ_RECONNECT_IVL
 
192
BACKLOG = ZMQ_BACKLOG
 
193
int_sockopts.extend([EVENTS, TYPE, LINGER, RECONNECT_IVL, BACKLOG])
 
194
 
 
195
# As new constants are added in future versions, add a new block here
 
196
# like the two above, checking agains the relevant value for ZMQ_VERSION.
 
197
# The constants will need to be added to libzmq.pxd and utils/zmq_compat.h
 
198
# as well.
64
199
 
65
200
#-----------------------------------------------------------------------------
66
201
# Error handling
82
217
EADDRNOTAVAIL = ZMQ_EADDRNOTAVAIL
83
218
ECONNREFUSED = ZMQ_ECONNREFUSED
84
219
EINPROGRESS = ZMQ_EINPROGRESS
 
220
ENOTSOCK = ZMQ_ENOTSOCK
 
221
 
 
222
if ZMQ_VERSION >= 300000:
 
223
    # new errnos in zmq3
 
224
    EAFNOSUPPORT = ZMQ_EAFNOSUPPORT
 
225
    EHOSTUNREACH = ZMQ_EHOSTUNREACH
 
226
    _optionals.extend(['EAFNOSUPPORT', 'EHOSTUNREACH'])
85
227
 
86
228
# 0MQ Native
87
 
EMTHREAD = ZMQ_EMTHREAD
88
229
EFSM = ZMQ_EFSM
89
230
ENOCOMPATPROTO = ZMQ_ENOCOMPATPROTO
90
231
ETERM = ZMQ_ETERM
 
232
EMTHREAD = ZMQ_EMTHREAD
91
233
 
92
234
#-----------------------------------------------------------------------------
93
235
# Symbols to export
95
237
 
96
238
__all__ = [
97
239
    'NOBLOCK',
 
240
    'DONTWAIT',
 
241
    'FD',
 
242
    'EVENTS',
 
243
    'TYPE',
 
244
    'LINGER',
 
245
    'RECONNECT_IVL',
 
246
    'BACKLOG',
98
247
    'PAIR',
99
248
    'PUB',
100
249
    'SUB',
 
250
    'XPUB',
 
251
    'XSUB',
101
252
    'REQ',
102
253
    'REP',
103
 
    'XREQ',
104
 
    'XREP',
 
254
    'DEALER',
 
255
    'ROUTER',
105
256
    'PULL',
106
257
    'PUSH',
107
 
    'UPSTREAM',
108
 
    'DOWNSTREAM',
109
 
    'HWM',
110
 
    'SWAP',
111
258
    'AFFINITY',
112
259
    'IDENTITY',
113
260
    'SUBSCRIBE',
114
261
    'UNSUBSCRIBE',
115
262
    'RATE',
116
263
    'RECOVERY_IVL',
117
 
    'MCAST_LOOP',
 
264
    'RECONNECT_IVL_MAX',
118
265
    'SNDBUF',
119
266
    'RCVBUF',
120
267
    'SNDMORE',
136
283
    'EADDRNOTAVAIL',
137
284
    'ECONNREFUSED',
138
285
    'EINPROGRESS',
139
 
    'EMTHREAD',
 
286
    'ENOTSOCK',
140
287
    'EFSM',
141
288
    'ENOCOMPATPROTO',
142
289
    'ETERM',
 
290
    'EMTHREAD',
143
291
    'EFAULT',
144
292
    'ENOMEM',
145
 
    'ENODEV'
 
293
    'ENODEV',
 
294
    # collections
 
295
    'bytes_sockopts',
 
296
    'int_sockopts',
 
297
    'int64_sockopts'
146
298
]
147
 
 
 
299
__all__.extend(_optionals)
 
300
del _optionals