#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <errno.h>
#include <sys/types.h>
#include <socket/xmlBlasterSocket.h>
#include <socket/xmlBlasterZlib.h>
#include <XmlBlasterConnectionUnparsed.h>
Include dependency graph for XmlBlasterConnectionUnparsed.c:
Go to the source code of this file.
Defines | |
#define | SOCKET_TCP false |
Functions | |
static int | initConnection (XmlBlasterConnectionUnparsed *xb, XmlBlasterException *exception) |
Connects on TCP/IP level to xmlBlaster. | |
static int | xmlBlasterInitQueue (XmlBlasterConnectionUnparsed *xb, QueueProperties *queueProperties, XmlBlasterException *exception) |
Set the queue properties. | |
static int | getResponse (XmlBlasterConnectionUnparsed *xb, SocketDataHolder *responseSocketDataHolder, XmlBlasterException *exception, int udp) |
Parse the returned message from xmlBlaster. | |
static char * | xmlBlasterConnect (XmlBlasterConnectionUnparsed *xb, char *qos, XmlBlasterException *exception) |
Connect to the server. | |
static int | xmlBlasterDisconnect (XmlBlasterConnectionUnparsed *xb, char *qos, XmlBlasterException *exception) |
Disconnect from server. | |
static char * | xmlBlasterPublish (XmlBlasterConnectionUnparsed *xb, MsgUnit *msgUnit, XmlBlasterException *exception) |
Publish a message to the server. | |
static QosArr * | xmlBlasterPublishArr (XmlBlasterConnectionUnparsed *xb, MsgUnitArr *msgUnitArr, XmlBlasterException *exception) |
Publish a message array in a bulk to the server. | |
static void | xmlBlasterPublishOneway (XmlBlasterConnectionUnparsed *xb, MsgUnitArr *msgUnitArr, XmlBlasterException *exception) |
Publish oneway a message array in a bulk to the server without receiving an ACK. | |
static char * | xmlBlasterSubscribe (XmlBlasterConnectionUnparsed *xb, char *key, char *qos, XmlBlasterException *exception) |
Subscribe a message. | |
static QosArr * | xmlBlasterUnSubscribe (XmlBlasterConnectionUnparsed *xb, char *key, char *qos, XmlBlasterException *exception) |
UnSubscribe a message from the server. | |
static QosArr * | xmlBlasterErase (XmlBlasterConnectionUnparsed *xb, char *key, char *qos, XmlBlasterException *exception) |
Erase a message from the server. | |
static MsgUnitArr * | xmlBlasterGet (XmlBlasterConnectionUnparsed *xb, char *key, char *qos, XmlBlasterException *exception) |
Get a message. | |
static char * | xmlBlasterPing (XmlBlasterConnectionUnparsed *xb, char *qos, XmlBlasterException *exception) |
Ping the server. | |
static int | isConnected (XmlBlasterConnectionUnparsed *xb) |
static void | xmlBlasterConnectionShutdown (XmlBlasterConnectionUnparsed *xb) |
Used internally only, does no disconnect, only cleanup of socket. | |
static ssize_t | writenPlain (void *userP, int fd, char *ptr, size_t nbytes) |
Write uncompressed to socket (not thread safe). | |
static ssize_t | writenCompressed (void *userP, int fd, char *ptr, size_t nbytes) |
Compress data and send to socket. | |
static ssize_t | readnPlain (void *userP, int fd, char *ptr, size_t nbytes, XmlBlasterNumReadFunc fpNumRead, void *userP2) |
Write uncompressed to socket (not thread safe). | |
static ssize_t | readnCompressed (void *userP, int fd, char *ptr, size_t nbytes, XmlBlasterNumReadFunc fpNumRead, void *userP2) |
Compress data and send to socket. | |
static int | checkArgs (XmlBlasterConnectionUnparsed *xb, char *methodName, int checkIsConnected, XmlBlasterException *exception) |
Checks the given arguments to be valid. | |
XmlBlasterConnectionUnparsed * | getXmlBlasterConnectionUnparsed (int argc, char **argv) |
Create a new instance to handle a synchronous connection to the server. | |
void | freeXmlBlasterConnectionUnparsed (XmlBlasterConnectionUnparsed **xb_) |
Free your instance after accessing xmlBlaster. | |
char * | xmlBlasterConnectionUnparsedUsage () |
Help usage. | |
static int | sendData (XmlBlasterConnectionUnparsed *xb, char *methodName, enum XMLBLASTER_MSG_TYPE_ENUM msgType, char *data_, size_t dataLen_, SocketDataHolder *responseSocketDataHolder, XmlBlasterException *exception, int udp) |
Send a message over the socket to xmlBlaster. |
#define SOCKET_TCP false |
Definition at line 29 of file XmlBlasterConnectionUnparsed.c.
Referenced by xmlBlasterConnect(), xmlBlasterDisconnect(), xmlBlasterErase(), xmlBlasterGet(), xmlBlasterPing(), xmlBlasterPublish(), xmlBlasterPublishArr(), xmlBlasterSubscribe(), and xmlBlasterUnSubscribe().
static int checkArgs | ( | XmlBlasterConnectionUnparsed * | xb, | |
char * | methodName, | |||
int | checkIsConnected, | |||
XmlBlasterException * | exception | |||
) | [static] |
Checks the given arguments to be valid.
methodName | For logging | |
checkIsConnected | If true does check the connection state as well |
Definition at line 1376 of file XmlBlasterConnectionUnparsed.c.
References ExceptionStruct::errorCode, getStackTrace(), XmlBlasterConnectionUnparsedStruct::isConnected, XmlBlasterConnectionUnparsedStruct::log, XmlBlasterConnectionUnparsedStruct::logLevel, XmlBlasterConnectionUnparsedStruct::logUserP, ExceptionStruct::message, SNPRINTF, strncpy0(), XMLBLASTER_LOG_ERROR, XMLBLASTER_LOG_WARN, XMLBLASTEREXCEPTION_ERRORCODE_LEN, and XMLBLASTEREXCEPTION_MESSAGE_LEN.
Here is the call graph for this function:
void freeXmlBlasterConnectionUnparsed | ( | XmlBlasterConnectionUnparsed ** | xmlBlasterAccess | ) |
Free your instance after accessing xmlBlaster.
After freeing *xmlBlasterAccess is set to null Call example: freeXmlBlasterConnectionUnparsed(&xa->connectionP);
Definition at line 105 of file XmlBlasterConnectionUnparsed.c.
References freeProperties(), XmlBlasterConnectionUnparsedStruct::log, XmlBlasterConnectionUnparsedStruct::logLevel, XmlBlasterConnectionUnparsedStruct::logUserP, XmlBlasterConnectionUnparsedStruct::props, xmlBlaster_endZlibReader(), xmlBlaster_endZlibWriter(), XMLBLASTER_LOG_TRACE, xmlBlasterConnectionShutdown(), XmlBlasterConnectionUnparsedStruct::zlibReadBuf, and XmlBlasterConnectionUnparsedStruct::zlibWriteBuf.
Referenced by freeXmlBlasterAccessUnparsed(), getXmlBlasterConnectionUnparsed(), and initialize().
Here is the call graph for this function:
static int getResponse | ( | XmlBlasterConnectionUnparsed * | xb, | |
SocketDataHolder * | responseSocketDataHolder, | |||
XmlBlasterException * | exception, | |||
int | udp | |||
) | [static] |
Parse the returned message from xmlBlaster.
This method blocks until data arrives.
The responseSocketDataHolder holds all informations about the returned data from xmlBlaster, on error the exception struct is filled.
responseSocketDataHolder | You need to free(responseSocketDataHolder->data) if return is 'true'. | |
exception | Contains the exception thrown (on error only *exception->errorCode!=0) |
Definition at line 782 of file XmlBlasterConnectionUnparsed.c.
References XmlBlasterConnectionUnparsedStruct::logLevel, parseSocketData(), XmlBlasterConnectionUnparsedStruct::readFromSocket, XmlBlasterConnectionUnparsedStruct::socketToXmlBlaster, and XMLBLASTER_LOG_DUMP.
Referenced by sendData().
Here is the call graph for this function:
XmlBlasterConnectionUnparsed* getXmlBlasterConnectionUnparsed | ( | int | argc, | |
char ** | argv | |||
) |
Create a new instance to handle a synchronous connection to the server.
This is usually the first call of a client.
Definition at line 58 of file XmlBlasterConnectionUnparsed.c.
References XmlBlasterConnectionUnparsedStruct::argc, XmlBlasterConnectionUnparsedStruct::argv, XmlBlasterConnectionUnparsedStruct::connect, createProperties(), XmlBlasterConnectionUnparsedStruct::disconnect, XmlBlasterConnectionUnparsedStruct::erase, freeXmlBlasterConnectionUnparsed(), XmlBlasterConnectionUnparsedStruct::get, PropertiesStruct::getString, initConnection(), XmlBlasterConnectionUnparsedStruct::initConnection, XmlBlasterConnectionUnparsedStruct::initQueue, isConnected(), XmlBlasterConnectionUnparsedStruct::isConnected, XmlBlasterConnectionUnparsedStruct::isInitialized, XmlBlasterConnectionUnparsedStruct::log, XmlBlasterConnectionUnparsedStruct::logLevel, XmlBlasterConnectionUnparsedStruct::logUserP, parseLogLevel(), XmlBlasterConnectionUnparsedStruct::ping, XmlBlasterConnectionUnparsedStruct::postSendEvent, XmlBlasterConnectionUnparsedStruct::postSendEvent_userP, XmlBlasterConnectionUnparsedStruct::preSendEvent, XmlBlasterConnectionUnparsedStruct::preSendEvent_userP, XmlBlasterConnectionUnparsedStruct::props, XmlBlasterConnectionUnparsedStruct::publish, XmlBlasterConnectionUnparsedStruct::publishArr, XmlBlasterConnectionUnparsedStruct::publishOneway, XmlBlasterConnectionUnparsedStruct::queueP, XmlBlasterConnectionUnparsedStruct::readFromSocket, XmlBlasterReadFromSocketFuncHolder::readFromSocketFuncP, XmlBlasterConnectionUnparsedStruct::requestId, XmlBlasterConnectionUnparsedStruct::secretSessionId, XmlBlasterConnectionUnparsedStruct::shutdown, XmlBlasterConnectionUnparsedStruct::socketToXmlBlaster, XmlBlasterConnectionUnparsedStruct::socketToXmlBlasterUdp, XmlBlasterConnectionUnparsedStruct::subscribe, XmlBlasterConnectionUnparsedStruct::unSubscribe, XmlBlasterReadFromSocketFuncHolder::userP, XmlBlasterWriteToSocketFuncHolder::userP, XmlBlasterConnectionUnparsedStruct::useUdpForOneway, XmlBlasterConnectionUnparsedStruct::writeToSocket, XmlBlasterWriteToSocketFuncHolder::writeToSocketFuncP, xmlBlasterConnect(), xmlBlasterConnectionShutdown(), xmlBlasterDefaultLogging(), xmlBlasterDisconnect(), xmlBlasterErase(), xmlBlasterGet(), xmlBlasterInitQueue(), xmlBlasterPing(), xmlBlasterPublish(), xmlBlasterPublishArr(), xmlBlasterPublishOneway(), xmlBlasterSubscribe(), xmlBlasterUnSubscribe(), XmlBlasterConnectionUnparsedStruct::zlibReadBuf, and XmlBlasterConnectionUnparsedStruct::zlibWriteBuf.
Here is the call graph for this function:
static int initConnection | ( | XmlBlasterConnectionUnparsed * | xb, | |
XmlBlasterException * | exception | |||
) | [static] |
Connects on TCP/IP level to xmlBlaster.
Definition at line 131 of file XmlBlasterConnectionUnparsed.c.
References XmlBlasterZlibReadBuffers::debug, XmlBlasterZlibWriteBuffers::debug, ExceptionStruct::errorCode, PropertiesStruct::getBool, gethostbyname_re(), PropertiesStruct::getInt, PropertiesStruct::getString, XmlBlasterConnectionUnparsedStruct::isInitialized, XmlBlasterConnectionUnparsedStruct::log, XmlBlasterConnectionUnparsedStruct::logLevel, XmlBlasterConnectionUnparsedStruct::logUserP, MAX_ERRNO_LEN, ExceptionStruct::message, XmlBlasterConnectionUnparsedStruct::props, XmlBlasterConnectionUnparsedStruct::readFromSocket, XmlBlasterReadFromSocketFuncHolder::readFromSocketFuncP, readnCompressed(), readnPlain(), XmlBlasterConnectionUnparsedStruct::secretSessionId, SNPRINTF, XmlBlasterConnectionUnparsedStruct::socketToXmlBlaster, XmlBlasterConnectionUnparsedStruct::socketToXmlBlasterUdp, strncpy0(), XmlBlasterConnectionUnparsedStruct::useUdpForOneway, writenCompressed(), writenPlain(), XmlBlasterConnectionUnparsedStruct::writeToSocket, XmlBlasterWriteToSocketFuncHolder::writeToSocketFuncP, xb_strerror(), xmlBlaster_initZlibReader(), xmlBlaster_initZlibWriter(), XMLBLASTER_LOG_DUMP, XMLBLASTER_LOG_ERROR, XMLBLASTER_LOG_INFO, XMLBLASTER_LOG_TRACE, XMLBLASTER_LOG_WARN, XMLBLASTEREXCEPTION_ERRORCODE_LEN, XMLBLASTEREXCEPTION_MESSAGE_LEN, XmlBlasterConnectionUnparsedStruct::zlibReadBuf, and XmlBlasterConnectionUnparsedStruct::zlibWriteBuf.
Referenced by getXmlBlasterConnectionUnparsed(), and xmlBlasterConnect().
Here is the call graph for this function:
static int isConnected | ( | XmlBlasterConnectionUnparsed * | xb | ) | [static] |
Definition at line 509 of file XmlBlasterConnectionUnparsed.c.
References XmlBlasterConnectionUnparsedStruct::socketToXmlBlaster.
static ssize_t readnCompressed | ( | void * | userP, | |
int | fd, | |||
char * | ptr, | |||
size_t | nbytes, | |||
XmlBlasterNumReadFunc | fpNumRead, | |||
void * | userP2 | |||
) | [static] |
Compress data and send to socket.
Definition at line 1363 of file XmlBlasterConnectionUnparsed.c.
References XmlBlasterConnectionUnparsedStruct::log, XmlBlasterConnectionUnparsedStruct::logLevel, XmlBlasterConnectionUnparsedStruct::logUserP, XMLBLASTER_LOG_TRACE, xmlBlaster_readnCompressed(), and XmlBlasterConnectionUnparsedStruct::zlibReadBuf.
Here is the call graph for this function:
static ssize_t readnPlain | ( | void * | xb, | |
int | fd, | |||
char * | ptr, | |||
size_t | nbytes, | |||
XmlBlasterNumReadFunc | fpNumRead, | |||
void * | userP2 | |||
) | [static] |
Write uncompressed to socket (not thread safe).
Definition at line 1354 of file XmlBlasterConnectionUnparsed.c.
References XmlBlasterConnectionUnparsedStruct::log, XmlBlasterConnectionUnparsedStruct::logLevel, XmlBlasterConnectionUnparsedStruct::logUserP, readn(), and XMLBLASTER_LOG_TRACE.
Here is the call graph for this function:
static int sendData | ( | XmlBlasterConnectionUnparsed * | xb, | |
char * | methodName, | |||
enum XMLBLASTER_MSG_TYPE_ENUM | msgType, | |||
char * | data_, | |||
size_t | dataLen_, | |||
SocketDataHolder * | responseSocketDataHolder, | |||
XmlBlasterException * | exception, | |||
int | udp | |||
) | [static] |
Send a message over the socket to xmlBlaster.
xb | The this pointer | |
methodName | The name of the remote method to invoke e.g. "connect" | |
msgType | The type of message: INVOKE, RESPONSE, EXCEPTION | |
data | The message payload to send, we take a clone so you can do with it what you want | |
dataLen | The length of data in bytes | |
responseSocketDataHolder | The returned data, you need to free it with free(response->data) if we returned true. Supply NULL for oneway messages. | |
exception | The exception struct, exception->errorCode is filled on exception. You need to supply it. | |
udp | Whether to use UDP or TCP. Supply true for UDP. |
Definition at line 581 of file XmlBlasterConnectionUnparsed.c.
References MsgRequestInfoStruct::blob, blobcpyAlloc(), blobDump(), convertToXmlBlasterException(), BlobHolder::data, BlobHolder::dataLen, encodeSocketMessage(), ExceptionStruct::errorCode, freeBlobDump(), freeBlobHolderContent(), getResponse(), initializeXmlBlasterException(), XmlBlasterConnectionUnparsedStruct::isConnected, XmlBlasterConnectionUnparsedStruct::log, XmlBlasterConnectionUnparsedStruct::logLevel, XmlBlasterConnectionUnparsedStruct::logUserP, MAX_METHODNAME_LEN, MAX_REQUESTID_LEN, ExceptionStruct::message, MsgRequestInfoStruct::methodName, MSG_TYPE_EXCEPTION, XmlBlasterConnectionUnparsedStruct::postSendEvent, XmlBlasterConnectionUnparsedStruct::preSendEvent, XmlBlasterConnectionUnparsedStruct::preSendEvent_userP, XmlBlasterConnectionUnparsedStruct::requestId, MsgRequestInfoStruct::requestIdStr, MsgRequestInfoStruct::responseType, MsgRequestInfoStruct::rollback, XmlBlasterConnectionUnparsedStruct::secretSessionId, SNPRINTF, XmlBlasterConnectionUnparsedStruct::socketToXmlBlaster, XmlBlasterConnectionUnparsedStruct::socketToXmlBlasterUdp, strncpy0(), XmlBlasterWriteToSocketFuncHolder::userP, XmlBlasterConnectionUnparsedStruct::writeToSocket, XmlBlasterWriteToSocketFuncHolder::writeToSocketFuncP, MsgRequestInfoStruct::xa, xbl_isOneway(), XMLBLASTER_CONNECT, XMLBLASTER_LOG_DUMP, XMLBLASTER_LOG_ERROR, XMLBLASTER_LOG_TRACE, XMLBLASTER_LOG_WARN, XMLBLASTER_SOCKET_VERSION, xmlBlasterConnectionShutdown(), XMLBLASTEREXCEPTION_ERRORCODE_LEN, and XMLBLASTEREXCEPTION_MESSAGE_LEN.
Referenced by xmlBlasterConnect(), xmlBlasterDisconnect(), xmlBlasterErase(), xmlBlasterGet(), xmlBlasterPing(), xmlBlasterPublish(), xmlBlasterPublishArr(), xmlBlasterPublishOneway(), xmlBlasterSubscribe(), and xmlBlasterUnSubscribe().
Here is the call graph for this function:
static ssize_t writenCompressed | ( | void * | xb, | |
int | fd, | |||
char * | ptr, | |||
size_t | nbytes | |||
) | [static] |
Compress data and send to socket.
Definition at line 1345 of file XmlBlasterConnectionUnparsed.c.
References XmlBlasterConnectionUnparsedStruct::log, XmlBlasterConnectionUnparsedStruct::logLevel, XmlBlasterConnectionUnparsedStruct::logUserP, XMLBLASTER_LOG_TRACE, xmlBlaster_writenCompressed(), and XmlBlasterConnectionUnparsedStruct::zlibWriteBuf.
Here is the call graph for this function:
static ssize_t writenPlain | ( | void * | xb, | |
int | fd, | |||
char * | ptr, | |||
size_t | nbytes | |||
) | [static] |
Write uncompressed to socket (not thread safe).
Definition at line 1336 of file XmlBlasterConnectionUnparsed.c.
References XmlBlasterConnectionUnparsedStruct::log, XmlBlasterConnectionUnparsedStruct::logLevel, XmlBlasterConnectionUnparsedStruct::logUserP, writen(), and XMLBLASTER_LOG_TRACE.
Here is the call graph for this function:
static char * xmlBlasterConnect | ( | XmlBlasterConnectionUnparsed * | xb, | |
char * | qos, | |||
XmlBlasterException * | exception | |||
) | [static] |
Connect to the server.
qos | The QoS to connect | |
The | exception struct, exception->errorCode is filled on exception |
The ConnectReturnQos raw xml string, you need to free() it
http://www.xmlblaster.org/xmlBlaster/doc/requirements/protocol.socket.html
Definition at line 799 of file XmlBlasterConnectionUnparsed.c.
References SocketDataHolder::blob, BlobHolder::data, BlobHolder::dataLen, ExceptionStruct::errorCode, freeBlobHolderContent(), initConnection(), XmlBlasterConnectionUnparsedStruct::log, XmlBlasterConnectionUnparsedStruct::logLevel, XmlBlasterConnectionUnparsedStruct::logUserP, MAX_SECRETSESSIONID_LEN, ExceptionStruct::message, MSG_TYPE_INVOKE, XmlBlasterConnectionUnparsedStruct::secretSessionId, sendData(), SNPRINTF, SOCKET_TCP, strFromBlobAlloc(), strncpy0(), XMLBLASTER_CONNECT, XMLBLASTER_LOG_TRACE, XMLBLASTEREXCEPTION_ERRORCODE_LEN, and XMLBLASTEREXCEPTION_MESSAGE_LEN.
Here is the call graph for this function:
static void xmlBlasterConnectionShutdown | ( | XmlBlasterConnectionUnparsed * | xb | ) | [static] |
Used internally only, does no disconnect, only cleanup of socket.
Definition at line 545 of file XmlBlasterConnectionUnparsed.c.
References closeSocket(), XmlBlasterConnectionUnparsedStruct::isConnected, XmlBlasterConnectionUnparsedStruct::log, XmlBlasterConnectionUnparsedStruct::logLevel, XmlBlasterConnectionUnparsedStruct::logUserP, XmlBlasterConnectionUnparsedStruct::socketToXmlBlaster, XmlBlasterConnectionUnparsedStruct::socketToXmlBlasterUdp, and XMLBLASTER_LOG_TRACE.
Referenced by freeXmlBlasterConnectionUnparsed(), getXmlBlasterConnectionUnparsed(), sendData(), and xmlBlasterDisconnect().
Here is the call graph for this function:
char* xmlBlasterConnectionUnparsedUsage | ( | ) |
Help usage.
Definition at line 514 of file XmlBlasterConnectionUnparsed.c.
References strncat0(), and strncpy0().
Referenced by xmlBlasterAccessUnparsedUsage().
Here is the call graph for this function:
static int xmlBlasterDisconnect | ( | XmlBlasterConnectionUnparsed * | xb, | |
char * | qos, | |||
XmlBlasterException * | exception | |||
) | [static] |
Disconnect from server.
qos | The QoS to disconnect | |
The | exception struct, exception->errorCode is filled on exception |
http://www.xmlblaster.org/xmlBlaster/doc/requirements/protocol.socket.html
Definition at line 858 of file XmlBlasterConnectionUnparsed.c.
References SocketDataHolder::blob, checkArgs(), freeBlobHolderContent(), MSG_TYPE_INVOKE, XmlBlasterConnectionUnparsedStruct::secretSessionId, sendData(), SOCKET_TCP, XMLBLASTER_DISCONNECT, and xmlBlasterConnectionShutdown().
Here is the call graph for this function:
static QosArr * xmlBlasterErase | ( | XmlBlasterConnectionUnparsed * | xb, | |
char * | key, | |||
char * | qos, | |||
XmlBlasterException * | exception | |||
) | [static] |
Erase a message from the server.
http://www.xmlblaster.org/xmlBlaster/doc/requirements/protocol.socket.html
Definition at line 1197 of file XmlBlasterConnectionUnparsed.c.
References SocketDataHolder::blob, checkArgs(), BlobHolder::data, BlobHolder::dataLen, ExceptionStruct::errorCode, freeBlobHolderContent(), QosStructArr::len, XmlBlasterConnectionUnparsedStruct::log, XmlBlasterConnectionUnparsedStruct::logLevel, XmlBlasterConnectionUnparsedStruct::logUserP, ExceptionStruct::message, MSG_TYPE_INVOKE, parseQosArr(), QosStructArr::qosArr, sendData(), SNPRINTF, SOCKET_TCP, strncpy0(), XMLBLASTER_ERASE, XMLBLASTER_LOG_TRACE, XMLBLASTEREXCEPTION_ERRORCODE_LEN, and XMLBLASTEREXCEPTION_MESSAGE_LEN.
Here is the call graph for this function:
static MsgUnitArr * xmlBlasterGet | ( | XmlBlasterConnectionUnparsed * | xb, | |
char * | key, | |||
char * | qos, | |||
XmlBlasterException * | exception | |||
) | [static] |
Get a message.
http://www.xmlblaster.org/xmlBlaster/doc/requirements/protocol.socket.html
Definition at line 1286 of file XmlBlasterConnectionUnparsed.c.
References SocketDataHolder::blob, BlobHolder::data, BlobHolder::dataLen, ExceptionStruct::errorCode, freeBlobHolderContent(), MsgUnitStructArr::len, XmlBlasterConnectionUnparsedStruct::log, XmlBlasterConnectionUnparsedStruct::logLevel, XmlBlasterConnectionUnparsedStruct::logUserP, ExceptionStruct::message, MSG_TYPE_INVOKE, parseMsgUnitArr(), sendData(), SNPRINTF, SOCKET_TCP, strncpy0(), XMLBLASTER_GET, XMLBLASTER_LOG_TRACE, XMLBLASTEREXCEPTION_ERRORCODE_LEN, and XMLBLASTEREXCEPTION_MESSAGE_LEN.
Here is the call graph for this function:
static int xmlBlasterInitQueue | ( | XmlBlasterConnectionUnparsed * | xb, | |
QueueProperties * | queueProperties, | |||
XmlBlasterException * | exception | |||
) | [static] |
Set the queue properties.
Example:
QueueProperties queueProperties; strncpy0(queueProperties.dbName, "xmlBlasterClient.db", QUEUE_DBNAME_MAX); strncpy0(queueProperties.nodeId, "clientJoe1081594557415", QUEUE_ID_MAX); strncpy0(queueProperties.queueName, "connection_clientJoe", QUEUE_ID_MAX); strncpy0(queueProperties.tablePrefix, "XB_", QUEUE_PREFIX_MAX); queueProperties.maxNumOfEntries = 10000000L; queueProperties.maxNumOfBytes = 1000000000LL;
queueProperties | The queue configuration, if 0 or parts of it are empty it will be initialized by environment settings |
exception | if already initialized or if initialization fails |
Definition at line 449 of file XmlBlasterConnectionUnparsed.c.
References checkArgs(), createQueue(), QueueProperties::dbName, embedException(), ExceptionStruct::errorCode, PropertiesStruct::getInt, PropertiesStruct::getInt64, PropertiesStruct::getString, XmlBlasterConnectionUnparsedStruct::log, QueueProperties::logFp, QueueProperties::logLevel, XmlBlasterConnectionUnparsedStruct::logLevel, XmlBlasterConnectionUnparsedStruct::logUserP, QueueProperties::maxNumOfBytes, QueueProperties::maxNumOfEntries, ExceptionStruct::message, XmlBlasterConnectionUnparsedStruct::props, QUEUE_DBNAME_MAX, QUEUE_ID_MAX, QUEUE_PREFIX_MAX, QueueProperties::queueName, XmlBlasterConnectionUnparsedStruct::queueP, SNPRINTF, strncpy0(), QueueProperties::tablePrefix, I_QueueStruct::userObject, QueueProperties::userObject, XMLBLASTER_LOG_ERROR, XMLBLASTER_LOG_WARN, XMLBLASTEREXCEPTION_ERRORCODE_LEN, and XMLBLASTEREXCEPTION_MESSAGE_LEN.
Referenced by getXmlBlasterConnectionUnparsed().
Here is the call graph for this function:
static char * xmlBlasterPing | ( | XmlBlasterConnectionUnparsed * | xb, | |
char * | qos, | |||
XmlBlasterException * | exception | |||
) | [static] |
Ping the server.
qos | The QoS or 0 | |
exception | *errorCode!=0 on failure |
Definition at line 1259 of file XmlBlasterConnectionUnparsed.c.
References SocketDataHolder::blob, checkArgs(), BlobHolder::data, BlobHolder::dataLen, freeBlobHolderContent(), XmlBlasterConnectionUnparsedStruct::log, XmlBlasterConnectionUnparsedStruct::logLevel, XmlBlasterConnectionUnparsedStruct::logUserP, MSG_TYPE_INVOKE, sendData(), SOCKET_TCP, strFromBlobAlloc(), XMLBLASTER_LOG_TRACE, and XMLBLASTER_PING.
Here is the call graph for this function:
static char * xmlBlasterPublish | ( | XmlBlasterConnectionUnparsed * | xb, | |
MsgUnit * | msgUnit, | |||
XmlBlasterException * | exception | |||
) | [static] |
Publish a message to the server.
http://www.xmlblaster.org/xmlBlaster/doc/requirements/protocol.socket.html
Definition at line 967 of file XmlBlasterConnectionUnparsed.c.
References SocketDataHolder::blob, checkArgs(), BlobHolder::data, BlobHolder::dataLen, encodeMsgUnit(), ExceptionStruct::errorCode, freeBlobHolderContent(), XmlBlasterConnectionUnparsedStruct::logLevel, MSG_TYPE_INVOKE, MsgUnit::qos, MsgUnit::responseQos, sendData(), SOCKET_TCP, strFromBlobAlloc(), XMLBLASTER_LOG_DUMP, and XMLBLASTER_PUBLISH.
Here is the call graph for this function:
static QosArr * xmlBlasterPublishArr | ( | XmlBlasterConnectionUnparsed * | xb, | |
MsgUnitArr * | msgUnitArr, | |||
XmlBlasterException * | exception | |||
) | [static] |
Publish a message array in a bulk to the server.
http://www.xmlblaster.org/xmlBlaster/doc/requirements/protocol.socket.html
Definition at line 1009 of file XmlBlasterConnectionUnparsed.c.
References checkArgs(), BlobHolder::data, BlobHolder::dataLen, encodeMsgUnitArr(), MsgUnitStructArr::len, XmlBlasterConnectionUnparsedStruct::logLevel, MSG_TYPE_INVOKE, MsgUnitStructArr::msgUnitArr, MsgUnit::responseQos, sendData(), SOCKET_TCP, XMLBLASTER_LOG_DUMP, and XMLBLASTER_PUBLISH.
Here is the call graph for this function:
static void xmlBlasterPublishOneway | ( | XmlBlasterConnectionUnparsed * | xb, | |
MsgUnitArr * | msgUnitArr, | |||
XmlBlasterException * | exception | |||
) | [static] |
Publish oneway a message array in a bulk to the server without receiving an ACK.
http://www.xmlblaster.org/xmlBlaster/doc/requirements/protocol.socket.html
Definition at line 1040 of file XmlBlasterConnectionUnparsed.c.
References checkArgs(), BlobHolder::data, BlobHolder::dataLen, encodeMsgUnitArr(), MsgUnitStructArr::len, XmlBlasterConnectionUnparsedStruct::logLevel, MSG_TYPE_INVOKE, MsgUnitStructArr::msgUnitArr, MsgUnit::responseQos, sendData(), XmlBlasterConnectionUnparsedStruct::useUdpForOneway, XMLBLASTER_LOG_DUMP, and XMLBLASTER_PUBLISH_ONEWAY.
Here is the call graph for this function:
static char * xmlBlasterSubscribe | ( | XmlBlasterConnectionUnparsed * | xb, | |
char * | key, | |||
char * | qos, | |||
XmlBlasterException * | exception | |||
) | [static] |
Subscribe a message.
http://www.xmlblaster.org/xmlBlaster/doc/requirements/protocol.socket.html
Definition at line 1079 of file XmlBlasterConnectionUnparsed.c.
References SocketDataHolder::blob, checkArgs(), BlobHolder::data, BlobHolder::dataLen, ExceptionStruct::errorCode, freeBlobHolderContent(), XmlBlasterConnectionUnparsedStruct::log, XmlBlasterConnectionUnparsedStruct::logLevel, XmlBlasterConnectionUnparsedStruct::logUserP, ExceptionStruct::message, MSG_TYPE_INVOKE, sendData(), SNPRINTF, SOCKET_TCP, strFromBlobAlloc(), strncpy0(), XMLBLASTER_LOG_TRACE, XMLBLASTER_SUBSCRIBE, XMLBLASTEREXCEPTION_ERRORCODE_LEN, and XMLBLASTEREXCEPTION_MESSAGE_LEN.
Here is the call graph for this function:
static QosArr * xmlBlasterUnSubscribe | ( | XmlBlasterConnectionUnparsed * | xb, | |
char * | key, | |||
char * | qos, | |||
XmlBlasterException * | exception | |||
) | [static] |
UnSubscribe a message from the server.
http://www.xmlblaster.org/xmlBlaster/doc/requirements/protocol.socket.html
Definition at line 1135 of file XmlBlasterConnectionUnparsed.c.
References SocketDataHolder::blob, checkArgs(), BlobHolder::data, BlobHolder::dataLen, ExceptionStruct::errorCode, freeBlobHolderContent(), QosStructArr::len, XmlBlasterConnectionUnparsedStruct::log, XmlBlasterConnectionUnparsedStruct::logLevel, XmlBlasterConnectionUnparsedStruct::logUserP, ExceptionStruct::message, MSG_TYPE_INVOKE, parseQosArr(), QosStructArr::qosArr, sendData(), SNPRINTF, SOCKET_TCP, strncpy0(), XMLBLASTER_LOG_TRACE, XMLBLASTER_UNSUBSCRIBE, XMLBLASTEREXCEPTION_ERRORCODE_LEN, and XMLBLASTEREXCEPTION_MESSAGE_LEN.
Here is the call graph for this function: