Recently I started working on a C API for ActiveMQ. The idea is to wrap the ActiveMQ-CPP library in a C accessible API in order to leverage all the hard work that has gone into making the C++ client. I've made some good progress so far, I've wrapped all the CMS API's for ConnectionFactory, Connection, Session, Producer and Consumer. I'm part way through mapping the CMS Message APIs into C APIs.
We still don't have any unit tests written for it but there's some sample code that compiles, and runs (at least it did).
It would be great if some C developers out there wanted to chip in and help out on this as my C skills are pretty rusty. There's still a lot to be done in the wrappers like better managing error conditions and reporting the errors in a meaningful way.
You can download the source from the Apache SVN here.
8 comments:
So, what will the API package be called? Can't use CMS, since it's taken. Hmmmm....I don't have any suggestions yet for you.
Well its really just a thin wrapper around CMS, so not sure it needs a catchy name :)
What is the status of activemq-c? This could fit my needs and looks like a better alternative to the apparently dormant OpenWire C Client .
Well its somewhat functional, there's a couple of examples that build and run. We need some users to step up and contribute to the project in order for it to be completed any time soon.
I am interested in developing an ActiveMQ C client. When Tim says the activemq-c library is somewhat functional, is that for both the STOMP and Openwire protocols? What is the status? Is producing a production quality C client in a couple of months possible? Windows, UNIX, and z/OS?
You can find a nice C API wrapper around ActiveMQ-CPP on github: git://github.com/fusesource/fusemq-c.git
There's no development right now on a pure C ActiveMQ client, that'd require a large amount of work.
I'm looking for pure C active MQ I tried to use openWire but after complicated compilation it doesn't work do you have any ideas ?
There is no pure C client for ActiveMQ using openwire, but there are other C APIs such as STOMP or AMQP 1.0 that would work just fine. Check out the QPid project for C client code that uses AMQP v1.0.
Alternatively you can contribute a C based client for OpenWire to the ActiveMQ porject.
Post a Comment