I think there may be some legal issues with creating an API that resembles
JMS too closely.
>From the JMS licence terms:
"Subject to the terms and conditions of this license, Sun hereby grants you
a fully-paid, non-exclusive, non-transferable, worldwide, limited
license (without the right to sublicense) under Sun's intellectual property
rights to review the Specification internally solely for the purpose
of designing and developing your Java applets and applications intended to
run on the Java platform. Other than this limited license, you
acquire no right, title or interest in or to the Specification or any other
Sun intellectual property. The Specification contains the proprietary
information of Sun and may only be used in accordance with the license
terms set forth herein."
The key bit here is "intended to run on the Java platform".
That said there is definitely merit in having our .NET API and C++ API
being relatively similar.
XMS for C# does resemble JMS very closely although with delegates and with
the naming convention for interfaces. I am not sure whether IBM would be
interested in donating XMS.
RG
|---------+---------------------------->
| | "James Strachan" |
| | <[EMAIL PROTECTED]|
| | mail.com> |
| | |
| | 19/07/2006 20:50 |
| | Please respond to|
| | general |
|---------+---------------------------->
>------------------------------------------------------------------------------------------------------------------------------|
|
|
| To: [email protected]
|
| cc:
|
| Subject: Re: [Proposal] Blaze
|
>------------------------------------------------------------------------------------------------------------------------------|
On 7/19/06, Paul Fremantle <[EMAIL PROTECTED]> wrote:
> > Currently ActiveMQ has several C/C++ clients (with another client
> > library waiting to get through the donator's lawyers), so it might
> > make sense at some point to try unify the C++ clients together too so
> > users have a single C++ API for their messaging client and then a
> > number of implentations/transports/protocols to use at deployment
> > time. i.e. making a JMS for C++ API. (We've got a good start called
> > CMS in ActiveMQ...)
>
> I agree that a C++ (and also C) rendering of a JMS like API is going
> to be a very useful thing.
>
> James - do you have any idea how CMS matches or differs from IBM's XMS
> (
http://www-128.ibm.com/developerworks/websphere/library/techarticles/0509_phillips/0509_phillips.html
)?
> XMS is also a rendering of JMS into C/C#/C++.
Thanks for the link! I've had a quick look and it looks remarkably
close to the current CMS client. Hardly surprising I guess since they
are both kinda clones of the JMS API but in C++ and using JMS 1.1 and
mostly ignoring the crappy bits of JMS 1.0.2b :)
I couldn't see the C# client so not sure if we differ a bit there - we
ended up changing the C# client a little from JMS to make use of C#
coding conventions and features (like delegates and events etc) - and
we followed that sucky C# practice of naming interfaces IConnection
etc :). Not sure if the XMS in C# does the same. (We imaginatively
called the C# client NMS for .Net Messaging System).
I wonder if IBM and the XMS folks would be interested in donating the
*API* code for XMS to Apache and working with other folks at Apache so
we can merge some of the C/C++/C# clients together into a single
reuable client API with pluggable providers (and maybe even some
resuable optional implementation code different implementations could
choose to reuse)?
There's clearly a delta between AMQP and the features of JMS, but even
if we just get the core JMS semantics reusable across the clients it'd
be a big win IMHO.
> I think it would be interesting to see a confluence of the APIs and
> protocols between ActiveMQ and Blaze giving interoperability in both
> code and on the wire.
Agreed.
--
James
-------
http://radio.weblogs.com/0112098/
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
This communication is for informational purposes only. It is not intended as an
offer or solicitation for the purchase or sale of any financial instrument or
as an official confirmation of any transaction. All market prices, data and
other information are not warranted as to completeness or accuracy and are
subject to change without notice. Any comments or statements made herein do not
necessarily reflect those of JPMorgan Chase & Co., its subsidiaries and
affiliates.
This transmission may contain information that is privileged, confidential,
legally privileged, and/or exempt from disclosure under applicable law. If you
are not the intended recipient, you are hereby notified that any disclosure,
copying, distribution, or use of the information contained herein (including
any reliance thereon) is STRICTLY PROHIBITED. Although this transmission and
any attachments are believed to be free of any virus or other defect that might
affect any computer system into which it is received and opened, it is the
responsibility of the recipient to ensure that it is virus free and no
responsibility is accepted by JPMorgan Chase & Co., its subsidiaries and
affiliates, as applicable, for any loss or damage arising in any way from its
use. If you received this transmission in error, please immediately contact the
sender and destroy the material in its entirety, whether in electronic or hard
copy format. Thank you.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]