diff options
| author | Ted Ross <tross@apache.org> | 2013-09-04 21:42:22 +0000 |
|---|---|---|
| committer | Ted Ross <tross@apache.org> | 2013-09-04 21:42:22 +0000 |
| commit | 4ca6fc898223f21601d6c24ad380beb031786330 (patch) | |
| tree | e5893616e68dba2bd8a730609d872f19517e0536 /qpid/extras/dispatch/src/python_embedded.c | |
| parent | dcfea8883711341ee76ca3e394c45ebfd757c4f7 (diff) | |
| download | qpid-python-4ca6fc898223f21601d6c24ad380beb031786330.tar.gz | |
QPID-5068 - Added feature to allow for modification of Delivery Annotations
- Added annotation for ingress router
- Added annotation for trace
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1520148 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/extras/dispatch/src/python_embedded.c')
| -rw-r--r-- | qpid/extras/dispatch/src/python_embedded.c | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/qpid/extras/dispatch/src/python_embedded.c b/qpid/extras/dispatch/src/python_embedded.c index 51e3c0e1a6..0b0cc11025 100644 --- a/qpid/extras/dispatch/src/python_embedded.c +++ b/qpid/extras/dispatch/src/python_embedded.c @@ -495,18 +495,28 @@ static void IoAdapter_dealloc(IoAdapter* self) static PyObject* dx_python_send(PyObject *self, PyObject *args) { - IoAdapter *ioa = (IoAdapter*) self; - const char *address; - PyObject *app_properties; - PyObject *body; + IoAdapter *ioa = (IoAdapter*) self; + dx_composed_field_t *field = 0; + const char *address; + PyObject *app_properties; + PyObject *body; + if (!PyArg_ParseTuple(args, "sOO", &address, &app_properties, &body)) return 0; - dx_composed_field_t *field = dx_compose(DX_PERFORMATIVE_HEADER, 0); + field = dx_compose(DX_PERFORMATIVE_DELIVERY_ANNOTATIONS, field); + dx_compose_start_map(field); + + dx_compose_insert_string(field, "qdx.ingress"); + dx_compose_insert_string(field, dx_router_id(ioa->dx)); + + dx_compose_insert_string(field, "qdx.trace"); dx_compose_start_list(field); - dx_compose_insert_bool(field, 0); // durable + dx_compose_insert_string(field, dx_router_id(ioa->dx)); dx_compose_end_list(field); + dx_compose_end_map(field); + field = dx_compose(DX_PERFORMATIVE_PROPERTIES, field); dx_compose_start_list(field); dx_compose_insert_null(field); // message-id |
