[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[xmlblaster] xmlBlaster C++ client library with native SOCKET plugin available
Hi,
our C++ client library has now a protocol plugin
which uses our native xmlBlaster SOCKET protocol
to talk to the Java xmlBlaster server, see
http://www.xmlblaster.org/xmlBlaster/doc/requirements/client.cpp.socket.html
The SOCKET protocol is described here:
http://www.xmlblaster.org/xmlBlaster/doc/requirements/protocol.socket.html
The C++ plugin wraps the C-client SOCKET implementation
which is described in detail here:
http://www.xmlblaster.org/xmlBlaster/doc/requirements/client.c.socket.html
The C++ plugin code is available with cvs.
FEATURES:
=========
o You can compile the C++ client library to contain
the SOCKET and the CORBA plugin simultaneously
or only one of them.
o The SOCKET protocol tunnels callbacks through the same
TCP/IP socket which eliminates some firewall problems.
TODO:
=====
The plugin has the limitations as described in the above
client.c.socket requirement:
o Invoking xmlBlaster from within the callback thread (in update() function)
will deadlock, a thread pool implementation will be added
to resolve this issue.
o publishOneway() and publishArr() are not yet implemented
(They are useful for higher performance only)
COMPATIBILITY:
==============
o The C and the C++ client API has minor changes,
please read the xmlBlaster/CHANGES file on how to adapt
your existing C/C++ clients.
http://www.xmlblaster.org/xmlBlaster/CHANGES
COMPILE example (SOCKET only):
========
cd xmlBlaster
Edit build.properties to only contain these settings:
COMPILE_SOCKET_PLUGIN=1
COMPILE_CORBA_PLUGIN=1
corba.product = NONE
plus the xerces XML settings
build cpp
EXAMPLE:
========
Try (xmlBlaster/demo/c++/bin)
HelloWorld2 -help
for a list of command line arguments
If you have compiled for example the CORBA and SOCKET plugin
you can switch the protocol used on the fly:
HelloWorld2 -protocol IOR
HelloWorld2 -protocol SOCKET
enjoy
Marcel
PS: The plugin is currently tested with g++ 2.x, g++ 3.x and icc 7.x,
Windows follows.
--
http://www.xmlBlaster.org