本文整理汇总了C++中TibrvMsg::addBool方法的典型用法代码示例。如果您正苦于以下问题:C++ TibrvMsg::addBool方法的具体用法?C++ TibrvMsg::addBool怎么用?C++ TibrvMsg::addBool使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TibrvMsg
的用法示例。
在下文中一共展示了TibrvMsg::addBool方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: if
static PyObject*
typemethod_send(PyTibrvNetTransportObject *self, PyObject *args, PyObject *kwds)
{
char *send_subject = NULL, *reply_subject = NULL;
PyObject* message_dictionary;
static char *kwlist[] = {"sendsubject", "message", "replysubject", NULL};
if (! PyArg_ParseTupleAndKeywords(args, kwds, "sO|s", kwlist, &send_subject, &message_dictionary, &reply_subject))
return NULL;
TibrvStatus status;
TibrvMsg msg;
status = msg.setSendSubject(send_subject);
if (status != TIBRV_OK)
{
PyErr_Tibrv(status);
return NULL;
}
if (reply_subject != 0)
msg.setReplySubject(reply_subject);
if (!PyDict_Check(message_dictionary))
{
PyErr_SetString(PyExc_TypeError, "expected message to be dictionary");
return NULL;
}
PyObject *key, *value;
int pos = 0;
while (PyDict_Next(message_dictionary, &pos, &key, &value))
{
if (PyObject_Is<const char*>(key))
{
const char* mnemonic = PyObject_As<const char*>(key);
if (PyObject_Is<tibrv_i32>(value))
status = msg.addI32(mnemonic, PyObject_As<tibrv_i32>(value));
else if (PyObject_Is<const char*>(value))
status = msg.addString(mnemonic, PyObject_As<const char*>(value));
else if (PyObject_Is<tibrv_f64>(value))
status = msg.addF64(mnemonic, PyObject_As<tibrv_f64>(value));
else if (PyObject_Is<tibrv_bool>(value))
status = msg.addBool(mnemonic, PyObject_As<tibrv_bool>(value));
else if (PyObject_Is<tibrvMsgDateTime>(value))
status = msg.addDateTime(mnemonic, PyObject_As<tibrvMsgDateTime>(value));
else
{
PyErr_SetString(PyExc_TypeError, "invalid type for tibco message");
return NULL;
}
if (status != TIBRV_OK)
{
PyErr_Tibrv(status);
return NULL;
}
}
}
status = self->transport->send(msg);
if (status != TIBRV_OK)
{
PyErr_Tibrv(status);
return NULL;
}
Py_INCREF(Py_None);
return Py_None;
}